Flutter Firebase Google登录发布签名密钥问题

时间:2020-08-15 09:27:51

标签: firebase flutter firebase-authentication google-signin fingerprint

我有带有Firebase身份验证的Flutter应用程序。 我在gradle.build

中有用于发布和配置的签名密钥
signingConfigs {
   release {
       keyAlias keystoreProperties['keyAlias']
       keyPassword keystoreProperties['keyPassword']
       storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
       storePassword keystoreProperties['storePassword']
   }
}

buildTypes {
    release {
        // TODO: Add your own signing config for the release build.
        // Signing with the debug keys for now, so `flutter run --release` works.
        // signingConfig signingConfigs.debug
        signingConfig signingConfigs.release
    }
}
我已通过运行以下命令生成了SHA1和SHA256指纹: keytool -list -v -keystore "C:\...\assets\key.jks" -alias key -storepass ...pass... -keypass ...pass...

当我在构建fith flutter运行时-在调试模式下运行时,所有功能都可以正常运行,直到我为\.android\debug.keystore添加SHA时,我才能使用google登录。

(以确保使用了release签名密钥,如果build.gradle我已添加

 if (keystorePropertiesFile.exists()) {
        signingConfig signingConfigs.release
        println "Signing with key.properties"
    } else {
        signingConfig signingConfigs.debug
        println "Signing with debug keys"
    }

它需要一个发布权)

为什么有什么主意?默认情况下,在调试模式下是否需要调试键?从我的角度来看,它还是应该使用释放键...

p.s。是的,我正在用flutter clean替换google-services.json

1 个答案:

答案 0 :(得分:0)

就像您在FILESEXTRAPATHS_prepend := "${THISDIR}/files:" SRC_URI += " file://rpi-timer.patch " 下添加了release部分一样,您需要对signingConfigs执行相同的操作,并指定与debug中提到的相同的详细信息。