qq_25006515 2015-01-28 02:29 采纳率: 0%
浏览 2182
已采纳

安卓ContentProvider和ContentReslover

如果一个应用程序里的ContentProvider声明是

 <provider android:name="com.book.story" android:authorities="com.book.story" android:exported="false"/>

其中有这个属性android:exported="false"
那么在另一个应用程序里可以用ContentReslover访问到数据库吗?

  • 写回答

3条回答 默认 最新

  • bdmh 优质创作者: 移动开发技术领域 2015-01-29 09:04
    关注

    摘一段网文

    android:exported
    这个属性用于指示该服务是否能够被其他应用程序组件调用或跟它交互。如果设置为true,则能够被调用或交互,否则不能。设置为false时,只有同一个应用程序的组件或带有相同用户ID的应用程序才能启动或绑定该服务。
    它的默认值依赖与该服务所包含的过滤器。没有过滤器则意味着该服务只能通过指定明确的类名来调用,这样就是说该服务只能在应用程序的内部使用(因为其他外部使用者不会知道该服务的类名),因此这种情况下,这个属性的默认值是false。另一方面,如果至少包含了一个过滤器,则意味着该服务可以给外部的其他应用提供服务,因此默认值是true。
    这个属性不是限制把服务暴露给其他应用程序的唯一方法。还可以使用权限来限制能够跟该服务交互的外部实体。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?