我有来自同一个项目的两个应用程序,有两种不同的风格,它们有 Facebook 登录,其中一个已发布并且工作正常,问题在于另一种风格,一切都在调试中正常工作,但是当我尝试在发布时使用 facebook 登录我得到了无效的密钥哈希,密钥哈希不匹配......我尝试多次重新生成密钥哈希,即使使用不同的密钥库,但我有相同的结果,我什至尝试复制密钥在没有运气的错误消息中散列。然后我将密钥哈希与 Facebook 控制台中发布的应用程序的密钥哈希进行了比较,结果就在那里。
我的问题是为什么这两种风格即使在不同的清单文件中具有不同的包名称和 facebook ApplicationIds 也具有相同的密钥哈希?
这是我的 build.gradle
android {
signingConfigs {
release {
keyAlias 'alias'
keyPassword '********'
storeFile file('keystore.jks')
storePassword '********'
v2SigningEnabled false
}
}
compileSdkVersion 25
buildToolsVersion '26.0.2'
defaultConfig {
minSdkVersion 19
targetSdkVersion 25
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true
}
buildTypes {
debug {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
flavorDimensions "app"
productFlavors {
A {
dimension "app"
applicationId "com.app1"
versionCode 12
versionName '1.12'
resValue "string", "app_name", "App1"
resValue "string", "facebook_app_id", "1**************7"
resValue "string", "fb_login_protocol_scheme", "fb1**************7"
}
B {
dimension "app"
applicationId "com.app2"
versionCode 0
versionName '1.0'
resValue "string", "app_name", "App2"
resValue "string", "facebook_app_id", "1**************5"
resValue "string", "fb_login_protocol_scheme", "fb1**************5"
}
}
您对具有相同密钥库的两个变体使用相同的签名配置,请为每个变体使用不同的密钥库。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句