缘由:华为上架始终检测出,用户同意前获取Mac地址信息,但是第三方SDK的初始化都已经改成在用户授权之后了,因此需要检测是哪款SDK获取的Mac地址。
方法:通过Xposed检测不合规方法的调用情况。
一.安装模拟器
Xposed使用需要root权限。
有两种方案:
1.真机装VirtualXposed,但是这边使用后发现始终得不到结果。
2.下载带root权限的模拟器。亲测可行。
本次使用的模拟器为 逍遥模拟器 版本7.5.5
【逍遥安卓模拟器】安卓模拟器电脑版_安卓模拟器哪个好用_逍遥安卓模拟器下载官网
二.安装Xposed框架
xposed安装器下载-xposed框架模块下载-xposed框架安装器下载官方app(暂未上线)
下载后拖进模拟器安装。安装过后提示无法下载zip,这时需要手动安装。
下载对应版本,这边下载的是 xposed-v89-sdk25-x86.zip,下载后改名为xposed.zip.
打开模拟器,找到模拟器路径,我这是:E:\Program Files\Microvirt\MEmu(默认D盘安装)
将xposed.zip复制到这里,同时创建 install.bat。内容为:
adb root
adb remount
adb push ./xposed /system
adb shell su -c "cd /system/;sh memu-script.sh"
pause
创建好后双击执行。
执行完成后可以看到模拟器上的Xposed已下载到文件。
重启模拟器生效。
三.App中编码实现检测方案。
1.gradle中添加依赖(dependencies下)
provided 'de.robv.android.xposed:api:82'
2.创建检测类
public class HookApi implements IXposedHookLoadPackage {
private static final String TAG = "Xposed";
public void han

最低0.47元/天 解锁文章
789





