范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

NDK打印调用堆栈

  虽然android源码里有android::CallStack用来打印堆栈,但是NDK里面并没有包含它,所以不能直接调用它,所以要尝试用动态调用的方式来实现。
  我测试的手机是安卓8.1.0版本,android::CallStack位于/system/lib/libutils.so库中,使用ida pro打开libutils.so,找到android::CallStack::CallStack函数 .text:0000996C ; _DWORD __fastcall android::CallStack::CallStack(android::CallStack *__hidden this, const char *, int) .text:0000996C                 EXPORT _ZN7android9CallStackC2EPKci .text:0000996C _ZN7android9CallStackC2EPKci            ; DATA XREF: LOAD:0000158C o .text:0000996C                                         ; LOAD:00001CDC o
  可以看到函数的导出符号为_ZN7android9CallStackC2EPKci,因为它是类的构造方法,在反编译代码中第一次参数是一个隐藏的this指针,这个指针用来指向对象本身,动态调用我们需要自己malloc这个指针。void* handle = dlopen(NULL, RTLD_NOW); //查找函数导出符号 void* (*android_CallStack_CallStack)(void*, const char *, int) = (void *(*)(void *, const char *, int))dlsym(handle_121, "_ZN7android9CallStackC2EPKci"); //malloc出android::CallStack指针,这里也可以写死数字,8.1.0中android::CallStack大小为20 void* stack = malloc(sizeof(android::CallStack)); //将堆栈信息打印到logcat中,Log Tag为jyy android_CallStack_CallStack(stack, "jyy", 1);
  如果担心这种方式会造成内存泄漏,也可以在打印完堆栈后主动调用android::CallStack的析构函数,并在最后free掉this指针 .text:00009B20 ; void __fastcall android::CallStack::~CallStack(android::CallStack *__hidden this) .text:00009B20                 EXPORT _ZN7android9CallStackD2Ev .text:00009B20 _ZN7android9CallStackD2Ev               ; CODE XREF: android::ProcessCallStack::update(void)+E0 pvoid (*free_CallStack)(void*) = (void (*)(void*))dlsym(handle_121, "_ZN7android9CallStackD2Ev"); //主动调用析构函数 free_CallStack(stack); //free this指针 free(stack);
  这样就可以主动打印NDK的调用堆栈了

华为的麒麟9905G到底是个什么样的处理器?麒麟9905G是华为在2019年9月6日发的旗舰芯片,也是全球首款旗舰5GSoC芯片,其采用台积电7nm工艺制造,8核CPU设计,2颗2。86GHz的A76超大核心2颗2。36GH华为matepro到底有多好,使用感受优点1。麒麟90005Gyyds2。屏幕是三星屏吧,比mate40Pro上那块好不少,虽然边缘还是很绿3。支付级人脸识别yyds(晚上非常好用)4。虽然4400mAh电池容量并不算远景能源携手达索系统让愿所计必达在变革中破局,在合作中进步。远景能源与达索系统的合作已有多年,借助达索系统全新的3D体验平台,远景能源将升级重构其原有的PLM系统,打造以数字孪生多元化应用场景为驱动的创新展示中心更进一步!iPhone15或将全部搭载苹果自研芯片彻底跟高通说再见近日,中国台湾工商时报援引供应链消息称,将于2023年发布的iPhone15将首次全部采用苹果自研芯片,除了A17将采用台积电3nm制程工艺外,其自主研发的5G基带芯片也将采用台积小米6的缝隙门你怎么看?我来回答这个问题,在购买小米6之前,我跑了几十公里去小米之家体验了小米6,黑色,后面的缝隙确实有点明显,但是当我前几天在京东上买小米6,拿到手上的时候,我发现这个缝隙的问题已经不那2022年买手机,懂行选小米和OV,不懂选华为和苹果,真是这样吗?可以肯定地回答,当然不是这样的!小米手机买手机是买小米和OV还是华为和苹果这个只要是根据个人喜好和经济条件去选择。手机现在从系统角度划分主要是安卓系统和ios系统。苹果手机的ios联发科超越高通,拿下40的手机芯片份额!高通为何掉队了?芯片缺货潮已经持续了整整一年,由于市场供求发生了重大变化,芯片设计工厂也被重新洗牌。一家来自我国的芯片设计企业竟然超越高通和苹果,成了全球第一,您是否感到意外呢?1昔日手机芯片王者小米MIX5Pro深度曝光,澎湃C2加持,或取代小米12超大杯小米MIX5Pro深度曝光,澎湃C2加持,或取代小米12超大杯。目前,小米12系列手机已经发布了,但是传说中的小米12超大杯还是没有到来,不过最新消息显示,小米12超大杯被小米MI快递管理办法拟修订擅自将快递投箱投站最高罚款3万元!你怎么看?快递送货不上门将面临高额罚款!近日,国家邮政局起草的快递市场管理办法(修订草案)面向公众征求意见,其中规定如果快递企业未经用户同意,擅自将快递投到智能快件箱快递服务站等快递终端服务两年前发布的华为Mate40Pro,放在2022年,算什么级别的手机?发布离现在也就一年半不到吧,目前最经典的华为5G手机,后背家族式圆环摄像模组,从性能参数上麒麟9000虽然不如骁龙8,但性能还是很强劲,再用个三年也没问题,唯一的遗憾还是屏幕素质吧同事哪些不该看的东西被你无意之间看到了?讲个女同事的事,现在想起来还超尴尬。我同事叫小美,身高168,长发飘飘,体态婀娜,就是女神级的人物,但是她有个习惯,就是不管出去干啥,总要带个包。简直就是个百宝袋,什么纸巾,女士用
舒乐氏小白鲸,给你的空气润一润我们每天生存的自然环境对身体的影响非常明显,比如空气干燥。干燥的空气具有一定的危害。首先,易造成细菌的传播。干燥的空气是造成灰尘悬浮颗粒物飘浮增多的主要原因,而细菌不能单独存在,往真无线,真降噪,南卡A2ANC主动降噪蓝牙耳机体验报告真无线耳机一步一步占领了耳机市场,别的不说,方便是真的方便。经过多个品牌的竞争,产品已经进化到即能真无线又能真降噪的形态,比如本次分享的南卡A2ANC主动降噪蓝牙耳机,为了便于表述Jeep大切诺基4xe发布,硬派SUV也有环境友好型?近日,Jeep汽车正式对外发布了新一代大切诺基4xe车型,跟之前的牧马人4xe一样,新车将搭载一套2。0T插电式混动系统,相比此前搭载V6V8自吸发动机的纯燃油版将有更出色的燃油经44。8万起明年交付蔚来ET7测试车曝光近日,我们从相关渠道获得了一组蔚来汽车首款高端轿车ET7的路试谍照,这台车在今年初NIODAY发布会上开始发售,指导价为44。80万起,首批车型预计将在2022年第一季度开始交付。AMDRX6700XT首测抱歉,这波还是你们买不到的空气在RX6800发布了小半年后,我们终于迎来了AMD的中端甜点级新卡RX6700XT,而AMD对它的首发定价也非常之讨喜,仅需3699,如无意外,其对标的必定是N家的RTX3070或匠造金陵好空气伊斐净宝南京首家新风体验店盛大开业2019年10月1日,正值亿万人同庆祝新中国成立70周年之际,伊斐净宝南京首家新风净化体验店盛大开业。伊斐净宝品牌创始人尹全喜先生,伊斐净宝区域经理吴春龙先生,伊斐净宝南京经销商邵神操作!这家车企要减配交付新车,再补装雷达?近日,理想汽车为新车交付提供了新思路先交付后补装。什么意思?早在9月20日,理想就发公告称因马来西亚疫情的影响,毫米波雷达供应受到阻碍。10月8日,理想推出先交付后补装雷达的交付方线上教育不行了,所以知识付费也走向衰落了?如约而至的暑期,本来是教育行业的黄金时期,却因为遭遇监管部门的重锤而陷入了危机中。5月初公布作业帮猿辅导,15家校外培训机构,被处以顶格罚款3650万元。其中包括新东方作业帮华尔街薇娅带货又翻车,直播电商转型有多难?短视频直播行业发展至今,完成了从媒介到商业的蜕变,现已成为国民日常购物的主要渠道。直播带货作为一种新兴的模式,在发展过程中有很多问题需要优化解决。虚假宣传,就是其中之一。8月31日机器人在5G背景下的增长点,以及在基础设施建设中的应用体现5G是当下最火热的词,它能够给人们带来什么样的改变还是未知的,不过可知的是,技术的升级换代必然会引起社会的变革,至于会带来什么样的变化,相信我们很快就会看到。中国的5G发展迅猛,抢无须采取封闭式,高校出入管理,一台人脸识别终端就可以了从目前的新闻来看,国内大部分高校采取的是半封校措施,教职工食堂工作人员快递等可以凭借自身证件自由出入学校,学生则是能不出尽量不出,在特殊情况下向老师报备申请才能外出,管控十分严格,