Apk 簽名的那些事
Android不允許沒有簽名的apk安裝到手機上,應用的簽名類似於應用的身份證
簽名更大的作用是為了保護版權,如果應用的包名相同而簽名不一致,則無法覆蓋安裝,必須先解除安裝再安裝
建立一個簽名
其中
金鑰釋出組織單元
和金鑰釋出組織
不一定要填寫,其他的要填寫
為了拯救糾正症患者,在這裡附上簽名的示例
在 Gradle 中配置簽名
android {
signingConfigs {
release {
keyAlias '金鑰別稱'
keyPassword '金鑰密碼'
storeFile file('E:/MySign.jks')
storePassword '金鑰庫密碼'
}
debug {
keyAlias '金鑰別稱'
keyPassword '金鑰密碼'
storeFile file('E:/MySign.jks')
storePassword '金鑰庫密碼'
}
}
buildTypes {
release {
// 正式環境簽名
signingConfig signingConfigs.release
}
debug {
// 開發環境簽名
signingConfig signingConfigs.debug
}
}
}
這裡重點說一下 debug 簽名,如果沒有指定簽名則預設使用系統自動生成的 debug 簽名,每臺電腦生成的簽名檔案不會相同,因為我測試過用其他同事的手機覆蓋安裝應用,卻提示要先解除安裝後才能安裝
獲取簽名的 MD5、SHA1、SHA256 值
開啟 cmd 命令列,輸入以下指令:
keytool -list -v -keystore 簽名檔案地址
輸入密碼,在命令列視窗是看不到輸入的密碼,所以只管輸入之後回車即可
Android Debug的簽名檔案在以下的路徑,金鑰庫密碼為:android
C:\Users\電腦當前使用者名稱\.android\debug.keystore
驗證apk簽名
在 cmd 命令列中輸入
jarsigner -verify -verbose -certs apk檔案地址
正確的簽名,證書到期日期為約定有效期後的日期
X.509, CN=HJQ, L=guangdong, ST=shantou, C=CN
[證書的有效期為17-3-30 下午4:43至67-3-18 下午4:43]
[CertPath 未驗證: Path does not chain with any of the trust anchors]
s = 已驗證簽名
m = 在清單中列出條目
k = 在金鑰庫中至少找到了一個證書
i = 在身份作用域內至少找到了一個證書
jar 已驗證。
警告:
此 jar 包含證書鏈未驗證的條目。
此 jar 包含的簽名沒有時間戳。如果沒有時間戳, 則在簽名者證書的到期日期 (2067-03-1
8) 或以後的任何撤銷日期之後, 使用者可能無法驗證此 jar。
debug簽名資訊,有效期大約為30年
X.509, C=US, O=Android, CN=Android Debug
[證書的有效期為16-11-22 下午6:15至46-11-15 下午6:15]
[CertPath 未驗證: Path does not chain with any of the trust anchors]
s = 已驗證簽名
m = 在清單中列出條目
k = 在金鑰庫中至少找到了一個證書
i = 在身份作用域內至少找到了一個證書
jar 已驗證。
警告:
此 jar 包含證書鏈未驗證的條目。
此 jar 包含的簽名沒有時間戳。如果沒有時間戳, 則在簽名者證書的到期日期 (2046-11-1
5) 或以後的任何撤銷日期之後, 使用者可能無法驗證此 jar。
簽名不完整,未簽名或簽名錯誤
s = 已驗證簽名
m = 在清單中列出條目
k = 在金鑰庫中至少找到了一個證書
i = 在身份作用域內至少找到了一個證書
jar 未簽名。(缺少簽名或無法解析簽名)
手動簽名
可以用 360 提供的簽名工具進行簽名,可以到 360 官網進行下載或者 QQ群 78797078 中下載
相關文章
- 簽名apkAPK
- APK簽名報錯APK
- Android空包Apk簽名AndroidAPK
- 簽名打包Android版apkAndroidAPK
- Android之重新簽名APKAndroidAPK
- apk空包簽名方法及工具APK
- 為IONIC開發的安卓apk簽名安卓APK
- Android APK V1 簽名原理AndroidAPK
- Android加固之後Apk重簽名AndroidAPK
- App簽名二三事APP
- Android 生成簽名apk與多渠道打包AndroidAPK
- User模式下內建apk做重簽名.模式APK
- 獲取APK檔案的簽名資訊,反射實現APK反射
- Android APK簽名原理和過程詳解AndroidAPK
- 【Android自動化打包】03. APK的數字簽名AndroidAPK
- Android打包簽名那點事Android
- apk簽名相關文章APK
- Android加固和簽名的那些坑(防掉坑技巧)Android
- Visual Studio 2017為Android APK包簽名AndroidAPK
- 聊聊spring bean名稱命名的那些事兒SpringBean
- 群簽名與環簽名的介紹
- 分享一個自動編譯,打包,簽名 android apk 的小指令碼編譯AndroidAPK指令碼
- React Native 打包apk的那些坑React NativeAPK
- iOS簽名、iOS企業簽名、iOS超級簽名工具使用iOS
- 蘋果企業簽名多少錢-ios企業簽名-企業簽名蘋果iOS
- 電子簽名與手寫簽名的區別,電子簽名的優勢是什麼?
- 蘋果企業簽名—ios簽名的演算法形式蘋果iOS演算法
- Authenticode簽名對未簽名程式碼的應用
- 搞笑的msn簽名
- android studio 打包簽名apk,完成微信和qq的的第三方分享功能AndroidAPK
- Synchronized的那些事synchronized
- webassembly 的那些事Web
- ViewPager的那些事Viewpager
- 環簽名
- Pressone 簽名
- 簽名錄
- 【Brussel】簽名
- 簽名修改