Почему протоколирование StrictMode не выводится на устройство Marshmallow? - PullRequest
0 голосов
/ 16 октября 2018

Код, который вызывается из Application.onCreate():

private fun enableOnStrictMode() {
    StrictMode.setThreadPolicy(
            StrictMode
                    .ThreadPolicy
                    .Builder()
                    .detectAll()
                    .penaltyLog()
                    .build())
    StrictMode.setVmPolicy(
            StrictMode
                    .VmPolicy
                    .Builder()
                    .detectAll()
                    .penaltyLog()
                    .build())
}

. Он отлично работает на устройстве Android 9.0 Pie и выдает почти десяток нарушений политики, включая запросы без тегов в сети и чтение с диска.Но при запуске того же кода на устройстве Marshmallow (Samsung J5 Android 6.0) StrictMode не выводит журналы, даже если кажется разумным предположить, что нарушения политики все еще происходят.

Есть ли что-то в конфигурации StrictMode, чтоможет привести к отсутствию вывода на Android 6.0 Marshmallow?

1 Ответ

0 голосов
/ 16 октября 2018

Некоторые обнаружения доступны только начиная с более поздних версий API.

Например, уровень API 26 (Android O) добавлено detectUntaggedSockets и detectUnbufferedIo.

Однако detectDiskReads должно быть доступно , начиная с уровня API 9 .

...