基于离子的播放服务测量问题
Problem with play-services-measurement-base on ionic
我有一个离子项目的问题,它昨天开始发生而没有修改任何依赖项。
当我 运行 ionic cordova run android
我有这个错误:
The library com.google.android.gms:play-services-measurement-base is being requested by various other libraries at [[16.5.0,16.5.0], [16.4.0,16.4.0]], but resolves to 16.5.0. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.
但是我这几天没有安装任何依赖
这是我的 cordova plugins
列表:
cordova-fabric-plugin 1.1.14-dev "cordova-fabric-plugin"
cordova-plugin-advanced-http 2.0.9 "Advanced HTTP plugin"
cordova-plugin-app-version 0.1.9 "AppVersion"
cordova-plugin-appminimize 1.0.1 "AppMinimize"
cordova-plugin-apprate 1.4.0 "AppRate"
cordova-plugin-appsee 2.6.0 "Appsee"
cordova-plugin-badge 0.8.8 "Badge"
cordova-plugin-datepicker 0.9.3 "DatePicker"
cordova-plugin-device 2.0.2 "Device"
cordova-plugin-dialogs 2.0.1 "Notification"
cordova-plugin-facebook4 3.2.0 "Facebook Connect"
cordova-plugin-file 6.0.1 "File"
cordova-plugin-firebase 2.0.5 "Google Firebase Plugin"
cordova-plugin-freshchat 1.2.0 "Freshchat plugin for Phonegap"
cordova-plugin-geolocation 4.0.1 "Geolocation"
cordova-plugin-globalization 1.11.0 "Globalization"
cordova-plugin-inappbrowser 3.0.0 "InAppBrowser"
cordova-plugin-inapppurchase-fixed 1.1.0 "In App Purchase"
cordova-plugin-insomnia 4.3.0 "Insomnia (prevent screen sleep)"
cordova-plugin-local-notification 0.9.0-beta.2 "LocalNotification"
cordova-plugin-media 5.0.2 "Media"
cordova-plugin-nativegeocoder 3.2.2 "NativeGeocoder"
cordova-plugin-nativestorage 2.3.2 "NativeStorage"
cordova-plugin-network-information 2.0.1 "Network Information"
cordova-plugin-splashscreen 5.0.2 "Splashscreen"
cordova-plugin-statusbar 2.4.2 "StatusBar"
cordova-plugin-whitelist 1.3.3 "Whitelist"
cordova-plugin-x-socialsharing 5.4.4 "SocialSharing"
cordova-support-google-services 1.2.1 "cordova-support-google-services"
es6-promise-plugin 4.2.2 "Promise"
ionic-plugin-deeplinks 1.0.19 "Ionic Deeplink Plugin"
nl.kingsquare.cordova.background-audio 1.0.1 "background-audio"
pushwoosh-cordova-plugin 7.13.0 "Pushwoosh"
我在 platforms/android/app/build.gradle
中发现了这些依赖项(如果知道的话):
dependencies {
implementation fileTree(dir: 'libs', include: '*.jar')
// SUB-PROJECT DEPENDENCIES START
implementation(project(path: ":CordovaLib"))
compile "com.android.support:support-v4:24.1.1+"
compile "com.squareup.okhttp3:okhttp-urlconnection:3.10.0"
compile "com.google.android.gms:play-services-tagmanager:+"
compile "com.google.firebase:firebase-core:+"
compile "com.google.firebase:firebase-messaging:+"
compile "com.google.firebase:firebase-config:+"
compile "com.google.firebase:firebase-perf:+"
compile "com.android.support:support-v4:26.+"
compile "com.android.support:support-v4:27.+"
compile "com.android.support:appcompat-v7:27.+"
compile "com.android.support:recyclerview-v7:27.+"
compile "com.android.support:design:27.+"
compile "com.android.support.constraint:constraint-layout:1.0.2"
compile "com.github.bumptech.glide:glide:4.7.1"
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.60"
compile "com.pushwoosh:pushwoosh:5.13.0"
compile "com.pushwoosh:pushwoosh-amazon:5.13.0"
compile "com.pushwoosh:pushwoosh-badge:5.13.0"
compile "com.pushwoosh:pushwoosh-inbox:5.13.0"
compile "com.pushwoosh:pushwoosh-inbox-ui:5.13.0"
compile "com.facebook.android:facebook-android-sdk:4.38.1"
compile "com.appsee:appsee-android:2.6.0"
// SUB-PROJECT DEPENDENCIES END
}
不知道去哪里找。我在 platforms/android/build.gradle
中找到了一个禁用 GoogleServicesPlugin 版本检查的变通方法:com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
但它对我不起作用。
提前致谢。
编辑:看来我不是唯一一个。 Here.
我遇到了完全相同的问题。问题是由 cordova-plugin-firebase
引起的。我目前正在调查。当我找到确切的课程时将更新此答案。
现在您可以尝试 ionic cordova plugin rm <plugin>
看看这是否也解决了您当前的错误。
按照说的做,在Android项目目录下运行./gradlew :app:dependencies
support-v4
连加三遍:
compile "com.android.support:support-v4:24.1.1+"
compile "com.android.support:support-v4:26.+"
compile "com.android.support:support-v4:27.+"
与此类似 Gradle 项目同步:
implementation project(":CordovaLib")
implementation "com.google.android.gms:play-services-tagmanager:16.0.8"
implementation "com.google.firebase:firebase-messaging:18.0.0"
implementation "com.google.firebase:firebase-config:17.0.0"
implementation "com.google.firebase:firebase-perf:17.0.0"
implementation "com.google.firebase:firebase-core:16.0.9"
implementation "com.android.support:design:28.0.0"
implementation "com.android.support:support-v4:28.0.0"
implementation "com.android.support:customtabs:28.0.0"
implementation "com.android.support:appcompat-v7:28.0.0"
implementation "com.android.support:recyclerview-v7:28.0.0"
implementation "com.android.support:animated-vector-drawable:28.0.0"
implementation "com.android.support.constraint:constraint-layout:1.1.3"
implementation "com.facebook.android:facebook-android-sdk:4.42.0"
implementation "com.squareup.okhttp3:okhttp-urlconnection:3.10.0"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.60"
implementation "com.github.bumptech.glide:glide:4.9.0"
implementation "com.appsee:appsee-android:2.6.0"
implementation "com.pushwoosh:pushwoosh:5.13.0"
implementation "com.pushwoosh:pushwoosh-amazon:5.13.0"
implementation "com.pushwoosh:pushwoosh-badge:5.13.0"
implementation "com.pushwoosh:pushwoosh-inbox:5.13.0"
implementation "com.pushwoosh:pushwoosh-inbox-ui:5.13.0"
我在 Yannic Hamann 回答 (Ionic Forum) 中提到的论坛中找到了适合我的解决方案。
来自 systems_qualigy here 的评论是关于锁定 project.properties 中的版本。
cordova.system.library.4=com.google.firebase:firebase-core:16.0.8
cordova.system.library.5=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.6=com.google.firebase:firebase-config:16.4.1
cordova.system.library.7=com.google.firebase:firebase-perf:16.2.4
我还需要锁定
的版本
com.google.android.gms:play-services-tagmanager:16.0.8
我从 Martins answer 中获取了版本并且可以成功重建我的项目。
我刚刚在 android 平台目录下的 project.properties 中添加了下面的内容,它开始工作了
cordova.system.library.4=com.google.firebase:firebase-core:16.0.8
cordova.system.library.5=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.6=com.google.firebase:firebase-config:16.4.1
cordova.system.library.7=com.google.firebase:firebase-perf:16.2.4
这里没有发布对我有用的解决方案。一个很棒的人在 cordova-firebase-plugin
官方回购中打开了一个 pull request 并且它有效。
我做的步骤:
1 - 使用 ionic cordova plugin remove cordova-plugin-firebase
删除 cordova-firebase-plugin
2 - 安装:ionic cordova plugin add cordova-plugin-firebasex
3 - rm -rf node_modules/ plugins/ platforms/android package-lock.json
4 - ionic cordova platform add android && npm install
现在可以使用了。
我遇到了同样的错误,我只是删除了 platforms/android 并重新安装 (ionic cordova prepare android) 然后一切恢复原样.
问题是由于 firebase 的最新更新导致某些方法现已弃用,请查看 Android Firebase releases。要解决此问题,请使用以下 cordova 插件补丁:
cordova plugin add https://github.com/dpa99c/cordova-plugin-firebase#GH-1057-April-05-android-build-issue
我们现在正在维护一个分叉版本,其中包括不同作者所做的所有更改和修复(他们让每个人都免于此 Google 的举动)。
https://github.com/wizpanda/cordova-plugin-firebase-lib#difference-from-the-fork-repository
所以,现在只需删除现有的插件:
ionic cordova plugin remove cordova-plugin-firebase
现在,使用
安装新版本
ionic cordova plugin add cordova-plugin-firebase-lib --save
干杯!
离子 4:20-05-2019
这对我有用:
platforms/android/project.properties
target=android-27
android.library.reference.1=CordovaLib
android.library.reference.2=app
cordova.system.library.1=com.squareup.okhttp3:okhttp-urlconnection:3.10.0
cordova.gradle.include.1=cordova-plugin-firebase/com1-build.gradle
cordova.system.library.2=com.google.android.gms:play-services-tagmanager:16.0.8
cordova.system.library.3=com.google.firebase:firebase-core:16.0.8
cordova.system.library.4=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.5=com.google.firebase:firebase-config:16.4.1
cordova.system.library.6=com.google.firebase:firebase-perf:16.2.4
cordova.system.library.7=com.android.support:support-annotations:27.+
首先,尝试使用
删除 firebase
ionic cordova plugin rm cordova-plugin-firebase
然后重新安装。
遵循我对 cordova firebase 问题的完美解决方案。
- ionic cordova 平台 rm android
- npm uninstall -g cordova
- npm 安装-g cordova@9.0.0
- ionic cordova 平台添加 android(例如 v8.0.0)
- ionic cordova 插件添加 cordova-plugin-firebasex(例如 v6.0.7)
- 离子科尔多瓦 运行 android
新的 cordova-plugin-firebasex 插件将解决与 firebase 相关的所有问题,它是 cordova-plugin-firebase 的一个很好的替代品。
我有一个离子项目的问题,它昨天开始发生而没有修改任何依赖项。
当我 运行 ionic cordova run android
我有这个错误:
The library com.google.android.gms:play-services-measurement-base is being requested by various other libraries at [[16.5.0,16.5.0], [16.4.0,16.4.0]], but resolves to 16.5.0. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.
但是我这几天没有安装任何依赖
这是我的 cordova plugins
列表:
cordova-fabric-plugin 1.1.14-dev "cordova-fabric-plugin"
cordova-plugin-advanced-http 2.0.9 "Advanced HTTP plugin"
cordova-plugin-app-version 0.1.9 "AppVersion"
cordova-plugin-appminimize 1.0.1 "AppMinimize"
cordova-plugin-apprate 1.4.0 "AppRate"
cordova-plugin-appsee 2.6.0 "Appsee"
cordova-plugin-badge 0.8.8 "Badge"
cordova-plugin-datepicker 0.9.3 "DatePicker"
cordova-plugin-device 2.0.2 "Device"
cordova-plugin-dialogs 2.0.1 "Notification"
cordova-plugin-facebook4 3.2.0 "Facebook Connect"
cordova-plugin-file 6.0.1 "File"
cordova-plugin-firebase 2.0.5 "Google Firebase Plugin"
cordova-plugin-freshchat 1.2.0 "Freshchat plugin for Phonegap"
cordova-plugin-geolocation 4.0.1 "Geolocation"
cordova-plugin-globalization 1.11.0 "Globalization"
cordova-plugin-inappbrowser 3.0.0 "InAppBrowser"
cordova-plugin-inapppurchase-fixed 1.1.0 "In App Purchase"
cordova-plugin-insomnia 4.3.0 "Insomnia (prevent screen sleep)"
cordova-plugin-local-notification 0.9.0-beta.2 "LocalNotification"
cordova-plugin-media 5.0.2 "Media"
cordova-plugin-nativegeocoder 3.2.2 "NativeGeocoder"
cordova-plugin-nativestorage 2.3.2 "NativeStorage"
cordova-plugin-network-information 2.0.1 "Network Information"
cordova-plugin-splashscreen 5.0.2 "Splashscreen"
cordova-plugin-statusbar 2.4.2 "StatusBar"
cordova-plugin-whitelist 1.3.3 "Whitelist"
cordova-plugin-x-socialsharing 5.4.4 "SocialSharing"
cordova-support-google-services 1.2.1 "cordova-support-google-services"
es6-promise-plugin 4.2.2 "Promise"
ionic-plugin-deeplinks 1.0.19 "Ionic Deeplink Plugin"
nl.kingsquare.cordova.background-audio 1.0.1 "background-audio"
pushwoosh-cordova-plugin 7.13.0 "Pushwoosh"
我在 platforms/android/app/build.gradle
中发现了这些依赖项(如果知道的话):
dependencies {
implementation fileTree(dir: 'libs', include: '*.jar')
// SUB-PROJECT DEPENDENCIES START
implementation(project(path: ":CordovaLib"))
compile "com.android.support:support-v4:24.1.1+"
compile "com.squareup.okhttp3:okhttp-urlconnection:3.10.0"
compile "com.google.android.gms:play-services-tagmanager:+"
compile "com.google.firebase:firebase-core:+"
compile "com.google.firebase:firebase-messaging:+"
compile "com.google.firebase:firebase-config:+"
compile "com.google.firebase:firebase-perf:+"
compile "com.android.support:support-v4:26.+"
compile "com.android.support:support-v4:27.+"
compile "com.android.support:appcompat-v7:27.+"
compile "com.android.support:recyclerview-v7:27.+"
compile "com.android.support:design:27.+"
compile "com.android.support.constraint:constraint-layout:1.0.2"
compile "com.github.bumptech.glide:glide:4.7.1"
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.60"
compile "com.pushwoosh:pushwoosh:5.13.0"
compile "com.pushwoosh:pushwoosh-amazon:5.13.0"
compile "com.pushwoosh:pushwoosh-badge:5.13.0"
compile "com.pushwoosh:pushwoosh-inbox:5.13.0"
compile "com.pushwoosh:pushwoosh-inbox-ui:5.13.0"
compile "com.facebook.android:facebook-android-sdk:4.38.1"
compile "com.appsee:appsee-android:2.6.0"
// SUB-PROJECT DEPENDENCIES END
}
不知道去哪里找。我在 platforms/android/build.gradle
中找到了一个禁用 GoogleServicesPlugin 版本检查的变通方法:com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
但它对我不起作用。
提前致谢。
编辑:看来我不是唯一一个。 Here.
我遇到了完全相同的问题。问题是由 cordova-plugin-firebase
引起的。我目前正在调查。当我找到确切的课程时将更新此答案。
现在您可以尝试 ionic cordova plugin rm <plugin>
看看这是否也解决了您当前的错误。
按照说的做,在Android项目目录下运行./gradlew :app:dependencies
support-v4
连加三遍:
compile "com.android.support:support-v4:24.1.1+"
compile "com.android.support:support-v4:26.+"
compile "com.android.support:support-v4:27.+"
与此类似 Gradle 项目同步:
implementation project(":CordovaLib")
implementation "com.google.android.gms:play-services-tagmanager:16.0.8"
implementation "com.google.firebase:firebase-messaging:18.0.0"
implementation "com.google.firebase:firebase-config:17.0.0"
implementation "com.google.firebase:firebase-perf:17.0.0"
implementation "com.google.firebase:firebase-core:16.0.9"
implementation "com.android.support:design:28.0.0"
implementation "com.android.support:support-v4:28.0.0"
implementation "com.android.support:customtabs:28.0.0"
implementation "com.android.support:appcompat-v7:28.0.0"
implementation "com.android.support:recyclerview-v7:28.0.0"
implementation "com.android.support:animated-vector-drawable:28.0.0"
implementation "com.android.support.constraint:constraint-layout:1.1.3"
implementation "com.facebook.android:facebook-android-sdk:4.42.0"
implementation "com.squareup.okhttp3:okhttp-urlconnection:3.10.0"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.60"
implementation "com.github.bumptech.glide:glide:4.9.0"
implementation "com.appsee:appsee-android:2.6.0"
implementation "com.pushwoosh:pushwoosh:5.13.0"
implementation "com.pushwoosh:pushwoosh-amazon:5.13.0"
implementation "com.pushwoosh:pushwoosh-badge:5.13.0"
implementation "com.pushwoosh:pushwoosh-inbox:5.13.0"
implementation "com.pushwoosh:pushwoosh-inbox-ui:5.13.0"
我在 Yannic Hamann 回答 (Ionic Forum) 中提到的论坛中找到了适合我的解决方案。
来自 systems_qualigy here 的评论是关于锁定 project.properties 中的版本。
cordova.system.library.4=com.google.firebase:firebase-core:16.0.8
cordova.system.library.5=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.6=com.google.firebase:firebase-config:16.4.1
cordova.system.library.7=com.google.firebase:firebase-perf:16.2.4
我还需要锁定
的版本com.google.android.gms:play-services-tagmanager:16.0.8
我从 Martins answer 中获取了版本并且可以成功重建我的项目。
我刚刚在 android 平台目录下的 project.properties 中添加了下面的内容,它开始工作了
cordova.system.library.4=com.google.firebase:firebase-core:16.0.8
cordova.system.library.5=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.6=com.google.firebase:firebase-config:16.4.1
cordova.system.library.7=com.google.firebase:firebase-perf:16.2.4
这里没有发布对我有用的解决方案。一个很棒的人在 cordova-firebase-plugin
官方回购中打开了一个 pull request 并且它有效。
我做的步骤:
1 - 使用 ionic cordova plugin remove cordova-plugin-firebase
2 - 安装:ionic cordova plugin add cordova-plugin-firebasex
3 - rm -rf node_modules/ plugins/ platforms/android package-lock.json
4 - ionic cordova platform add android && npm install
现在可以使用了。
我遇到了同样的错误,我只是删除了 platforms/android 并重新安装 (ionic cordova prepare android) 然后一切恢复原样.
问题是由于 firebase 的最新更新导致某些方法现已弃用,请查看 Android Firebase releases。要解决此问题,请使用以下 cordova 插件补丁:
cordova plugin add https://github.com/dpa99c/cordova-plugin-firebase#GH-1057-April-05-android-build-issue
我们现在正在维护一个分叉版本,其中包括不同作者所做的所有更改和修复(他们让每个人都免于此 Google 的举动)。
https://github.com/wizpanda/cordova-plugin-firebase-lib#difference-from-the-fork-repository
所以,现在只需删除现有的插件:
ionic cordova plugin remove cordova-plugin-firebase
现在,使用
安装新版本ionic cordova plugin add cordova-plugin-firebase-lib --save
干杯!
离子 4:20-05-2019
这对我有用:
platforms/android/project.properties
target=android-27
android.library.reference.1=CordovaLib
android.library.reference.2=app
cordova.system.library.1=com.squareup.okhttp3:okhttp-urlconnection:3.10.0
cordova.gradle.include.1=cordova-plugin-firebase/com1-build.gradle
cordova.system.library.2=com.google.android.gms:play-services-tagmanager:16.0.8
cordova.system.library.3=com.google.firebase:firebase-core:16.0.8
cordova.system.library.4=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.5=com.google.firebase:firebase-config:16.4.1
cordova.system.library.6=com.google.firebase:firebase-perf:16.2.4
cordova.system.library.7=com.android.support:support-annotations:27.+
首先,尝试使用
删除 firebaseionic cordova plugin rm cordova-plugin-firebase
然后重新安装。
遵循我对 cordova firebase 问题的完美解决方案。
- ionic cordova 平台 rm android
- npm uninstall -g cordova
- npm 安装-g cordova@9.0.0
- ionic cordova 平台添加 android(例如 v8.0.0)
- ionic cordova 插件添加 cordova-plugin-firebasex(例如 v6.0.7)
- 离子科尔多瓦 运行 android
新的 cordova-plugin-firebasex 插件将解决与 firebase 相关的所有问题,它是 cordova-plugin-firebase 的一个很好的替代品。