【发布时间】:2015-03-12 19:34:24
【问题描述】:
从昨天 3 月 11 日开始,我开始看到 SecurityException 崩溃的高峰。 (请参阅下面的堆栈跟踪。)其他人是否也看到此异常?搜索没有出现任何结果。
我的问题是升级到更新版本的 Play 服务能否解决问题。
这是堆栈:
java.lang.SecurityException: Permission Denial: getTasks() from pid=30319, uid=10157 requires android.permission.GET_TASKS
at android.os.Parcel.readException(Parcel.java:1474)
at android.os.Parcel.readException(Parcel.java:1428)
at android.app.ActivityManagerProxy.getTasks(ActivityManagerNative.java:2726)
at android.app.ActivityManager.getRunningTasks(ActivityManager.java:791)
at android.app.ActivityManager.getRunningTasks(ActivityManager.java:827)
at com.google.android.gms.ads.internal.util.h.a(SourceFile:703)
at com.google.android.gms.ads.internal.a.a(SourceFile:1634)
at com.google.android.gms.ads.internal.a.a(SourceFile:530)
at com.google.android.gms.ads.internal.client.t.onTransact(SourceFile:81)
at android.os.Binder.transact(Binder.java:361)
at com.google.android.gms.internal.bd$a$a.a()
at com.google.android.gms.internal.bh.a()
at com.google.android.gms.ads.doubleclick.PublisherAdView.loadAd()
我计划发布一个补丁,其中包含对 loadAd() 的调用的 try/catch。我还计划在不久的将来从 PlayServices 6.1.71 升级到 6.5.87,但我不愿意在补丁版本中引入这种风险,除非它是一个已知的修复程序。
我已在此处向 Google 报告该错误:https://groups.google.com/forum/#!category-topic/google-admob-ads-sdk/android/IuSQriNWKps
编辑/澄清: 我知道可以通过请求 GET_TASKS 权限来避免此 SecurityException,但我的应用不需要该权限,我也不明白为什么 AdMob 广告应该这样做。
我也知道 GET_TASKS 自 API 21 起已被弃用,但此应用针对 API 19。
【问题讨论】:
-
这里也一样,现在很多。在 Google Play 服务中捆绑 AdMob 并不是 Google 所拥有的最聪明的想法。每个月都会出现新闻错误,我们必须等待数周才能修复。
-
是的,我也看到了很多这样的崩溃。在这里找到了一份崩溃报告,groups.google.com/forum/#!category-topic/google-admob-ads-sdk/…。不确定您是否已报告此问题。希望他们尽快推出新版本。在此之前自己添加权限可能是有意义的。
-
我也看到了。我想我会按照@MRK 所说的那样添加权限,直到问题得到解决。
-
这里也一样。添加权限不是我的选择。我不希望这样的权限出现在我的应用程序中,因为我的应用程序甚至不需要它。它会让用户想知道......
标签: android admob google-play-services securityexception