簡體   English   中英

Android APK登錄信息

[英]Android apk sign information

在apk中哪里存儲了簽名信息? apk文件是擴展名為.apk的zip存檔。 我可以更改一些資源,否則會影響簽名嗎?

使用下面的這種方法,您可以編輯資源,但是您必須辭職apk,但這也顯示在下面。 本示例編輯圖像資源,但是可以與任何資源一起使用

首先使用android SDK中的工具“ aapt”列出資源:

$ANDROID/tools/aapt list file.apk

找到需要更改的資源后,我們將使用“刪除”和“添加”來替換它們:

$ANDROID/tools/aapt remove file.apk res/drawable/file.png
$ANDROID/tools/aapt add file.apk res/drawable/file.png

然后,我們必須刪除舊的APK簽名並將其替換為新的APK簽名。 我們將生成一個偽造的自簽名密鑰來對APK進行簽名:

$ openssl genrsa -out key.pem 1024
$ openssl req -new -key key.pem -out request.pem
$ openssl x509 -req -days 9999 -in request.pem -signkey key.pem -out certificate.pem
$ openssl pkcs8 -topk8 -outform DER -in key.pem -inform PEM -out key.pk8 -nocrypt

從APK中刪除舊簽名:

for f in `$ANDROID/tools/aapt list file.apk |grep "META-INF"` ; do
$ANDROID/tools/aapt remove file.apk $f
done

現在我們對APK進行簽名,我使用signapk.jar來做到這一點:

$ java -jar signapk.jar certificate.pem key.pk8 file.apk file-signed.apk

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM