Pull to refresh

Comments 13

В статье не рассмотрены примеры работы с новым механизмом разрешений.

Рассмотрим, например, работу Google Keep — программу от разработчиков системы разрешений можно взять за образец работы с оной. Этот Google Keep, например, при старте проверяет, что Google Play Services имеет все запрошенные разрешения, и закрывается, если у того нет, например, разрешения работать с камерой/микрофоном.
Этот же Google Keep прекрасно работает, если разрешение отобрано не через стандартный механизм разрешений, а через CyanogenModов'овский Privacy Guard, про который Keep не знает.

TL; DR: Best practices от гугла подразумевают, что надо требовать включить все разрешения и не запускаться, пока все они не будут получены.
Пара скриншотов взята как раз из Keep. Он определенно точно не запрашивает вообще все нужные ему разрешения при старте, некоторые запрашиваются в процессе работы, в этом и суть нового api.
У меня запрашивает и всегда с момента установки M запрашивал ¯\(ツ)
http://imgur.com/WcWtMFh
по cancel — весь Keep закрывается, диалог возникает при открытии любой активити Keep'а.

Суть API я понимаю, пассаж был про то, что по моему опыту, дажи корифеи разработки под андроид не всегда утруждают себя следованием этой сути.
Гугл сами часто не следуют своим же рекомендациям, но в данной ситуации это выглядит странно. Обязательно еще раз проверю на Nexus 6 при возможности.
Best practices от гугла подразумевают, что надо требовать включить все разрешения и не запускаться, пока все они не будут получены.

Могли бы вы указать где это подразумевается в Best practices?
Похоже вы не умеете в сарказм.
В android 5.1 уже давно пользуюсь контролем разрешений (не сторонним), точно так же правила на приложения ставятся. Либо с шестой версии, как написано, что-то другое появилось, либо оно уже было в 5.1. Lenovo A2010
Чтобы не быть голословным, вот здесь написано, что runtime-разрешения добавили в 6 версии. Я слышал, что механизм был в андроиде чуть ли не с KitKat, но не был доступен официально. Скорее всего у вас все-таки некая надстройка от создателей прошивки.
Скорее всего у вас все-таки некая надстройка от создателей прошивки.

Подобным образом реализовано у Meizu, тоже android 5.1, но в случае запрета, разработчику никак не отловить этот запрет и приложение крашится. По крайней мере не находил решение для этого случая.
Подобным образом реализовано у Meizu

Если не ошибаюсь, я даже видел отдельные приложения (или модуль для Xposed), реализующие это.
Таки да, это особенность прошивки (Lenovo Vibe UI). Почему-то считал раньше, что на леново голый андроид стоит
Sign up to leave a comment.

Articles