首页
社区
课程
招聘
[求助]android9(P) NDK里面怎么获取soinfo?
发表于: 2019-12-9 15:50 4874

[求助]android9(P) NDK里面怎么获取soinfo?

2019-12-9 15:50
4874
在android 7也就是N,以及8的时候
旧方式就是open linker然后找g_soinfo_handles_map 然后find就好了。

可是同样的方法放到9里面运行。就不行了。
原来的 g_soinfo_handles_map 变量能找到,但是find方法,以前叫__dl__ZNSt3__112__xxxxxxxxxxxx找不到了。(可是安卓源码并没有啥变化)
不知道9里面 源码 linker.cpp

static soinfo* soinfo_from_handle(void* handle) {

  if ((reinterpret_cast<uintptr_t>(handle) & 1) != 0) {

    auto it = g_soinfo_handles_map.find(reinterpret_cast<uintptr_t>(handle));

    if (it == g_soinfo_handles_map.end()) {

      return nullptr;

    } else {

      return it->second;

    }

  }


  return static_cast<soinfo*>(handle);

}

中的 
 g_soinfo_handles_map.find(reinterpret_cast<uintptr_t>(handle));
现在要用什么来映射?

还是说有新的获取soinfo 结构的代码了?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 3375
活跃值: (14048)
能力值: ( LV9,RANK:230 )
在线值:
发帖
回帖
粉丝
2
遍历Map
2019-12-9 16:48
0
雪    币: 1787
活跃值: (340)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
__dl__Z14get_libdl_infov  N 用这个获取,然后自己遍历就好了。
2019-12-9 18:15
0
雪    币: 1110
活跃值: (3274)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
方法很多,再自己找找。有些方法 armv7 上可以,arm64 上行不通。
2019-12-9 19:53
0
雪    币: 92
活跃值: (63)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
Android 9可能需要在命名空间中迭代查找下
2019-12-9 20:27
0
雪    币: 2235
活跃值: (1083)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
操作map
2019-12-10 10:15
0
雪    币: 195
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
直接操作MAP 
      std::unordered_map<uintptr_t, soinfo *> *g_soinfo_handles_map = (std::unordered_map<uintptr_t, soinfo *> *)soinfo_handles_map;
    auto it= g_soinfo_handles_map->find((uintptr_t)handle);

it->first 和 it->second  的值完全一样。。。懵逼中。。
2019-12-10 10:22
0
雪    币: 195
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
全部遍历打印出来 每个K V都是一样的
2019-12-10 10:23
0
雪    币: 1787
活跃值: (340)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
9
zogna 全部遍历打印出来 每个K V都是一样的
直接调用我说那个,不就可以拿到整条SO的链表了,自己遍历下不就完事了。。
2019-12-10 11:29
0
雪    币: 519
活跃值: (218)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
10
这个我居然会…
是名字变成了__dl_g_soinfo_handles_map
2019-12-13 12:54
0
游客
登录 | 注册 方可回帖
返回
//