如何給Android的apk重新簽名

2021-09-19 22:55:23 字數 1917 閱讀 8691

使用jdk自帶的jarsigner就可以,但是要注意jdk的版本,1.6以上的版本可能存在問題。如果簽名執行提示沒有簽名(install_parse_failed_no_certificates)。那麼將命令加上「-digestalg sha1 -sigalg md5withrsa」

簽名的命令如下:

jarsigner -verbose -keystore ***.keystore -signedjar生成的apk 被簽名的apk***.keystore的別名

回車後輸入密碼即可。

當然有的人還會做一下下面的命令:

zipalign -v 4 源apk 生成的apk

最後apk的包裡會包括下面三個簽名的檔案:

1.meta-inf/manifest.mf   這個檔案能看到使用的manifest的版本,1.7的就是那個爛甲骨文的,有很多問題。

manifest-version: 1.0

created-by: 1.6.0_45 (***公司.)

name: res/drawable-hdpi/***.png

sha1-digest: iebuy5erfndg2g0d7vhtuyvkl/m=

2.meta-inf/別名大寫.sf  這個檔案能看到使用的簽名的版本,

signature-version: 1.0

sha1-digest-manifest-main-attributes: ki6po0uu82r32wfwefeejm=

created-by: 1.6.0_45 (*** inc.)

sha1-digest-manifest: nlbp4444444447qngii=

3.meta-inf/別名大寫.rsa

下面的檔案會被簽名,

assets/

res/

lib/

classes.dex

等檔案

使用jdk自帶的jarsigner就可以,但是要注意jdk的版本,1.6以上的版本可能存在問題。如果簽名執行提示沒有簽名(install_parse_failed_no_certificates)。那麼將命令加上「-digestalg sha1 -sigalg md5withrsa」

簽名的命令如下:

jarsigner -verbose -keystore ***.keystore -signedjar生成的apk 被簽名的apk***.keystore的別名

回車後輸入密碼即可。

當然有的人還會做一下下面的命令:

zipalign -v 4 源apk 生成的apk

最後apk的包裡會包括下面三個簽名的檔案:

1.meta-inf/manifest.mf   這個檔案能看到使用的manifest的版本,1.7的就是那個爛甲骨文的,有很多問題。

manifest-version: 1.0

created-by: 1.6.0_45 (***公司.)

name: res/drawable-hdpi/***.png

sha1-digest: iebuy5erfndg2g0d7vhtuyvkl/m=

2.meta-inf/別名大寫.sf  這個檔案能看到使用的簽名的版本,

signature-version: 1.0

sha1-digest-manifest-main-attributes: ki6po0uu82r32wfwefeejm=

created-by: 1.6.0_45 (*** inc.)

sha1-digest-manifest: nlbp4444444447qngii=

3.meta-inf/別名大寫.rsa

下面的檔案會被簽名,

assets/

res/

lib/

classes.dex

等檔案

keystore檔案 如何手動給APK檔案簽名

在安裝的時候提示沒有許可權安裝,需要簽名才能安裝。先生成key store檔案。別名是androidtest 加密方式ras 有效期 365天 keytool genkey v keystore android.keystore alias androidtest keyalg rsa validi...

Mac上給android模擬器安裝apk步驟

開啟android模擬器 如果輸入adb 顯示 command not found 是因為沒有配置環境變數 配置環境變數方法 開啟終端 輸入 open bash profile 可以開啟配置檔案,但不能修改。原因是不是root使用者。我在網上看到乙個啟動root使用者的帖子 但是試了之後沒有用 也許...

C 如何給整型陣列去重?如何排序?

c 中獨特的陣列語法真的讓我感到腦闊疼。記錄一下這奇怪的用法,陣列與泛型list搭配食用更佳哦 先將陣列num轉換成泛型list,再使用泛型方法distinct 去重 list int list num.tolist list int newlist list.distinct tolist 返回去...