java - 如何生成哈希签名?
问题描述
我正在使用 twilio sdk 将短信验证与我的 android 应用程序集成,twilio 要求我注册我的应用程序的哈希签名,并且生成哈希签名的方法无效,总是说它是无效的哈希签名这是 twilio 想要哈希的路径签名
解决方案
用户在 android studio 终端中使用以下命令生成释放密钥哈希
keytool -exportcert -alias [aliasname] -keystore [your app keystore path] | openssl sha1 -binary | openssl base64
以及您项目中的以下代码以获取开发密钥哈希
try {
android.content.pm.PackageInfo info = getPackageManager().getPackageInfo(
"com.apps.sonictonic",
android.content.pm.PackageManager.GET_SIGNATURES);
for (android.content.pm.Signature signature : info.signatures) {
java.security.MessageDigest md = java.security.MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
android.util.Log.d("KeyHash", "KeyHash:" + android.util.Base64.encodeToString(md.digest(),
android.util.Base64.DEFAULT));
}
} catch (android.content.pm.PackageManager.NameNotFoundException e) {
} catch (java.security.NoSuchAlgorithmException e) {
}
推荐阅读
- ms-access - 对报表访问中的标签或文本框进行编码
- database - 从 DB 获取数据后,对象属性为空。实体框架
- ios - 构建开源 iOS 应用程序时出现链接错误
- javascript - Adsense - 自定义后备
- ios-universal-links - 应用搜索 API 验证工具显示“example.com 正在返回 469。请检查您的网址并重试。”
- sql - 弹性搜索过滤器组合
- echo - Singularity exec - 回显重定向问题
- java - 如何拒绝 DML 和 DDL 查询?
- oauth - 报名后登记表
- python - 使用 python 脚本发送带有嵌入图像的 html 电子邮件