使用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. 在vue中獲取wangeditor的html和text的操作2. 使用vue-cli創(chuàng)建項(xiàng)目并webpack打包的操作方法3. Python用K-means聚類算法進(jìn)行客戶分群的實(shí)現(xiàn)4. Python加載數(shù)據(jù)的5種不同方式(收藏)5. python mysql 字段與關(guān)鍵字沖突的解決方式6. python編寫五子棋游戲7. Java xml數(shù)據(jù)格式返回實(shí)現(xiàn)操作8. 解決Android Studio Design界面不顯示layout控件的問題9. python讀取中文路徑時出錯(2種解決方案)10. Java源碼解析之接口List
