READ_LOGS是正常或危险的Android权限吗?

时间:2017-07-23 22:46:09

标签: android android-permissions

我收到有关使用android.permission.READ_LOGS Android权限的非常矛盾的信息。首先,Android文档网站未指定此权限的保护级别。它既不是正常的,也不是危险的。他们确实指定了以下内容:

  

“不供第三方应用程序使用,因为日志条目可以   包含用户的私人信息。“

有些网站表示不会将其用于同样的隐私问题。 但是我有一些问题:

  1. 当我在Android 7.1.1(Nexus 5X)和Android 4.4.2(旧的Samsung 8“平板电脑)上的应用程序中测试此权限时,他们都没有提示我该应用程序需要此权限。两者都说应用程序请求“没有特殊权限”。只有在权限被视为“正常”时才会发生这种情况,在这种情况下会自动授予权限。
  2. 其次,使用此权限,我只能查看logcat中与我的应用程序有关的日志,该日志不会记录任何个人信息。因此,我也没有违反任何隐私。我认为此权限可能允许我查看其他应用程序的日志,从而导致隐私问题。
  3. 那么,如果是这种情况,那么在应用程序的生产版本中使用此权限是否安全?如果他们可以通过按下按钮向我发送一个logcat,那么它可以帮助我调试用户面临的奇怪错误。

    编辑:好的,现在我很困惑。看来我不需要在清单中明确指定此权限。

1 个答案:

答案 0 :(得分:10)

  

READ_LOGS是正常或危险的Android权限吗?

都不是。从Android 7.1开始,它是signature|privileged|development。这基本上意味着作为固件构建的一部分签名或安装在特权分区上的应用程序可以保留权限,但没有别的可以。

  

Android文档网站未指定此权限的保护级别

正确。 READ_LOGS仍然在SDK中,出于向后兼容的原因,但普通应用程序自Android 4.1发布以来就无法保留five years ago

  

仅当权限被视为“正常”时才会发生这种情况,在这种情况下会自动授予权限。

没有

  

我认为此权限可能允许我查看其他应用的日志,从而导致隐私问题。

在Android 4.0及更早版本中确实如此。

  

那么在应用程序的生产版本中使用此权限是否安全?

嗯,请记住,应用程序访问LogCat内容从未有过记录和支持的方式。最有可能的是,您正在使用已发布的一个script-kiddie解决方案,例如运行logcat命令并捕获其输出。因此,现在或将来有些设备完全有可能不支持您访问LogCat的特定方法。所以,许可不是你的问题;缺少支持的LogCat访问API是你的问题。

就个人而言,我会使用日志库将内容记录到文件和LogCat中,使用该文件来满足您的应用需要。