当我像这样设置gradle文件时,每件事都可以:
override fun onCreate(savedInstanceState: Bundle?){
....
val dummyViewModel = ViewModelProviders.of(this).get(DummyViewModel::class.java)
RestaurantViewModel.liveData.observe(this, Observer<String> {
mTextView.text = it
})
dummyViewModel.test()
}
但是当我交换依赖项和插件时,我收到了这个错误:
dependencies {
implementation 'com.google.firebase:firebase-messaging:11.0.4'
compile 'com.android.support:support-v4:22.2.1'
}
apply plugin: 'com.google.gms.google-services'
所有gms / firebase库必须使用完全相同的版本 规范(混合版本可能导致运行时崩溃)。发现 版本9.0.0,11.0.4。例子包括 com.google.android.gms:play-services-base:9.0.0和 com.google.android.gms:播放服务地下室:11.0.4
gradle结构中是否有任何优先级以及它与版本的关系? apply plugin: 'com.google.gms.google-services'
dependencies {
implementation 'com.google.firebase:firebase-messaging:11.0.4'
compile 'com.android.support:support-v4:22.2.1'
}
是所有版本的一般语法,如果没有,我应该如何在此处自定义其版本?
答案 0 :(得分:1)
apply plugin: 'com.google.gms.google-services'
应始终位于build.gradle
google-services
插件有两个主要功能:
- 处理
google-services.json
文件并生成可在您的应用程序代码中使用的Android资源。请参阅Adding the JSON File更多信息。- 为已启用的服务所需的基本库添加依赖项。此步骤要求
来查看此步骤的结果 醇>apply plugin: 'com.google.gms.google-services'
行位于app/build.gradle
文件的底部,以便不会引入依赖项冲突。您可以通过运行./gradlew :app:dependencies
。