如何在 Android 应用中更改 SHA1 指纹

Posted

技术标签:

【中文标题】如何在 Android 应用中更改 SHA1 指纹【英文标题】:How to change SHA1 fingerprint in an android app 【发布时间】:2015-06-16 19:34:42 【问题描述】:

尝试设计简单的谷歌地图相关应用。应用程序在调试模式下运行良好,但是当我通过在应用程序中提供发布 SHA1 指纹和包名称来重新创建和更改 Google Map API 密钥来切换到发布模式时,还可以通过提供正确的配置文件将构建类型更改为发布。

但是当我运行一个应用程序时出现以下错误

Ensure that the "Google Maps android API v2" is enabled.
Ensure that the following Android Key exists:
API Key: Google Map API Key (with release SHA1 fingerprint)
Android Application (<cert_fingerprint>;<package_name>): Debug SHA1 fingerprint;com.mycompany.packagename

我被困在这里,无法在 App 中更改 SHA1 指纹以释放指纹。请帮我解决这个问题。

【问题讨论】:

你好,邓肯,标签并不重要。感谢您的编辑,但请帮助我找到解决方案 【参考方案1】:

我终于找出了问题所在。在构建期间使用 GUI 签名不起作用。因此,要检查发布版本,您需要按如下方式更改 Gradle 并同步项目。

apply plugin: 'com.android.application'

android 
signingConfigs 
    debug 
        storeFile file('debug.keystore')
    
    release 
        keyAlias 'Key'
        keyPassword 'Pass'
        storeFile file('C:/Users/hp/AndroidStudioProjects/project/key.keystore')
        storePassword 'Pass'
    

compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig 
    applicationId "com.mycompany.mypackage"
    minSdkVersion 15
    targetSdkVersion 21
    versionCode 6
    versionName "6.0"

buildTypes 
    debug 
        signingConfig signingConfigs.release
    
    release 
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        signingConfig signingConfigs.release
        debuggable false
    



dependencies 
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'com.google.android.gms:play-services:7.0.0'

在检查 App 的发布版本后。运行“assemblerelease”并在以下路径\build\outputs\apk*release.apk中找到发布apk

我认为这个解决方案适用于其他人。

谢谢

【讨论】:

以上是关于如何在 Android 应用中更改 SHA1 指纹的主要内容,如果未能解决你的问题,请参考以下文章

Android:如何以编程方式获取 SHA1/MD5 指纹?

我在哪里可以在 nativescript android 应用程序中找到 sha1 指纹?

更改现有应用程序的证书指纹

无法获取 SHA1 证书指纹 Android Studio [重复]

SHA1 证书指纹

Firebase API 密钥限制不适用于 Android 应用程序包名称和 SHA1 指纹