Nic*_*ick 6 security android android-logcat android-activity
Jelly Bean已经删除了读取其他应用程序日志的能力(根据这个 I/O谈话),这是一个明智的安全改进.但是,我需要读取ActivityManager
-logs以使我的应用程序正常工作(以查看当前正在启动的应用程序).为此,我正在使用
private static final String clearLogcat = "logcat -c";
private static final String logcatCommand = "logcat ActivityManager:I *:S";
//...
Run Code Online (Sandbox Code Playgroud)
这不再有效,因为我只能在Jelly Bean中读取我自己的应用程序日志.是否有其他解决方案可以找出其他应用何时启动(除了root)?我明白为什么我们不应该能够阅读其他应用程序的日志(有点 - 应该是其他开发人员确保不会记录任何个人信息的责任,而不是通过阻止阅读日志来记录我的),但我不明白为什么ActivityManager
一个框架类被包含在该策略中......
谢谢,
尼克
有此问题发生的情况进行了广泛讨论这里.不幸的是,它是"预期的行为",因此不会被修复.唯一的当前解决方案(用于从JB及以上的应用程序中读取日志)是通过adb手动授予应用程序的权限:
adb shell pm grant <pkg> android.permission.READ_LOGS
获得此类许可:
很明显,这不是普通用户可以做的事情.Settings
Android团队承诺提供GUI解决方案(用户可以从其设备的菜单中授予此权限),但不幸的是,在实施"修复"之前,功能已被删除.
归档时间: |
|
查看次数: |
2943 次 |
最近记录: |