让android应用程序获得system权限

让android应用程序获得system权限一般有两种方法

方法一:

   需要在android源码下面编译应用

  把应用XXX放到源码packages/app目录下,为该应用增加Android.mk文件,指定LOCAL_CERTIFICATE := platform

   AndroidManifest.xml中的manifest加入android:sharedUserId="android.uid.system“

  然后cd到该应用文件夹下,用mm命令编译,生成XXX.apk

  这个方法还是比较简单的,但需要有android源码,并且我在用开发板进行开发时(我的应用里引用了第三方静态库),用这种方法编译会出错,无奈只能换第二种方法

方法二:

   在manifest节点中加入android:sharedUserId="android.uid.system"

   打开生成的XXX.apk删掉META-INF目录下的CERT.SF和CERT.RSA两个文件

  找到密钥文件,在源码build/target/product/security下面的platform.pk8和platform.x509.pem两个文件

  找到源码out/host/linux-x86/framework/signapk.jar

  执行java -jar signapk.jar platform.x509.pem platform.pk8 XXX.apk  XXXnew.apk

  用adb install XXXnew.apk

用方法一会出错,用方法二就可以了,运行XXX应用后,ps命令查看XXX的user,显示为system,则说明修改成功了


你可能感兴趣的:(android)