Android调用外部ContentProvider失败
来源:互联网 发布:淘宝下载windows10 编辑:程序博客网 时间:2024/05/22 15:53
前言
无意中遇到调用外部的 ContentProvider
报 java.lang.SecurityException: Permission Denial: opening provider
错误, 记录一下解决方法。
本博客同步发布于 XueLong的博客
错误原因及解决方法
报错日志
Process: online.himakeit.testcontentprovider, PID: 6668java.lang.SecurityException: Permission Denial: opening provider online.himakeit.skylarkdemo.provider.DBSQLProvider from ProcessRecord{7dc9495 6668:online.himakeit.testcontentprovider/u0a93} (pid=6668, uid=10093) that is not exported from UID 10094 at android.os.Parcel.readException(Parcel.java:1942) at android.os.Parcel.readException(Parcel.java:1888) at android.app.IActivityManager$Stub$Proxy.getContentProvider(IActivityManager.java:4771) at android.app.ActivityThread.acquireProvider(ActivityThread.java:5882) at android.app.ContextImpl$ApplicationContentResolver.acquireProvider(ContextImpl.java:2479) at android.content.ContentResolver.acquireProvider(ContentResolver.java:1733) at android.content.ContentResolver.insert(ContentResolver.java:1533) at online.himakeit.testcontentprovider.MainActivity.onClick(MainActivity.java:53) at android.view.View.performClick(View.java:6256) at android.view.View$PerformClick.run(View.java:24697) at android.os.Handler.handleCallback(Handler.java:789) at android.os.Handler.dispatchMessage(Handler.java:98) at android.os.Looper.loop(Looper.java:164) at android.app.ActivityThread.main(ActivityThread.java:6541) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
产生 java.lang.SecurityException: Permission Denial: opening provider
错误的原因是,外部的 ContentProvider
不能被外部所调用。
解决方式就是在定义 ContentProvider
时在 <provider>
标签下添加 android:exported="true"
属性,并将其值设为 true
。
android:exported
主要作用是:是否支持其他应用调用当前组件Android
中的四大组件Activity
、Service
、ContentProvider
、BroadcastReceiver
都有android:exported
这个属性
写在最后
以上就是如何解决java.lang.SecurityException: Permission Denial: opening provider
问题。
如果你在参考过程中遇到问题,可以在我的联系方式中给我提问。
后面会继续介绍,Android的相关知识,欢迎继续关注我博客的更新。
转载请注明:XueLong的博客 » Android调用外部ContentProvider失败
阅读全文
0 0
- Android调用外部ContentProvider失败
- Android ContentProvider(创建及调用)
- Android调用系统的ContentProvider
- Android调用外部程序
- Android调用外部程序
- Android -- ContentProvider 内容提供者,创建和调用
- Android之调用ContentProvider中的方法
- Android 创建及调用自己的 ContentProvider。
- android调用外部地图应用
- MFC 外部DLL调用LoadBitmap失败的解决办法
- Android中与外部进程通信和调用外部程序
- Android中与外部进程通信和调用外部程序
- Android四大组件之ContentProvider 全面解析,ContentResolver源码解析如何调用其它APP的ContentProvider
- Android中使用ContentProvider进行跨进程方法调用
- Android -- Contentprovider---listview 实现调用通讯录和短信接收
- Android 使用【AIDL】调用外部服务
- Android 使用【AIDL】调用外部服务
- Android 使用【AIDL】调用外部服务
- 适配器模式
- 解决chrome获取图片宽度和高度为0问题
- vnc使用过程中的问题
- iOS Mac版 终端安装weex环境以及运行效果
- Java多线程--并发中集合的使用之LinkedBlockingDeque
- Android调用外部ContentProvider失败
- jquery easyui自动补全
- AngualrJs ui-router动态设置ng-class
- xtraBar.Bar相关
- 在决定使用ClickOnce发布你的软件前,应该知道的一些事情(一些常见问题解决方法)
- CM启动sentry服务提示错误的解决办法
- delphi怎样编译LINUX程序
- cocos2d-x 缓动曲线
- IT新篇章