现在的Android软件,流氓太多,动不动就申请什么读取联系人数据、直接发送短信之类的权限,虽然软件本身确实不会偷偷摸摸的发短信,但拥有这样的权限,实在是让人放心不下啊
那么,有没办法去掉这样的权限呢,答案是肯定的,在电脑上,这件事情有很多工具可以完成,我的办法是:
第一步:准备工作
下载apktool,官方网页是:
http://code.google.com/p/android-apktool/
下载auto-sign,网上搜一下,很多地方有的
第二步:反编译
下载完后解压,会看到一个apktool.bat
运行apktool.bat d XXX.apk
其中d表示decode,XXX.apk是需要修改权限的软件
运行完成后,可以看到新生成了一个叫做XXX的目录
第三步:更改权限
进入XXX目录,用文本编辑器打开AndroidManifest.xml,可以看到一堆uses-permission,比如:
<uses-permissionandroid:name="android.permission.INTERNET"/>
<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
<uses-permissionandroid:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
每一个uses-permission都是一个单独的权限,想要去掉哪个权限就删除那一行,一般从描述上就可以看出来
第四步:重新组装APK文件
第三步修改完后保存,再次运行apktool.bat,不过这次的参数是b
Apktool.bat b XXX XXX.modified.apk
运行完成后会生成一个新的apk文件XXX.modified.apk
第五步:签名
将上步生成的XXX.modified.apk拷贝到auto-sign目录,运行
java -jar SignAPK.jar XXX.modified.apk
就这样,XXX.modified.apk就可以拷贝到手机上安装啦