[英]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: 还试过相关的堆栈问题:
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.