我需要从 Digits 迁移到 Firebase。
所以在我的 app/build.gradle
compile 'com.firebaseui:firebase-ui-auth:2.3.0'
compile 'com.google.firebase:firebase-auth:11.0.4'
compile "com.android.support:design:26.1.0"
compile "com.android.support:customtabs:26.1.0"
compile "com.android.support:cardview-v7:26.1.0"
此处 AndroidManifest 第 39 行:
<meta-data android:name="io.fabric.ApiKey" android:value="abcdaaaaaabbbbbbxxxxxxxxxxxdddde1234aa" />
但是当我尝试构建时出现错误:
Error:Execution failed for task ':app:processDevManifest'.
> Manifest merger failed : Attribute meta-data#io.fabric.ApiKey@value value=(abcdaaaaaabbbbbbxxxxxxxxxxxdddde1234aa) from AndroidManifest.xml:39:13-69
is also present at [com.firebaseui:firebase-ui-auth:2.3.0] AndroidManifest.xml:21:13-60 value=(@string/twitter_consumer_secret).
Suggestion: add 'tools:replace="android:value"' to <meta-data> element at .xml:37:9-39:72 to override.
最佳答案
是的,这有点烦人。您可以在 FirebaseUI on GitHub 中查看它是如何定义的- 它从一个字符串值中提取,这就是人们与 Twitter 和 FirebaseUI 集成的方式。
您可以通过删除 AndroidManifest 中的条目并添加字符串资源来修复此错误,例如
<resources>
<string name="twitter_consumer_key" translatable="false">YOURCONSUMERKEY</string>
<string name="twitter_consumer_secret" translatable="false">YOURCONSUMERSECRET</string>
</resources>
关于Android:Firebase:Digits: 属性 io.fabric.ApiKey 也存在于 firebase-ui-auth,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46321300/