我需要您可以在 adb 中使用的错误报告选项来转到我的应用程序中 sd 上的文件。我找到了安卓;使用 exec("bugreport")说明您不能在常规 shell 中运行 bugreport,您需要分别运行 dumpstate、dumpsys 和 logcat 以获得相同的结果。这很好,我明白这一点,但我无法让 dumpstate 或 dumpsys 写入文件。下面的方法可以很好地使用 logcat -d -f 编写 logcat,但不适用于其他两个。我尝试了 dumpstate -f 、 dumpstate -d -f 和 dumpstate > 让它工作,但仍然没有向文件写入任何内容。有什么我缺少的东西来完成这项工作吗?
这是我在 sd 上创建文件的地方
File folder = new File(Environment.getExternalStorageDirectory()+"/IssueReport/");
if (folder.isDirectory() == false) {
folder.mkdir();
}
log = new File(Environment.getExternalStorageDirectory()+"/IssueReport/log.txt");
这是我将文件写入该位置的地方
private void submit() {
try {
log.createNewFile();
String cmd = "dumpstate "+log.getAbsolutePath();
Runtime.getRuntime().exec(cmd);
} catch (IOException e) {
e.printStackTrace();
}