And*_*aha 26 android google-play-services ionic3
当我尝试将命令ionic cordova build android输出错误作为上面的标题.然后我尝试删除其中一个gms,当我再次构建删除它再次出现.怎么解决这个?
这是我对我的依赖build.gradle:
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
// SUB-PROJECT DEPENDENCIES START
debugCompile(project(path: "CordovaLib", configuration: "debug"))
releaseCompile(project(path: "CordovaLib", configuration: "release"))
compile "com.google.android.gms:play-services-auth:+" // i remove this
compile "com.google.android.gms:play-services-identity:+"
compile "com.facebook.android:facebook-android-sdk:4.+"
// SUB-PROJECT DEPENDENCIES END
}
Run Code Online (Sandbox Code Playgroud)
rpb*_*zar 16
我最近遇到过这个问题而且我遇到的问题是,由于某些原因,android project.properties文件是使用com.google.android.gms的不同版本生成的,因此:
target=android-26
android.library.reference.1=CordovaLib
cordova.system.library.1=com.android.support:support-v4:24.1.1+
cordova.system.library.2=com.google.android.gms:play-services-auth:+
cordova.system.library.3=com.google.android.gms:play-services-identity:+
cordova.system.library.4=com.google.android.gms:play-services-location:11.+
Run Code Online (Sandbox Code Playgroud)
这使得library.2和library.3需要一个版本,而library.4需要更具体的版本,因此在编译期间会导致重复的库引用.
虽然我不认为这应该是最终的解决方案,但添加特定的库对我有用.因此:
target=android-26
android.library.reference.1=CordovaLib
cordova.system.library.1=com.android.support:support-v4:24.1.1+
cordova.system.library.2=com.google.android.gms:play-services-auth:11.+
cordova.system.library.3=com.google.android.gms:play-services-identity:11.+
cordova.system.library.4=com.google.android.gms:play-services-location:11.+
Run Code Online (Sandbox Code Playgroud)
jer*_*lli 13
在build.gradle中添加这个
configurations.all {
resolutionStrategy {
force "com.google.android.gms:play-services-ads:11.8.0"
force "com.google.android.gms:play-services-base:11.8.0"
force "com.google.android.gms:play-services-gcm:11.8.0"
force "com.google.android.gms:play-services-analytics:11.8.0"
force "com.google.android.gms:play-services-location:11.8.0"
force "com.google.android.gms:play-services-basement:11.8.0"
force "com.google.android.gms:play-services-tagmanager:11.8.0"
force 'com.google.firebase:firebase-core:11.8.0'
force 'com.google.firebase:firebase-crash:11.8.0'
force 'com.google.firebase:firebase-auth:11.8.0'
force 'com.google.firebase:firebase-common:11.8.0'
force 'com.google.firebase:firebase-config:11.8.0'
force 'com.google.firebase:firebase-messaging:11.8.0'
}
}
Run Code Online (Sandbox Code Playgroud)
如果这不起作用,请在项目中搜索字符串'12 .0.0'并在缺少的库上方的列表中添加
小智 6
发生这种情况是因为Play服务12.0.0.我继续将依赖项降级到11.8.0(我项目的最后一个已知工作版本).我正在使用本地反应.我有2个依赖项,它们吸引了12.0.0的google play服务 - com.google.android:play-services...12.0.0希望这会有所帮助.
小智 6
我必须做的事情才能让我的Ionic3应用程序上的构建成功:
这可能是让事情发挥作用的最糟糕的方式,但有点救了我的命.希望这有助于某人!
小智 5
也许它与新发布的Google Play服务12.0.0(2018年3月20日发布)有关我已经解决了它修复依赖项:添加配置 android/build.gradle
allprojects {
repositories {
...
configurations.all {
resolutionStrategy {
// Add force (11.0.0 is version you want to use)
force 'com.google.firebase:firebase-core:11.0.0'
force 'com.google.firebase:firebase-crash:11.0.0'
force 'com.google.firebase:firebase-analytics:11.0.0'
force 'com.google.firebase:firebase-messaging:11.0.0'
force 'com.google.android.gms:play-services-base:11.0.0'
force 'com.google.android.gms:play-services-maps:11.0.0'
force 'com.google.android.gms:play-services-wallet:11.0.0'
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
依赖集是来自你的 android/app/build.gradle