И о плохом для конечного пользователя.
После Hard Reset приложения восстанавливаются с примерно теми же настройками (если разработчик это не запретил явно).
Так вот пермишен геолокацию после такого восстановления наследуется, но игнорируется «Только когда приложение на переднем плане». То есть если вы дали приложению разрешение на локацию вида «only while using the app», то при восстановлении после сброса настройка будет на «Allow all the time».
Возможно поведение выше — это костыль, пытающийся хоть как-то исправить ошибку неправильного восстановления прав.
После Hard Reset приложения восстанавливаются с примерно теми же настройками (если разработчик это не запретил явно).
Так вот пермишен геолокацию после такого восстановления наследуется, но игнорируется «Только когда приложение на переднем плане». То есть если вы дали приложению разрешение на локацию вида «only while using the app», то при восстановлении после сброса настройка будет на «Allow all the time».
Возможно поведение выше — это костыль, пытающийся хоть как-то исправить ошибку неправильного восстановления прав.
Если вдруг кто не знает, для Android 5.0 и новее есть классная утилита scrcpy: https://github.com/Genymobile/scrcpy
Утилита кросс-платформенная. Её суть — иметь на экране компьютера доступ к вашим реальным устройствам. Ну точно как с эмуляторами. На скриншоте у меня запущен эмулятор 5.1 и мой реальный Pixel 2
Для Linux можете поикать готовые пакеты в репозиториях, даже если на ГитХабе про это не сказано. К примеру вот для openSUSE: https://software.opensuse.org/package/scrcpy?search_term=scrcpy Только используйте не экспериментальный (он не работает сейчас, по крайней мере для 15.1), а комьюнити.
Утилита кросс-платформенная. Её суть — иметь на экране компьютера доступ к вашим реальным устройствам. Ну точно как с эмуляторами. На скриншоте у меня запущен эмулятор 5.1 и мой реальный Pixel 2
Для Linux можете поикать готовые пакеты в репозиториях, даже если на ГитХабе про это не сказано. К примеру вот для openSUSE: https://software.opensuse.org/package/scrcpy?search_term=scrcpy Только используйте не экспериментальный (он не работает сейчас, по крайней мере для 15.1), а комьюнити.
GitHub
GitHub - Genymobile/scrcpy: Display and control your Android device
Display and control your Android device. Contribute to Genymobile/scrcpy development by creating an account on GitHub.
Forwarded from fudoshi
топовые девайсы на ios-автотестах
Дохнут не только Android устройства, но и iOS. Законы физики не щадят ничего и производитель значения не имеет. Ждём, когда наука шагнёт сильно вперёд и батареи перестанут деградировать и пухнуть.
https://myachinqa.blogspot.com/2019/08/no-changes-detected-jetbrains.html
Если вдруг у вас тоже среда разработки когда-нибудь скажет «Изменений нет»
Если вдруг у вас тоже среда разработки когда-нибудь скажет «Изменений нет»
Blogspot
Ответ No changes detected в продуктах JetBrains при попытке сделать коммит
Блог об Android и тестировании программного обеспечения. A blog about Android abd software testing.
Which API should I use? | SMS Verification APIs | Google Developers
https://developers.google.com/identity/sms-retriever/choose-an-api
https://developers.google.com/identity/sms-retriever/choose-an-api
Google for Developers
Which API should I use? | Credential Verification | Google for Developers
Если вы работаете с кодами в SMS, например для 2FA, то под Android следует реализовать вот такой подход. Плюсы:
— автоматически отдаёт вам код из SMS
— не требует пермишен на чтение всех SMS
— обработка на стороне системы. То есть этот код никуда не пересылается дополнительно
Минусы:
— от пользователя требуется нажимать Разрешить на каждое такое SMS
— нужно реализовывать. Рискуете столкнуться с «Да у нас и так всё работает, зачем оно нам сейчас. В бэклог»
— к формату SMS есть определённые требования. Например, код может быть только цифровым и иметь 4-10 цифр
Вообще там 2 апи. Одно на вашу реализацию и ожидает хеш, другое общее для кодов и универсально для многих.
— автоматически отдаёт вам код из SMS
— не требует пермишен на чтение всех SMS
— обработка на стороне системы. То есть этот код никуда не пересылается дополнительно
Минусы:
— от пользователя требуется нажимать Разрешить на каждое такое SMS
— нужно реализовывать. Рискуете столкнуться с «Да у нас и так всё работает, зачем оно нам сейчас. В бэклог»
— к формату SMS есть определённые требования. Например, код может быть только цифровым и иметь 4-10 цифр
Вообще там 2 апи. Одно на вашу реализацию и ожидает хеш, другое общее для кодов и универсально для многих.
Не смотря на то, что здесь https://android-developers.googleblog.com/2019/08/final-beta-update-official-android-q.html сказано «To get started developing, download the official API 29 SDK and tools into the stable release of Android Studio 3.4...», оно не работает. По крайней мере у меня вернулась старая проблема
Клавиатура со свайп вводом противоречит жесту Назад в Android 10
Мой баг дня (записки тестировщика)
Не смотря на то, что здесь https://android-developers.googleblog.com/2019/08/final-beta-update-official-android-q.html сказано «To get started developing, download the official API 29 SDK and tools into the stable release of Android Studio 3.4...», оно не…
Наконец кто-то сообщил об этом: https://issuetracker.google.com/issues/139139804 Мне прям некогда было.
[email protected] <[email protected]> #8 Aug 13, 2019 10:22AM
Assigned to [email protected].
We have passed this to the development team and will update this issue with more information as it becomes available.
—-
Воу-воу, Гугл, палехчи, не так быстро
Assigned to [email protected].
We have passed this to the development team and will update this issue with more information as it becomes available.
—-
Воу-воу, Гугл, палехчи, не так быстро
Мой баг дня (записки тестировщика)
Наконец кто-то сообщил об этом: https://issuetracker.google.com/issues/139139804 Мне прям некогда было.
Баг исправлен в релизной Android Studio 3.5
https://twitter.com/Android/status/1164540639645712384 Гугл решит не париться с названием сладости в этот раз. Теперь просто "Андроид 10".
Twitter
Android
Android Q will be called #Android10. As a global operating system, it’s important that the release names are clear and relatable for everyone in the world. Learn more: https://t.co/VKBcoSBGLt