当用户使用我的android应用程序时,如何隐藏我的所有日志?

当用户使用我的android应用程序时,如何隐藏我的所有日志?,android,debugging,tags,logging,Android,Debugging,Tags,Logging,我的老板希望当用户使用我们的android应用程序时不会出现信息泄露。 我发现即使我设置了android:debuggable=false,它仍然可以从Logcat或命令行查看我的日志。 我搜索了android:可调试的人也有同样的问题。 我从互联网上得到了一些答案,例如: 有一个名为可调试的Avd属性。你可以用adb打印 炮弹得到道具。我不知道这是否是你问题的原因 如果您有预生产设备,您可以 仍然可以调试可调试设置为false的应用程序 我只是想,即使我删除了我所有的日志,也有很多关于我的应用

我的老板希望当用户使用我们的android应用程序时不会出现信息泄露。 我发现即使我设置了android:debuggable=false,它仍然可以从Logcat或命令行查看我的日志。 我搜索了android:可调试的人也有同样的问题。 我从互联网上得到了一些答案,例如:

有一个名为可调试的Avd属性。你可以用adb打印 炮弹得到道具。我不知道这是否是你问题的原因

如果您有预生产设备,您可以 仍然可以调试可调试设置为false的应用程序

我只是想,即使我删除了我所有的日志,也有很多关于我的应用程序的日志

我的问题是: 1.有没有一种方法可以让我的android:debuggable运行良好且 2.除了删除我的所有日志外,还有其他方法隐藏我的所有日志吗? 3.android:debugable的真正含义是什么? 4.安卓设备上的预生产设备是什么


谢谢你的帮助。我将尝试其他方法,并尽最大努力在此处共享我的信息。

我只是围绕日志创建包装函数,首先检查名为logginenabled的静态布尔值,如果该值设置为true,则调用Log,否则将忽略对Log的调用

然后,在编译我发布的应用程序版本之前,我只需将这个变量设置为false

void LogD(String msg){
   if (loggingEnabled)
       Log.d(MyTag, msg)
}

你的代码保证没有bug吗?如果不是,你为什么要阻止用户获取他们可能用来揭示你应用程序中错误的信息


当你可以编写无bug代码时再来,然后我们再谈。

我想我的老板不喜欢让用户知道我们的调试信息。他为什么不喜欢,我想这只是因为公司不喜欢。谢谢你提供的信息,我会告诉我的老板你的意见。Logcat消息对最终用户几乎没有价值。正确的做法是抑制应用程序分布式版本的日志消息。另外,在另一个应用程序没有抑制其日志消息的情况下尝试调试您自己的应用程序是一件非常痛苦的事情。谁说它们应该对用户有用?关键是,用户可以将它们复制并粘贴到bug报告中,供开发人员查看。开发人员自己永远无法重现用户运行其软件的所有可能条件。