针对谷歌8.1号强制实施需要兼容64位安卓手机系统,除了要使用谷歌自带的签名打包android app bundle方式(.aab的包)外,面对海外的用户,开发者也需要跟随平台政策做好应急处理,因为项目涉及到了第三方登录和支付等,一堆key值需要替换,这里记录一下Facebook授权登录需要的KeyHash
/**
* 获取Facebook需要的KeyHash
*/
private void getFacebookKeyHash() {
try {
PackageInfo info = getPackageManager().getPackageInfo(
getPackageName(),
PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.d("KeyHash:", "---KeyHash:" + Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (PackageManager.NameNotFoundException e) {
} catch (NoSuchAlgorithmException e) {
}
}