之前给Nod定位粒子添加过http://www.52pojie.cn/thread-526232-1-1.html 如下图这种激活后在未取消激活情况下将无法卸载和清除数据。
这里把方法分享下:
1.反编译你要修改的APP
2.在反编译出的文件夹里面找到AndroidManifest.xml打开
分别添加以下代码
[XML] 纯文本查看 复制代码
<receiver android:label="@string/app_name" android:name="android.app.admin.DeviceAdminReceiver" android:permission="android.permission.BIND_DEVICE_ADMIN" android:description="@string/app_name"> <meta-data android:name="android.app.device_admin" android:resource="@xml/deviceadmin" />
<intent-filter>
<action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
</intent-filter>
</receiver>
还有要添加这个权限
[XML] 纯文本查看 复制代码 <uses-permission android:name="android.permission.BIND_DEVICE_ADMIN" />
下图仅供参考
3.在反编译文件夹找到res/xml 目录下添加下面压缩包里面提供的deviceadmin.xml文件(如没有对应路径,手动添加)
4.回编译,签名,安装。
当然这种没有修改smali情况下,不能实现在软件里面点击按钮打开防卸载激活 或者 打开软件就跳转 激活页面
(有时间的可以自己去探索一下)
所以需要在安装软件后到 设置——安全——设备管理器 手动开启,取消也是这样。
这种防卸载可以开关,还有一种是不能取消的设备管理器激活,百度一下就有JAVA源码,这里就不深究!二次修改也不方便添加那种。
上面所用到的代码及文件打包下载:
代码文件压缩包.zip
(567 Bytes, 下载次数: 152)
——2017.1.14
By 笑对VS人生 |