你好我安装了一个cordova插件有问题:cordova-plugin-firebase
这里是build的输出:
BUILD FAILED
Total time: 1.223 secs
Error: /home/thor/Projects/App_CDP/platforms/android/gradlew: Command failed with exit code 1 Error output:
/home/thor/Projects/App_CDP/platforms/android/src/plugin/google/maps/GoogleMaps.java:479: error: cannot access AbstractSafeParcelable
options.compassEnabled(controls.getBoolean("compass"));
^
class file for com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable not found
/home/thor/Projects/App_CDP/platforms/android/src/plugin/google/maps/GoogleMaps.java:717: error: cannot find symbol
String msg = GooglePlayServicesUtil.getOpenSourceSoftwareLicenseInfo(activity);
^
symbol: method getOpenSourceSoftwareLicenseInfo(Activity)
location: class GooglePlayServicesUtil
/home/thor/Projects/App_CDP/platforms/android/src/plugin/google/maps/AsyncLicenseInfo.java:22: error: cannot find symbol
String licenseInfo = GooglePlayServicesUtil.getOpenSourceSoftwareLicenseInfo(mActivity);
^
symbol: method getOpenSourceSoftwareLicenseInfo(Activity)
location: class GooglePlayServicesUtil
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
3 errors
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
我发现这是因为com.google.android.gms:play-services-maps
和com.google.firebase:firebase-messaging
不在同一版本下,但我无法编辑build.gradle
,因为每次构建时都会生成<{1}}
$ cat platforms/android/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.gms:google-services:+"
compile "com.google.firebase:firebase-core:+"
compile "com.google.firebase:firebase-messaging:+"
compile "com.google.firebase:firebase-crash:+"
compile "com.google.firebase:firebase-config:+"
compile "com.google.android.gms:play-services-maps:9.8.0"
compile "com.google.android.gms:play-services-location:9.8.0"
compile "com.facebook.android:facebook-android-sdk:4.+"
// SUB-PROJECT DEPENDENCIES END
}
[...]
有什么想法吗?
答案 0 :(得分:0)
您可以尝试使用cordova-android-play-services-gradle-release覆盖播放服务的版本以与Firebase对齐:
cordova plugin add cordova-android-play-services-gradle-release --variable PLAY_SERVICES_VERSION=+