在使用设备所有者应用程序配置设备时,我想使用签名校验和而不是包校验和。该应用程序将从http服务器下载。
使用EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM时,这篇文章很棒: Checksum Error while provisioning Android Lollipop
但我想使用EXTRA_PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM。 请参阅:https://developer.android.com/reference/android/app/admin/DevicePolicyManager.htm
配置应用和设备所有者应用都将在Android O上运行。
如何获取我的应用程序的签名校验和,我可以在我的键/值对中使用NFC?
答案 0 :(得分:5)
试试这个
keytool -list -printcert -jarfile [path_to_your_apk] | grep -Po "(?<=SHA256:) .*" | xxd -r -p | openssl base64 | tr -d '=' | tr -- '+/=' '-_'
详情:
keytool -list -printcert -jarfile [path_to_your_apk]
提取有关APK证书的信息,grep -Po "(?<=SHA256:) .*" | xxd -r -p
获取SHA256哈希并将其转换为二进制,openssl base64
使用base64编码,tr -d '=' | tr -- '+/=' '-_'
使网址安全(+
编码为-
,/
编码为_
,填充字符=
被删除)。