在android上找不到数据库文件

时间:2015-03-01 15:16:09

标签: android

我刚用AndroidStudio创建了一个新项目。我在app/src/main/assets/databases中创建了一个db文件。我的app/app.iml有此值:

<option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />

我在源代码中添加了这个:

if(getDatabasePath("map.db").exists()) {
    Log.v("MyApplication", "exists");
} else {
    Log.v("MyApplication", "not exists");
}

我的消息是“不存在”。

我有这个结构:

app/src/main/assets
├── databases
│   └── map.db
└── map.db (just to be sure)

在Android设备监视器的文件资源管理器中,我没有该文件。

有解决方案吗?

1 个答案:

答案 0 :(得分:2)

getDatabasePath将数据库查找到/data/data/packagename.yourapp/databases,而不是assets/文件夹。

编辑。您必须从资产文件夹中复制该文件 运行时的正确位置。您可以按照@CommonsWare

的建议使用SQLiteAssetsHelper