用
SQLiteDatabase db = getReadableDatabase();
String path = db.getPath();
我知道我的数据库文件位于路径/data/data/com.packagename/databases/app.db
。
我的用户应该可以访问此文件来备份数据,例如他更换手机。我试图通过Windows资源管理器找到它,但/data
中没有像这样调用的文件夹。
我还通过搜索搜索了数据库文件但没有成功。是不是有可能以这种方式得到它?
答案 0 :(得分:1)
最终用户USB Mass Storage或MTP文件访问机制无法访问应用程序专用内部存储下的文件。
除非您明确设置一般访问权限或正在测试调试APK或调试设备,否则无法使用adb& amp; ddms开发人员工具。
您的选项将包括将数据库存储在外部存储上,或者在您的应用程序中设置一个菜单,该菜单可以让用户选择在那里制作副本,而原始文件保留在您的应用程序的私人文件夹相对不受其他应用程序的干扰,如果它位于无主的外部存储上,则会发生。
答案 1 :(得分:0)
不,如果你没有root手机就不可能。如果你有一个有根电话,你可以通过执行
来获得它adb pull /data/data/com.packagename/databases/app.db