【问题标题】:java.lang.SecurityException: Failed to find provider KickObject for user?java.lang.SecurityException:无法为用户找到提供者 KickObject?
【发布时间】:2017-12-14 21:02:25
【问题描述】:

我在使用 https://github.com/emilsjolander/sprinkles 保存数据时遇到崩溃的 android 应用程序。它唯一在三星 s8 中崩溃。

java.lang.SecurityException: 未能找到用户 0 的提供者 KickObject;预计会为此找到一个有效的 ContentProvider 权威 在 android.os.Parcel.readException(Parcel.java:1948) 在 android.os.Parcel.readException(Parcel.java:1894) 在 android.content.IContentService$Stub$Proxy.notifyChange(IContentService.java:801) 在 android.content.ContentResolver.notifyChange(ContentResolver.java:2046) 在 android.content.ContentResolver.notifyChange(ContentResolver.java:1997) 在 se.emilsjolander.sprinkles.Model$1.onTransactionCommitted(Model.java:138) 在 se.emilsjolander.sprinkles.Transaction.finish(Transaction.java:58) 在 se.emilsjolander.sprinkles.Model.save(Model.java:81)

为什么会这样?

【问题讨论】:

  • 试试this问题,可能有用

标签: java android


【解决方案1】:

内容更改通知
Android 8.0(API 级别 26)更改 ContentResolver.notifyChange() 的方式 和 registerContentObserver(Uri, boolean, ContentObserver) 行为适用于面向 Android 8.0 的应用。

这些 API 现在要求为 在所有 Uris 中的权威。使用相关定义一个有效的 ContentProvider 权限将有助于保护您的应用免受来自 恶意应用程序,并防止您泄露潜在的私人数据 到恶意应用程序。

https://developer.android.com/about/versions/oreo/android-8.0-changes.html#ccn

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-31
    • 2018-12-21
    • 2016-02-14
    相关资源
    最近更新 更多