MonthНоябрь 2016

Periodic JobScheduler в Android Nougat

Буквально в одну строку — начиная с Nougat нужно пересмотреть использование периодических задач с использованием JobScheduler и вот почему: минимальное время повторения составляет 15 минут!

То есть если у вас есть необходимость в фоновом вызове некоторого кода чаще (например, для обновления UI виджете), придется отказаться от вызова setPeriodic.

Таким образом в моем рабочем проекте уже 3 (ТРИ!) имплементации для фоновых повторяющихся задач — для старых версий Android, от Lollipop до Android M, и дальше.

Связано это с оптимизацией работы батареи, правда на спинах разработчиков.

 

Кратко: Nexus 7, Nougat и Google Apps

Решил наконец накатить Nougat на мой (по меркам Google — уже старенький) Nexus 7 2013. Только и единственно на Cyanogenmod 14.1, который как раз вышел (и как раз сегодня выкатил ночное обновление).

Установил. Нет Google сервисов с приложениями. Пытаюсь накатить GApps разных сборок — от Stock до нано-пиков и ничего. В ответ лишь получаю бесявую ошибку 70, которая означает, что в системном разделе не хватает места (stock весит 500 c лишним мегабайт, самая мелкая — pico — чуть больше сотки).

Решил копнуть в сторону recovery. Поставить TWRP через fastboot / adb у меня не получилось. Получилось однако через установку apk (впервые столкнулся с таким способом, раньше все в терминале прокатывало. Перезагрузился в Recovery, начал через adb sideload накатывать gapps, и вдруг получаю ошибку, в которой говорится, что я пытаюсь установить gapps версии 7.1, а у меня установлен Android 6.0.

Во дела…

Скачал gapps для Marshmallow, установил их, хочу перезагрузиться и вижу сообщение. Очередное. На этот раз меня уведомляют, что у меня не установлена система вообще никакая, и готов ли я к этому при перезагрузке.

Удивлен. Перезагрузил. Дальше белых букв, которые складываются в слово Google я ничего не увидел. Ладно, снова открываю TWRP и снова накатываю прошивку Nougat. Потом без проблем устанавливаются gapps и вуаля — немного танцев с бубном всегда выручают.

Теперь у меня есть Nexus 7 2013 с установленной нугой и рабочими (кажется) Google apps.