尝试调用GoogleAuthUtil.getToken(args)时,我在使用最新Google Play服务的ICS设备上遇到此故障。通过删除Google帐户并将其添加到手机中解决了该问题。我无法重现错误。谷歌搜索堆栈跟踪没有提供任何见解。关于如何防止这个问题以及它意味着什么的任何想法都值得赞赏!
W/System.err( 3145): java.lang.SecurityException: Permission Denial: reading com.google.android.gsf.gservices.GservicesProvider uri content://com.google.android.gsf.gservices/prefix from pid=3145, uid=10055 requires com.google.android.providers.gsf.permission.READ_GSERVICES
W/System.err( 3145): at android.os.Parcel.readException(Parcel.java:1327)
W/System.err( 3145): at android.os.Parcel.readException(Parcel.java:1281)
W/System.err( 3145): at com.google.android.gms.internal.a$a$a.a(Unknown Source)
W/System.err( 3145): at com.google.android.gms.auth.GoogleAuthUtil.getToken(Unknown Source)
W/System.err( 3145): at com.google.android.gms.auth.GoogleAuthUtil.getToken(Unknown Source)
W/System.err( 3145): at com.xxxxx.Backend.obtainSheetKeyAndInitService(Backend.java:112)
W/System.err( 3145): at com.xxxxx.Backend.fetchColumns(Backend.java:103)
W/System.err( 3145): at com.xxxxx.ProgressActivity$DummySectionFragment$3.doInBackground(ProgressActivity.java:288)
W/System.err( 3145): at com.xxxxx.ProgressActivity$DummySectionFragment$3.doInBackground(ProgressActivity.java:1)
W/System.err( 3145): at android.os.AsyncTask$2.call(AsyncTask.java:264)
W/System.err( 3145): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
W/System.err( 3145): at java.util.concurrent.FutureTask.run(FutureTask.java:137)
W/System.err( 3145): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:208)
W/System.err( 3145): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
W/System.err( 3145): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
W/System.err( 3145): at java.lang.Thread.run(Thread.java:856)
修改
截至报告错误的时间:
将库更新到4.0.30并向Manifest添加了所请求的权限,这似乎有效。等待Google确认新版本库修复了此问题,因为添加新权限是一项非常不受欢迎的修复。
错误报告:http://code.google.com/p/android/issues/detail?id=61934
答案 0 :(得分:2)
你应该添加
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
到AndroidManifest.xml
文件。多数民众赞成。
答案 1 :(得分:2)
今天2013-11-14,由于此例外,我们收到的错误报告数量大幅下降。另外我看到谷歌播放服务版本4.0.33已经发布,我没有注意到发布的时间,但它看起来像昨天。
也许谷歌在4.0.33发布了一个修复程序?那太好了!
如果有人能够重现此错误,请告知我们4.0.33是否适合您。 (我们从来没有能够在开发设备上重现该错误,尽管我们已经安装了数十亿条跟踪。)
[更新]谷歌肯定推出了一个解决方案,我们在11月15日只有少数报告,在11月16日只有零