1.首先修改你 vendor/xxxx/tools/signature/ 目錄下的 mkkey.sh
AUTH='/C=CN/ST=GuangDong/L=ShenZhen
View/O=TC/OU=TC/CN=TC/emailAddress=xxxx@Gmail.com'
2.產生密鑰庫
./mkkey.sh testkey
./mkkey.sh media
./mkkey.sh shared
./mkkey.sh platform
./mkkey.sh releasekey
分別對應不同密鑰進行密碼設定
3.編譯更新包,並產生對應的 single.jar
make -j16 PRODUCT-full_model_xxx-user dist
其中model_xxx 是 對應的你的項目型號與項目名稱
4.分別對 zip ,apk等其他檔案進行簽名
./build/tools/releasetools/sign_target_files_apks -d vendor/xxx/tools/signature/ out/dist/full_model_xxx-target_files-eng.xxx.zip out/dist/signed-target-file.zip
5.產生對應的img檔案
./build/tools/releasetools/img_from_target_files out/dist/signed-target-file.zip out/target/product/model_xxx/signed-img.zip
signed-img.zip這個包裡麵包含了,燒錄的三個img檔案,然後編輯一個指令碼,可以形成一個統一的xxx.img用於燒錄
6.編譯完成之後,燒錄ok
這樣你就能解決 你cts測試 關於 android.sercurity 過不了的問題了
還存在的一些問題:正在研究:
1).有時候 發現release 無法安裝第三方應用:提示:
java.lang.SecurityException: Neither user 2000 nor current process has android.permission.INSTALL_PACKAGES
2).編譯成 release版本之後,所有非源碼編譯的apk將會被排除在 system/app 之外,無法內建,不知道這些問題怎麼解決?