美文网首页
android 高德地图出现【定位失败key鉴权失败】

android 高德地图出现【定位失败key鉴权失败】

作者: 涛涛123759 | 来源:发表于2017-03-02 14:05 被阅读1498次

    一、debug模式下的SHA1,发布的版本正确获取SHA1的获取方式:
    开发模式使用 debug.keystore,命令为:keytool -list -v -keystore debug.keystore
    发布模式使用 apk 对应的 keystore,命令为:keytool -list -v -keystore xxxx.jks, xxxx.jks为应用创建的密钥库和密钥。

    二、代码获得(release)

    public static String sHA1(Context context) {
        try {
            PackageInfo info = context.getPackageManager().getPackageInfo(context.getPackageName(), PackageManager.GET_SIGNATURES);
            byte[] cert = info.signatures[0].toByteArray();
            MessageDigest md = MessageDigest.getInstance("SHA1");
            byte[] publicKey = md.digest(cert);
            StringBuffer hexString = new StringBuffer();
            for (int i = 0; i < publicKey.length; i++) {
                String appendString = Integer.toHexString(0xFF & publicKey[i]).toUpperCase(Locale.US);
                if (appendString.length() == 1)
                    hexString.append("0");
                hexString.append(appendString);
                hexString.append(":");
            }
            String result = hexString.toString();
            return result.substring(0, result.length()-1);
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        }
        return null;
    }
    

    注意debug和release,两个的SHA1的值不能相同

    相关文章

      网友评论

          本文标题:android 高德地图出现【定位失败key鉴权失败】

          本文链接:https://www.haomeiwen.com/subject/xughgttx.html