我正在为Galaxy Tab开发一个应用程序,现在我需要在/ data / data //文件夹中获取一些文件。
模拟器非常非常慢。所以我在设备上测试,需要从设备获取文件(我可以从模拟器中获取)。我怎么能这样做?
答案 0 :(得分:5)
在代码中添加调试功能,将受保护文件夹中的所需文件复制到手机的SD卡上。然后,您可以从PC访问它们。
public static void backupFile() throws IOException {
String inFileName = "/data/data/your.package.name/........"; //TODO Use folder/filename
File inFile = new File(inFileName);
FileInputStream fis = new FileInputStream(inFile);
String outFileName = Environment.getExternalStorageDirectory()+"/........"; //TODO Use output filename
OutputStream output = new FileOutputStream(outFileName);
byte[] buffer = new byte[1024];
int length;
while ((length = fis.read(buffer))>0)
output.write(buffer, 0, length);
output.flush();
output.close();
fis.close();
}
答案 1 :(得分:3)
设备上的/ data目录具有受限制的权限。要使用adb关闭文件,您需要植根设备。
答案 2 :(得分:1)
adb pull <path>
会将文件从设备下载到您当前的目录。
您还可以使用adb shell
使用常见的shell命令探索您的设备。 adb shell ls <path>
将允许您在不实际完全进入shell的情况下执行此操作。
编辑 - 这对于/ data目录或其他受限目录中的文件不起作用,除非您具有设备的root访问权限。