若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。
在device/fsl/common/security/ 目錄中有四組預設簽名供Android.mk在編譯APK使用:
1、testkey:普通APK,預設情況下使用。
2、platform:該APK完成一些系統的核心功能。經過對系統中存在的資料夾的訪問測試,這種方式編譯出來的APK所在進程的UID為system。
3、shared:該APK需要和home/contacts進程共用資料。
4、media:該APK屬於media/download系統中的一環。
使用Eclipse編譯的apk,可使用signapk.jar進行簽名,其程式碼在build\tools\signapk下,編譯後在out/host/linux-x86/framework/signapk.jar,也可以從網上下載。
使用方法,以platform為例:
java -jar signapk.jar -w platform.x509.pem platform.pk8 App_Name.apk App_Name-signed.apk
(platform.x509.pem platform.pk8在device/fsl/common/security/目錄下)
另外需注意JDK的版本要為1.7,不能使用1.8。
JDK Version:1.7.0_80
在Eclispe專案中的Properties裡新增Builders,名稱可任意命名
內容如下:
並在AndroidManifest.xml加上android:sharedUserId="android.uid.system"
參考資料: