Android 11的内容提供者访问变化之处
方案一:转载于:https://blog.csdn.net/weixin_42623277/article/details/123866869
在安卓11中对应用能访问其他应用的包和数据进行了限制,对于部分系统应用软件是可见能访问的,而对于其他非系统应用是不可见不能访问的,如果需要访问其他应用的数据库则需要声明该应用可访问的软件要涵盖被访问应用的包名。
解决方案:
<queries> <package android : name="com.example.contentprovider1"/> </queries>
注:以上的package是需要访问的应用程序的contentprovider的authority。
方案二:转载于:https://www.codenong.com/cs110951082/
模拟器的SDK是API 30的,该版本(Android 11)的更新中,改变了当前应用于本机其他应用进行交互的方式。
只需要在需要访问其他程序contentprovider的程序中,清单文件的manifeset节点下添加:
<queries>
<package android:name="com.example.contentobserverdb" />
</queries>
注:以上的package是需要访问的应用程序的contentprovider的authority。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库