一、准备条件
1、编译合规检测的Xposed模块源码
下载源码,修改设置白名单,编译成apk,安装到手机
相关操作参考《安卓端自行实现工信部要求的隐私合规检测一(教你手写Xposed模块代码)》
注意:源码里面包含了各种安装包及demo
2、已经root的手机可以下载Xposed.apk
Xposed在github上面开源,可以自己下载XposedInstaller的源码进行编译,也可以直接下载已经编译好的apk。
需要注意的是,安卓5以上和以下的安装版本是不一样的
支持安卓5及以上的XposedInstaller
支持安卓5以下的XposedInstaller
3、没有root的手机可以下载VirtualXposed.apk
VirtualXposed在github上面有专门的release页面,其作者在0.20.x的版本的时候放弃了对32位应用的支持,理由是谷歌商店未来只允许64位的app上架,不想花更多精力维护32位的开发。如果你的app为32位应用,因此不能用0.20.x及之后版本的VirtualXposed
0.20.3版本(支持64位应用)
0.18.2版本(支持32位应用)
注意:由于0.20.x版本更换了包名,所以它和0.18.x的版本能同时安装
4、下载合规检测测试程序
该项非必须,仅作为合规快速校验
下载地址:合规检测测试程序apk
二、具体操作
这里以对“合规检测测试程序“的校验进行说明。
1、安装
-
已root的用户
- 安装xposed.apk
在root手机上安装xposed框架的操作可能会比较麻烦,详情问问度娘
2. 安装合规检测xposed模块.apk
3. 安装合规检测测试程序.apk
-
未root用户
- 先安装virtual-xposed.apk
- 后续操作有两种方案:
第一种可以和已root用户一样,直接将合规检测xposed模块.apk和合规检测测试程序.apk安装在手机真机上,然后在virtual-xposed里面克隆这两个app;
第二种的话就是不在真机装,直接在virtual-xposed里面装,具体操作如下:
- 打开virtual-xposed,点击底部的菜单按钮,进入到virtual-xposed的菜单界面

- 在菜单界面有两个关键点需要注意,一个是顶部的添加应用,一个是底部的重启。后者在激活模块的时候需要使用。这里我们先点击添加应用。

- 添加应用界面默认的tab项就是克隆APP,如果使用克隆的方式的话,就要先找到安装的合规检测xposed模块和合规检测测试程序,并勾选,然后选择底部的安装;如果选择的是虚拟机安装,就直接点击右下角的加号按钮,选择本地的apk安装包进行安装。

- 在克隆APP中,会弹出是否使用太极安装,我们还是选择virtual-xposed安装

- 安装完app后,下一步就是激活模块。我们返回到1中的界面,上滑,进入到app列表界面,在这里可以看见我们刚刚安装的3个app

- 最右边的那边Xposed Installer就是我们的xposed控制界面 ,点击进入。大大的绿勾表示我们的xposed框架已经激活。点击左上角三杠。

- 在弹出来的菜单界面中有两个项要注意:模块用于安装/卸载xposed模块,日志用于查看合规检测的结果,后面会用到。这里我们点击模块。

- 可以看见有一个合规检测的xposed模块,勾上它。勾上后需要重启系统。如果是root用户在真机下操作xposed框架,就需要真机重启。但是我们用的是virtual-xposed,所以只需要重启虚拟机就行了。这时候,返回到2的界面,点击重启。

- 重启成功的话,底部会有提示语展示


2、如何检测
- 先打开我们安装的测试app
里面有四个按钮,分别对应四种不同的检测条件,我们以第一种模拟获取IMSI来说明,先别点击任何按钮。

- 查看日志
回到我们在安装讲解中的第7步界面,里面有个日志选项,点击它。该界面右上角有保存按钮,还有个三个点的菜单按钮,点击菜单按钮后有两个项需要注意:
- 立即清理日志会清空当前界面的所有日志,我们先点击清空一下。
- 重新载入会刷新最新的日志进界面。因为日志的显示不是自动的,要想看到最新的结果,就要手动刷新。


接下来回到我们的测试app界面,点击模拟获取IMSI,然后再返回到日志界面,并且重新载入,接着就能看见如下的日志记录:
上面的截图主要针对virtual-xposed来讲的。对于xposed而言,操作大同小异。最大的区别就是xposed需要真实地重启手机,这点的话要麻烦一点。