您的位置:首頁技術文章
文章詳情頁

使用Android Studio實現為系統級的app簽名

瀏覽:77日期:2022-09-26 10:28:15

我們在做系統級的app開發時,往往會在AndroidManifest.xml文件中添加:android:sharedUserId=”android.uid.system”以獲取系統級的權限,如果你正在使用Android Studio進行開發,編譯生成的apk會因為簽名問題無法安裝。

此時有兩個解決方案,

1,是將編譯好的apk放入源碼中vender目錄下,編寫相應的android.mk文件,并在文件中加入:

LOCAL_CERTIFICATE := platform

然后使用“mmm your_apk_file”編譯你的apk。

之后會在”out/target/product/youProduct/system/priv-app”下生成對應的帶簽名的apk文件。

第二種,就是下邊將要介紹的,對于習慣使用ide的同學準備的。

一.準備

首先要準備keytool-importkeypair工具,和簽名所需的系統簽名文件。

下載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路徑、密碼、別名等信息,點擊OK生成jks文件

使用Android Studio實現為系統級的app簽名

三、使用keytool-importkeypair工具為生成的jks文件添加系統簽名。

首先配置keytool-importkeypair的環境變量,在user文件夾下新建bin目錄,將keytool-importkeypair復制到bin目錄下,然后將bin目錄添加到PATH變量中。

export PATH=$PATH:/home/username/bin;

將兩個系統簽名文件platform.x509.pem、platform.pk8復制到jks文件所在的目錄中,運行以下命令為簽名文件添加系統簽名:

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’ } }

五、編譯運行

點擊run或者debug運行app,這樣裝在手機后就能夠正確運行了。

以上這篇使用Android Studio實現為系統級的app簽名就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Android
相關文章:
国产综合久久一区二区三区