canyie/pine

Android14 disableHiddenApiPolicy 不生效

Closed this issue · 2 comments

看日志是找不到下面这两个地址
HOOK_SYMBOL("_ZN3art9hiddenapi6detail28ShouldDenyAccessToMemberImplINS_8ArtFieldEEEbPT_NS0_7ApiListENS0_12AccessMethodE");
HOOK_SYMBOL("_ZN3art9hiddenapi6detail28ShouldDenyAccessToMemberImplINS_9ArtMethodEEEbPT_NS0_7ApiListENS0_12AccessMethodE");

刷LineageOS 20跑起来正常,Lineage21就提示disableHiddenApiPolicy 设置无效了

大哥有适配一下14嘛?

master 上已经修复过的,暂时没空发版,你可以先编译 master 试一下

最新代码确实没问题,可以在14能找到 _ZN3art9hiddenapi6detail28ShouldDenyAccessToMemberImplINS_8ArtFieldEEEbPT_NS0_7ApiListENS0_12AccessMethodE

我这边场景是在lineageos 21的zygote里注入了pine,然后hook的时候提示_ZN3art9hiddenapi6detail28ShouldDenyAccessToMemberImplINS_8ArtFieldEEEbPT_NS0_7ApiListENS0_12AccessMethodE 找不到,objdump -T libart.so也是找不到ShouldDenyAccessToMemberImplI的。
对比了一下13和14的art代码,
微信图片_20240709170314

应该是 namespace art HIDDEN 导致的,去掉HIDDEN后就能正常跑了。

pine源码里的app在14上能正常获取搞不懂原理哈哈