将sqlite数据库保存在android内存中

时间:2014-05-17 19:03:52

标签: android sqlite

所以我也用谷歌搜索了几个例子,但到目前为止我还没有找到任何可以让我知道是否可以将我的sqlite数据库保存在任何其他文件夹中的资源在设备的内部存储器中,例如在" / system"文件夹,我知道可以通过简单地执行以下操作将其保存在SD卡中

public class DatabaseHandler extends SQLiteOpenHelper {

    // All Static variables
    // Database Version
    private static final int DATABASE_VERSION = 1;

    // Database Name
    private static final String DATABASE_NAME = "contactsManager";

    // Contacts table name
    private static final String TABLE_CONTACTS = "contacts";

    // Contacts Table Columns names
    private static final String KEY_ID = "id";
    private static final String KEY_NAME = "name";
    private static final String KEY_PH_NO = "phone_number";

    public DatabaseHandler(Context context) {
        super(context, "sd card path here "+DATABASE_NAME, null, DATABASE_VERSION);
    }

    // Creating Tables
    @Override
    public void onCreate(SQLiteDatabase db) {
        String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_CONTACTS + "("
                + KEY_ID + " INTEGER PRIMARY KEY," + KEY_NAME + " TEXT,"
                + KEY_PH_NO + " TEXT" + ")";
        db.execSQL(CREATE_CONTACTS_TABLE);
    }

但是有什么方法可以将数据库保存在内部存储器中,就像在" / system"文件夹?

2 个答案:

答案 0 :(得分:2)

  

但是有什么方法可以将数据库保存在内部存储器中,就像在" / system"文件夹?

不,因为您没有对该目录的读取或写入权限。

答案 1 :(得分:0)

如果您拥有root权限,则可以像/ system / app一样访问该文件夹。这是一个类似的线程,您可能会发现它很有用。 :)

how to get access of android root directory (/system/app) programatically?

P.S:复制评论,因为我无法粘贴链接。