[英]Delete android sqlite database file
好吧,我正在手机上调试我的android应用程序。 Eclipse中有一个文件资源管理器,我可以在其中浏览和删除一些文件。 我的应用程序的数据库文件位于“ / data”下(默认情况下),但是使用Eclipse的File Explorer,我无权访问此文件夹。
所以我的问题是“为什么我没有访问权限”?
和
有没有办法访问该文件夹?
谢谢!
...
我删除数据库文件的方式是: context.deleteDatabase(DATABASE_NAME);
尝试这个:
private void writeToSD() throws IOException {
File f=new File("/data/data/yourPackageName/databases/DatabaseName");
FileInputStream fis=null;
FileOutputStream fos=null;
try{
fis=new FileInputStream(f);
fos=new FileOutputStream("/mnt/sdcard/dump.db");
while(true){
int i=fis.read();
if(i!=-1){
fos.write(i);
}
else{
break;
}
}
fos.flush();
}
catch(Exception e){
e.printStackTrace();
}
finally{
try{
fos.close();
fis.close();
}
catch(IOException ioe){
System.out.println(ioe);
}
}
}
从try catch块中调用此文件时检查异常,这将使您入门。 干杯!!
您需要root访问权限。 通常,必须先植根设备,然后才能进行植根。
了解有关生根的更多信息: http : //www.androidcentral.com/root
所以我的问题是“为什么我没有访问权限”?
您可能没有对该文件夹的读写权限
有没有办法访问该文件夹?
是。 您需要具有root用户访问权限,并使用读写权限重新安装该文件夹。
因为您的电话没有root,所以Eclipse / DDMS没有查看该文件夹的权限。 从安全角度来看,这是完全正确的,否则您可以编辑/删除/破坏任何应用程序的数据,而不仅仅是您自己的数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.