Как открыть систему SQLiteDatabase - PullRequest
1 голос
/ 03 ноября 2011

Я пытаюсь открыть базу данных SMS (для приложения цензора) с этим кодом:

SQLiteDatabase db = SQLiteDatabase.openDatabase("/data/data/com.android.providers.telephony/databases/mmssms.db", null, SQLiteDatabase.OPEN_READWRITE);

, но возникает исключение:

11-02 18:18: 50.889: E / AndroidRuntime (17226): вызвано: android.database.sqlite.SQLiteException: невозможно открыть файл базы данных

Я могу открыть его из оболочки ADB.Можно ли открыть эту БД для rw?А может это возможно только при наличии root-прав?

Ответы [ 2 ]

4 голосов
/ 03 ноября 2011

Вы не можете открыть чужую базу данных, если ваш код не работает с правами суперпользователя. Поставщики контента предлагаются многими приложениями, чтобы разрешить ограниченный доступ к их данным из вашего кода.

1 голос
/ 03 ноября 2011

Похоже, проблема с разрешениями. Я бы сказал, что БД доступна только для чтения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...