我在Android Studio中的测试应用很少,但有关LogCat的奇怪行为: 例如,我有这样的日志:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d(TAG, "onCreate(Bundle) called");
...
如果我尝试在模拟器中启动我的应用程序,我的所有日志都可以正常工作。 但是,如果我尝试在真实设备上启动我的应用程序,我可以从我的设备中看到很多系统日志(例如来自BatteryService),但是这里没有我自己的日志。
我已选择正确选择LogCat(我的设备)中的ADB集成和日志源。
答案 0 :(得分:4)
假设您已经激活了USB调试(其他功能则不起作用)。
打开logcat并按下启动按钮。当它进入你的设备它应该正常工作。现在,如果您使用谷歌驱动器中的APK,应用程序商店或其它任何其他地方都不能用作调试访问权限。
如果您已完成上述操作,可以尝试以下方法:
正如您所看到的,“日志级别”旁边有一个搜索框。下拉式菜单。搜索您的应用程序(以包名称的格式),它将显示。从那里,您可以选择日志级别(如果您愿意)。如果您没有选择日志级别并将其设置为详细,则所有日志都将显示,所有类型的日志级别。
如果这不起作用,我们可以明确地断定它与 NOT USB调试相关的事实。然后可能是因为build.gradle文件,Android Manifest或者代码中的配置。另外,根据我的经验,Proguard会阻止日志输出,但您的输出不是来自您的应用程序。因此,如果以上都不起作用,请检查:
最后,如果这些都不起作用,请下载ACRA并使用最简单的后端(10行)转换日志,并在崩溃时以.txt格式在您的网站上显示日志。这是一个艰难的解决方法,但至少你可以阅读任何崩溃。
答案 1 :(得分:2)
检查def clean(text):
result=""
last=""
for c in text:
if c!=last:
last = c
result += c
return result
中的dropdown
并将选项更改为Debug或D.
您已将日志放入LogCat
选项
答案 2 :(得分:0)
我发现了问题。 LogCat的奇怪行为是因为Android设备的API版本低于我的应用程序所需的API版本。
答案 3 :(得分:0)
在您的Andorid设备上尝试!
性能优化-高级日志输出