问题描述
我有一个可从Android电子市场获得的应用。 有些用户在事情没有按预期工作时要求调试方法。 我一直在寻找添加一个显示输出的菜单项
Process mLogcatProc = null;
BufferedReader reader = null;
mLogcatProc = Runtime.getRuntime().exec(
new String[] {"logcat", "-d", "AndroidRuntime:E BDtN:V *:S" });
reader = new BufferedReader(new InputStreamReader (mLogcatProc.getInputStream()));
String line;
ArrayList listOfLogLines = new ArrayList();
while ((line = reader.readLine()) != null)
{
listOfLogLines.add(line);
}
基本上我正在提取我的应用程序编写的Log。*行的部分以及AndroidRuntime抛出的错误。
我有一个工作原型,它将向用户显示我在ListView中提取的日志部分的内容。
我必须将android.permission.READ_LOGS添加到AndroidManifest.xml文件中,以便我的应用程序具有对日志的读取权限,这当然是在安装之前将提示用户的信息。 问题是这是否被认为是不礼貌的,危险的或其他不寻常的。 它会阻止用户安装吗?
1楼
我不会安装这样做的应用程序。 如果你想要的只是你自己的日志,你的应用程序可以保留它自己写入的私有日志缓冲区以及系统日志。
您可能甚至不需要这样做: :
2楼
不要让您的生活变得困难并且不会给您的用户带来风险!
java.util.logging
在android上也可用(甚至转发到android.util.Log), java.util.logging.Handler
会做你想做的一切。