简体   繁体   English

无法获得提供商com.google.android.gms.measurement.AppMeasurementContentProvider

[英]Unable to get provider com.google.android.gms.measurement.AppMeasurementContentProvider

I tried to Set up GCM in my project as given in Set up a GCM Client App on Android and to Set Up Google Play Services added dependency 我试图在我的项目中设置 GCM,如在Android设置 GCM客户端应用程序设置Google Play服务添加的依赖关系中所示

  compile "com.google.android.gms:play-services-gcm:8.4.0"

to the dependency section of my application's build.gradle file. 到我的应用程序的build.gradle文件的依赖项部分。

And In the root gradle file add classpath as given in sample project(Sample cloned from $ git clone https://github.com/googlesamples/google-services.git ) as 并在根gradle文件中添加示例项目中给出的类路径(从$ git clone https://github.com/googlesamples/google-services.git克隆的样本)

dependencies {
    classpath 'com.android.tools.build:gradle:2.0.0-beta6'
    classpath 'com.google.gms:google-services:2.0.0-beta6'
}

It's building fine, but it crashes on launch with the following stack trace : 它正在构建正常,但它在启动时崩溃,具有以下堆栈跟踪:

java.lang.RuntimeException: Unable to get provider com.google.android.gms.measurement.AppMeasurementContentProvider: java.lang.NullPointerException: null reference at android.app.ActivityThread.installProvider(ActivityThread.java:5156) at android.app.ActivityThread.installContentProviders(ActivityThread.java:4748) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4688) at android.app.ActivityThread.-wrap1(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1405) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) Caused by: java.lang.NullPointerException: null reference at com.google.android.gms.common.internal.zzx.zzy(Unknown Sou java.lang.RuntimeException:无法获取提供者com.google.android.gms.measurement.AppMeasurementContentProvider:java.lang.NullPointerException:android.app上的android.app.ActivityThread.installProvider(ActivityThread.java:5156)中的null引用。 ActivityThread.installContentProviders(ActivityThread.java:4748)在android.app.ActivityThread.handleBindApplication(ActivityThread.java:4688)android.app.ActivityThread.-wrap1(ActivityThread.java)android.app.ActivityThread $ H.handleMessage( ActivityThread.java:1405)android.app.Handler.dispatchMessage(Handler.java:102)android.app.Looper.loop(Looper.java:148)android.app.ActivityThread.main(ActivityThread.java:5417) )com.android.internal.os.ZygoteInit.main中的com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:726)中的java.lang.reflect.Method.invoke(Native Method)(ZygoteInit) .java:616)引起:java.lang.NullPointerException:com.google.android.gms.common.internal.zzx.zzy(Unknown Sou)的null引用 rce) at com.google.android.gms.measurement.internal.zzt.zzaU(Unknown Source) at com.google.android.gms.measurement.AppMeasurementContentProvider.onCreate(Unknown Source) at android.content.ContentProvider.attachInfo(ContentProvider.java:1748) at android.content.ContentProvider.attachInfo(ContentProvider.java:1723) at android.app.ActivityThread.installProvider(ActivityThread.java:5153) at android.app.ActivityThread.installContentProviders(ActivityThread.java:4748) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4688) at android.app.ActivityThread.-wrap1(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1405) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.interna rce)com.google.android.gms.measurement.internal.zzt.zzaU(未知来源)at com.google.android.gms.measurement.AppMeasurementContentProvider.onCreate(Unknown Source)at android.content.ContentProvider.attachInfo(ContentProvider .java:1748)在Android.app.ActivityThread.installProviders(ActivityThread.java:4748)的android.app.AtentThread.installProvider(ActivityThread.java:5153)的android.content.ContentProvider.attachInfo(ContentProvider.java:1723)在android.app.ActivityThread.handleBindApplication(ActivityThread.java:4688)的android.app.ActivityThread.- wrap1(ActivityThread.java)android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1405)在android.os .Handler.dispatchMessage(Handler.java:102)位于android.app.Looper.loop(Looper.java:148)的android.app.ActivityThread.main(ActivityThread.java:5417),位于java.lang.reflect.Method。在com.android.interna的com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:726)中调用(Native Method) l.os.ZygoteInit.main(ZygoteInit.java:616) l.os.ZygoteInit.main(ZygoteInit.java:616)

Also tried related stack questions: 还试过相关的堆栈问题:

  1. Updating Play services from 8.1 to 8.3 with Proguard enabled 在启用Proguard的情况下将Play服务从8.1更新到8.3
  2. Error on some devices - couldn't find class 'com.google.android.gms.measurement.internal.zzz' 某些设备出错 - 无法找到“com.google.android.gms.measurement.internal.zzz”类

As answered in 1st link tried classpath 正如第一个链接中的回答尝试了classpath

classpath 'com.google.gms:google-services:1.5.0'

and as answered in 2nd link,tried Multidex also with no success. 并且在第二个链接中回答,尝试过Multidex也没有成功。

Also tried for Application Measurement adding 还尝试了应用程序测量添加

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <integer name="google_app_measurement_enable">0</integer>
</resources>

as suggested in Play Services Release notes . 正如Play服务发行说明中所述

Note : sample code running. 注意:示例代码正在运行。


Update : 更新:

Interesting thing is that same error even if I add only dependency 即使我只添加依赖项,有趣的是同样的错误

  compile "com.google.android.gms:play-services-gcm:8.4.0"

in my app gradle file(Note : Only one line added in Existing project).And there is no error after adding 在我的app gradle文件中(注意:在现有项目中只添加了一行)。添加后没有错误

compile "com.google.android.gms:play-services-gcm:8.1.0"

ie the token works on 8.1.0 .Interesting,isn't? 即令牌适用于8.1.0 。有趣,不是吗?

Did you remember to add the plugin to the end of your app-level build.gradle file? 你记得的插件添加到您的应用一级的build.gradle文件的结尾 ... ...

apply plugin: 'com.google.gms.google-services'

You specifically need to add it to the very end of the file. 特别需要将其添加到该文件的末尾

Take a look here for reference: https://github.com/googlesamples/google-services/blob/master/android/gcm/app/build.gradle 请看这里参考: https//github.com/googlesamples/google-services/blob/master/android/gcm/app/build.gradle

There is also a bug report opened on this issue: Issue 193112 此问题还有一个错误报告: 问题193112

From Android studio menu go to: 从Android工作室菜单转到:

  • Build → Clean Project 建设→清洁项目

  • Build → Rebuild Project 构建→重建项目

  • Run the app. 运行应用程序。 No more crash. 没有更多的崩溃。

Note: I am using the latest version of play-services: 注意:我使用的是最新版本的播放服务:

compile 'com.google.android.gms:play-services:8.4.0'

Try to change your classpath dependency, instead of ' classpath 'com.google.gms:google-services:2.0.0-beta6 '', use classpath ' classpath 'com.google.gms:google-services:1.5.0' '. 尝试更改类路径依赖项,而不是' classpath'com.google.gms:google-services:2.0.0-beta6 '',使用classpath'classpath'com.google.gms:google-services:1.5.0' ' 。

Here is a related stack overflow ticket , you may check the solution offered by community:. 这是一个相关的堆栈溢出票 ,您可以检查社区提供的解决方案: It was stated that they already filed bug ticket and the said fix has been implemented in release 1.5.0 of the foot service plugin. 据说它们已经提交了错误票据,并且已经在脚本服务插件的1.5.0版本中实现了所述修复程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 com.google.android.gms.measurement.AppMeasurementContentProvider.onCreate(未知来源) - com.google.android.gms.measurement.AppMeasurementContentProvider.onCreate(Unknown Source) Android 8.1 无法获取提供商 com.google.android.gms.ads.MobileAds !!! APK崩溃 - Android 8.1 Unable to get provider com.google.android.gms.ads.MobileAds!!! apk crash 无法获取提供程序 com.google.android.gms.ads.MobileAdsInitProvider:java.lang.IllegalStateException: - Unable to get provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.IllegalStateException: java.lang.RuntimeException: Unable to get provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.IllegalStateException: - java.lang.RuntimeException: Unable to get provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.IllegalStateException: 已存在的程序类型:com.google.android.gms.internal.measurement.zzea - Program type already present: com.google.android.gms.internal.measurement.zzea 编译未能完成:程序类型已存在:com.google.android.gms.internal.measurement.zzabn - Compilation failed to complete:Program type already present: com.google.android.gms.internal.measurement.zzabn 由java.lang.ClassNotFoundException引起找不到类“ com.google.android.gms.measurement.AppMeasurementInstallReferrerReceiver - Caused by java.lang.ClassNotFoundException Didn't find class "com.google.android.gms.measurement.AppMeasurementInstallReferrerReceiver 无法删除与com.google.android.gms导入有关的错误 - unable to remove the error to do with com.google.android.gms import 某些设备出错 - 无法找到“com.google.android.gms.measurement.internal.zzz”类 - Error on some devices - couldn't find class 'com.google.android.gms.measurement.internal.zzz' “无法获取提供商com.google.firebase.provider.FirebaseInitProvider”错误路径Android - “Unable to get provider com.google.firebase.provider.FirebaseInitProvider” Error path Android
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM