我知道这是因为google新版本的gms更新到12.0.0,这里是链接https://developers.google.com/android/guides/releases
添加android/build.gradle,但现在它不编译一个信号,因为它也使用不同版本的Google服务
github上的其他解决方案建议我在依赖项中添加“+”,但它不起作用
configurations.all {
// #PlayServicesGate — March, 20 2018
resolutionStrategy {
force 'com.google.android.gms:play-services-auth:11.8.0'
// Firebase dependencies
force "com.google.android.gms:play-services-base:11.8.0"
force 'com.google.firebase:firebase-core:11.8.0'
force 'com.google.firebase:firebase-auth:11.8.0'
}
}如果有人知道这件事请告诉我
:react-native-onesignal:prepareComGoogleAndroidGmsPlayServicesTagmanagerV4Impl1200Library
:react-native-onesignal:prepareComGoogleAndroidGmsPlayServicesTagmanagerV4ImplLicense1200Library
:react-native-onesignal:prepareComGoogleAndroidGmsPlayServicesTasks1200Library
:react-native-onesignal:prepareComGoogleAndroidGmsPlayServicesTasksLicense1200Library
:react-native-onesignal:prepareComOnesignalOneSignal382Library
:react-native-onesignal:prepareOrgWebkitAndroidJscR174650Library
:react-native-onesignal:prepareReleaseDependencies
:react-native-onesignal:compileReleaseAidl
:react-native-onesignal:compileReleaseNdk UP-TO-DATE
:react-native-onesignal:compileLint
:react-native-onesignal:copyReleaseLint UP-TO-DATE
:react-native-onesignal:compileReleaseRenderscript
:react-native-onesignal:generateReleaseBuildConfig
:react-native-onesignal:generateReleaseResValues
:react-native-onesignal:generateReleaseResources
:react-native-onesignal:mergeReleaseResources
:react-native-onesignal:processReleaseManifest
:react-native-onesignal:processReleaseResources FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':react-native-onesignal:processReleaseResources'.
> Error: more than one library with package name 'com.google.android.gms.license'
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 3 mins 7.465 secs
Error: /Users/vsts/agent/2.131.0/work/1/s/android/gradlew failed with return code: 1
at ChildProcess.<anonymous> (/Users/vsts/agent/2.131.0/work/_tasks/Gradle_8d8eebd8-2b94-4c97-85af-839254cc6da4/1.128.0/node_modules/vsts-task-lib/toolrunner.js:569:30)
at emitTwo (events.js:106:13)
at ChildProcess.emit (events.js:191:7)
at maybeClose (internal/child_process.js:886:16)
at Socket.<anonymous> (internal/child_process.js:342:11)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at Pipe._handle.close [as _onclose] (net.js:497:12)发布于 2018-03-21 15:12:12
我尝试过这里发布的一些解决方案,但没有成功,我真的不想深入研究node_modules,但这正是我所做的,因为我的项目是时间敏感的。至少在找到永久解决方案之前。
在我的应用程序级build.gradle中,我已经将所有Google依赖项更新为11.8.0版本,例如compile "com.google.android.gms:play-services-base:11.8.0"。然后在react-native-onesignal's build.gradle
我改变了这句话:
compile 'com.google.android.gms:play-services-gcm:+'
compile 'com.google.android.gms:play-services-analytics:+'
compile 'com.google.android.gms:play-services-location:+'相同的具体版本如下:
compile 'com.google.android.gms:play-services-gcm:11.8.0'
compile 'com.google.android.gms:play-services-analytics:11.8.0'
compile 'com.google.android.gms:play-services-location:11.8.0'这似乎解决了错误。如果有人有更好的解决方案,我很乐意在项目中实现这一点。同时,我希望这对其他人也有帮助。
发布于 2018-03-21 12:19:58
转到project.properties并更改以下行:
cordova.system.library.2=com.google.android.gms:play-services-gcm:+ cordova.system.library.3=com.google.android.gms:play-services-location:+
至
cordova.system.library.2=com.google.android.gms:play-services-gcm:11+ cordova.system.library.3=com.google.android.gms:play-services-location:11+
(它对我有用:)
发布于 2018-03-21 12:21:08
只需在代码块中添加这些行即可。
configurations.all{
//here include these line
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'
} https://stackoverflow.com/questions/49404963
复制相似问题