Android系统服务无法访问用户数据

时间:2011-04-02 14:05:11

标签: android android-service

我正在平台/框架/基础上编写Android系统服务,它由SystemServer启动,并作为活动管理器和内容管理器等系统服务运行。该服务可以成功访问和修改用户system创建的文件,例如 /data/data/com.android.providers.settings/databases/settings.db

但是,该服务无法访问用户应用程序拥有的数据文件。例如, /data/data/com.android.providers.contacts/databases/contacts2.db 归用户app_7所有,在尝试更改文件时,会抛出FileNotFoundException 。我想知道为什么系统服务无法修改用户数据,或者是否可以这样做?

非常感谢。

1 个答案:

答案 0 :(得分:1)

据推测,系统服务作为非超级用户帐户运行。从安全角度来看,这通常是一件好事。

如果您想访问联系人,可以通过ContactsContract内容提供商尝试与其他任何SDK应用程序一样。