使用Android Studio實(shí)現(xiàn)為系統(tǒng)級的app簽名
我們在做系統(tǒng)級的app開發(fā)時,往往會在AndroidManifest.xml文件中添加:android:sharedUserId=”android.uid.system”以獲取系統(tǒng)級的權(quán)限,如果你正在使用Android Studio進(jìn)行開發(fā),編譯生成的apk會因?yàn)楹灻麊栴}無法安裝。
此時有兩個解決方案,
1,是將編譯好的apk放入源碼中vender目錄下,編寫相應(yīng)的android.mk文件,并在文件中加入:
LOCAL_CERTIFICATE := platform
然后使用“mmm your_apk_file”編譯你的apk。
之后會在”out/target/product/youProduct/system/priv-app”下生成對應(yīng)的帶簽名的apk文件。
第二種,就是下邊將要介紹的,對于習(xí)慣使用ide的同學(xué)準(zhǔn)備的。
一.準(zhǔn)備
首先要準(zhǔn)備keytool-importkeypair工具,和簽名所需的系統(tǒng)簽名文件。
下載keytool-importkeypair
https://github.com/getfatday/keytool-importkeypair
簽名文件
build/target/product/security/ platform.x509.pem、platform.pk8
二、使用Android studio 生成自己的jks文件
打開新建key的界面:
build->Generate Signed APK…
填寫jks路徑、密碼、別名等信息,點(diǎn)擊OK生成jks文件
三、使用keytool-importkeypair工具為生成的jks文件添加系統(tǒng)簽名。
首先配置keytool-importkeypair的環(huán)境變量,在user文件夾下新建bin目錄,將keytool-importkeypair復(fù)制到bin目錄下,然后將bin目錄添加到PATH變量中。
export PATH=$PATH:/home/username/bin;
將兩個系統(tǒng)簽名文件platform.x509.pem、platform.pk8復(fù)制到j(luò)ks文件所在的目錄中,運(yùn)行以下命令為簽名文件添加系統(tǒng)簽名:
keytool-importkeypair -k [jks文件名] -p [jks的密碼] -pk8 platform.pk8 -cert platform.x509.pem -alias [jks的別名]
四、配置gradle文件使用簽名文件
配置build.gradle文件(Module:app),在Android{}代碼塊中添加如下代碼:
signingConfigs { release { storeFile file('/home/mi/android_key/mykey_e8.jks') storePassword ’android’ keyAlias ’platform’ keyPassword ’android’ } debug { storeFile file('/home/mi/android_key/mykey_e8.jks') storePassword ’android’ keyAlias ’platform’ keyPassword ’android’ } }
五、編譯運(yùn)行
點(diǎn)擊run或者debug運(yùn)行app,這樣裝在手機(jī)后就能夠正確運(yùn)行了。
以上這篇使用Android Studio實(shí)現(xiàn)為系統(tǒng)級的app簽名就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. ASP動態(tài)網(wǎng)頁制作技術(shù)經(jīng)驗(yàn)分享2. msxml3.dll 錯誤 800c0019 系統(tǒng)錯誤:-2146697191解決方法3. ASP中if語句、select 、while循環(huán)的使用方法4. xml中的空格之完全解說5. WMLScript的語法基礎(chǔ)6. 匹配模式 - XSL教程 - 47. XML入門的常見問題(四)8. ASP中解決“對象關(guān)閉時,不允許操作。”的詭異問題……9. html小技巧之td,div標(biāo)簽里內(nèi)容不換行10. 解決ASP中http狀態(tài)跳轉(zhuǎn)返回錯誤頁的問題
