Я пишу системный сервис Android под платформой / frameworks / base, он запускается SystemServer и работает как системный сервис, такой как Activity Manager и Content Manager. Служба может успешно обращаться к файлам, созданным пользователем system
, и изменять их, например, / data / data / com.android.providers.settings / database / settings.db .
Однако служба не может получить доступ к файлу данных, который принадлежит пользовательским приложениям. Например, / data / data / com.android.providers.contacts / database / contacts2.db принадлежит пользователю app_7
, при попытке изменить файл выдает исключение FileNotFoundException. Мне интересно, почему системный сервис не может изменять пользовательские данные или это возможно?
Большое спасибо.