android - 如何打开系统SQLiteDatabase

标签 android sqlite sms

我正在尝试使用以下代码打开 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): Caused by: android.database.sqlite.SQLiteException: unable to open database file

我可以从 ADB shell 打开它。 是否可以为 rw 打开此数据库?或者也许只有当我拥有 root 权限时才有可能?

最佳答案

除非您的代码以 super 用户访问权限运行,否则您无法打开其他人的数据库。 Content Providers由许多应用程序提供,以允许从您的代码中限制访问它们的数据。

关于android - 如何打开系统SQLiteDatabase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7996445/

相关文章:

android - 具有自定义 BaseAdapter 的可滚动 ListView 非常慢

android - 当用户按下后退按钮时隐藏抽屉导航

ios - 在 iOS 中使用 Twilio 发送短信

java - 在给定日期发送自动消息

java - 用jsoup解析表数据

android - Android 中 ID 的命名约定

java - 我如何创建一个动态且可重用的方法来使用 java 和 sqlite 创建表

java - 如何使用两个表在SQLite数据库中存储多个数据?

java - 在 Sqlite 中使用 where 子句更新查询

特定号码的 Android 短信监听器