android 6.0的Log.isLoggable问题(Marshmallow / api 23)

时间:2016-08-01 05:37:10

标签: android android-6.0-marshmallow

我正在使用android Log.isLoggable api来确定我的自定义日志标记是否已启用,是否应该记录。 (我在设备上使用setprop log.tag。设置属性)。
据Docs所说,并且由于我熟悉旧版本,如果属性中的日志级别等于或高于我在代码中检查的日志级别,它应该返回true。
这适用于Lollipop及以下(api 22)似乎Marshmallow中的某些内容发生了变化,因为我遇到了不一致和错误的行为,玩标签的值有时会导致从isLogabble()返回的错误值,例如具体情况我做了一个代码检查:

 boolean shouldLog = Log.isLoggable("mytag", Log.DEBUG);
 Log.d("debug", "shouldLog = " + shouldLog);
  • 我将log.tag.mytag值设置为某个任意字符串
  • 启动我的应用,看到isLoggable = false,没关系
  • 然后我将log.tag.mytag更改为VERBOSE
  • 启动我的应用程序,isLoggable仍然是假的,那不行!现在应该是真的

同样的情况在Lollipop不可重复,也没有遇到任何其他不当行为。
有什么建议,我在这里想念一下吗?

0 个答案:

没有答案