这些是我SAMSUNG TAB2中的记忆。
1 - Internal
2 - Sdcard
3- **Extrenal_sdcard**
(可移动内存)不要在sdcard
和Extrenal_sdcard
之间混淆。
Extrenal_sdcard
是micro sd card
我们可以从标签中删除。
我试图在 Extrenal_sdcard (可移动)中创建SQLite数据库。
但我没有成功。
我试图像Sdcard
中那样做。
Environment.getExternalStorageState() +filename
但是对于 Extrenal_sdcard (可移动),它无效。
我可能会做什么或不做。
请帮助我。
请勿提供与如何在SD卡中创建数据库相关的链接。
答案 0 :(得分:0)
我没有尝试过你在那里所描述的内容,但可能是它可以完成并可能有效 - 只需要几点注意事项。首先,外部存储(SD卡)不安全,因此任何其他应用程序或用户都可以读/写它。其次,正如你所说,当它卸下时,数据库就会消失。
由于这些缺点,您可能最好尝试使用内部存储数据库(默认),这个数据库很小并且可能包含指向外部数据(如图像或文件)的指针 - 它们本身可以在外部存储(当外部存储不可用时,具有占位符或其他处理方式)。
但是,如果您想尝试一下,最好覆盖getDatabasePath的Context方法,例如使用您自己的Application对象,然后将其传递给定期SQLiteOpenHelper。那么你就不必担心游标工厂了(这是可选的as the source confirms - 所以如果你想要去那条路线那么就传递null。)
答案 1 :(得分:0)
我得到了答案。
我们需要为外部Micro SD卡提供此路径。
"/mnt/name_of_your_card/your_dbfile"
例如: -
"/mnt/MyExternal_Card/My_database"
感谢此链接。