Badoo corporate blog
Development for Android
IT systems testing
Mobile applications testing
Comments 29
+2
Спасибо, познавательно.

Давно хотел спросить: когда на Play Market мне говорят, что «Данное приложение не поддерживается на вашем устройстве» — это окончательный диагноз? И кого в этом винить — строгую политику Гугла или все же разработчиков?

С iOS все давно понятно — их политика такова: немолодые девайсы должны быть на свалке истории. Что с блеском подтверждает мой iPod Touch 3gen. А вот как с Андроидом? Я допускаю, что осью 2.3.1 сейчас мало кто пользуется. Но что мешает при разработке поставить галочку, чтобы приложение было совместимо с старыми девайсами (если это не 3D игра, а простой файл-менеджер). Или проблема тут глубже, чем просто галочка?

Заранее спасибо за ответ
+6
Да, «Данное приложение не поддерживается на вашем устройстве» — это окончательный диагноз и Гугл тут не при чем. Разработчики приложения сами решают какие версии ОС Android будут поддерживать. К сожалению, поддерживать все версии — очень трудоемкая задача, а не просто «галочка», потому что, как я и писала, с каждой новой версией ОС Android претерпевает значительные изменения, поддерживать все старые API может быть очень сложной задачей, а также будет влиять на размер самого приложения и скорость добавления новых фич в него, в худшую сторону соответственно. В вопросах поддержки тех или иных версий разработчики руководствуются статистикой по количеству пользователей на той или иной версии ОС, например, на версии Android 2.3.1 сейчас менее 1,2% пользователей, а по данным нашей собственной статистики было и того меньше на тот момент, когда мы тоже решили перестать ее поддерживать.
+1
Справедливо будет добавить, что если ограничение не в версии ОС (или другом техническом факторе), то можно попробовать скачать и установить apk принудительно. Разработчики могут ставить «политические» ограничения (те самые галочки), например «только устройства определённого бренда» для фирменных приложений.
0
Соглашусь, единственное, лучше не ожидать стабильной работы от установленного принудительно приложения, так как оно не было протестировано на этой старой ОС. Потому что может возникнуть желание пустить тестировщиков на мыло, а они не при чем :)
0
можно попробовать скачать и установить apk принудительно

Это первое, что пришло в голову. Не помогло. «Ошибка анализа пакета».
Я потому такой настойчивый, что данное приложение на данном железе работало. А после выхода новой версии приложения — перестало. Видать, убрали совместимость…
0
Да, очень похоже, что в новой версии приложения перестали поддерживать какие-то старые API, а не просто так заблокировали возможность установки на старых версиях ОС.
0
Грустно конечно все это.
Являюсь обладателем автомобиля не особо старого, в котором установил пару-тройку лет назад вместо штатной мультимедиа-системы — систему под управлением Андроид. В которой, как казалось на тот момент, «можно почти все». Китайщина конечно, хоть и под местным брендом Prology.
Сделал так потому что не люблю висящие на панели/стекле присоски с телефонами, «сопли» из проводов зарядок и проч.
С магнитолой шел лицензионный Навител, и еще можно было установить те же Яндекс.карты или Яндекс.Навигатор
Примерно через год на магнитолу стало нельзя установить Яндекс.Навигатор свежий, и Яндекс.Карты. Андроид слишком «старый». Еще через год — перестал корректно запускаться Навител. Новая версия сама обновляется из маркета, после чего вываливается с ошибкой (новых версий уже вышло несколько, и все вываливаюся, разработчик багрепорты принимает и далее молчит)
Вроде все ничего, но со старыми версиями программ не работают новые версии карт. То есть еще чуть — и навигатор начнет мне показывать маршруты по несуществующим улицам.
Я конечно понимаю разработчиков, которым нужно делать новые релизы программ, и делать свистоп… делки удобнее под новые версии Андроидов, но менять каждый год магнитолу в машине или даже весь автомобиль — ну это уж черезчур. Да, когда я был помоложе — я и автомобили менял по паре раз в год. Теперь мне это не интересно, и хочется чтобы просто вещь работала, пока технический износ не наступил.
А то получается что-то вроде
Внимание! В доступе отказано. С сегодняшнего дня Вы не можете проживать в вашей квартире (взятой в ипотеку на 30 лет), потому что версия прошивки Вашего напольного покрытия устарела и больше не поддерживается. По статистике такой версией покрытия пользуется не более 1.2% пользователей квартир во всем мире. Вам необходимо сменить квартиру.


И да. В новой версии Яндекс.Навигатора появились действительно «необходимые» для навигатора функции, такие как: рекламный банер при запуске, постоянные предложения установить «яндекс.браузер» (боже, я вероятно заблудился и ищу маршрут, а мне яндекс браузер в магнитолу подсовывают!), ну и еще я могу оплатить штраф (видимо прямо с магнитолы)
+1
Иногда и самые новые устройства «не поддерживаются». Мне с моим планшетом от Samsung не дали скачать официальное приложение от Samsung для планшетов Samsung по причине того, что оно только для Samsung. Пришлось выдрать .apk, в который раз отметив про себя, что верить нельзя никому.
+3
Мне кажется, что у всех мобильных девелоперов и тестировщиков нежная любовь к Samsung ;)
0
Кроме этого, в консоли разработчика можно выключать конкретные устройства. Например, из-за особенностей китайских прошивок я на какое-то время запретил все Huawei и ZTE, что нашел. И еще обратите внимание, что одно и тоже устройство может по разному отображаться в консоли Google Play и Google Analytics.
+1
Разработка софта под андройд (я не андройд девелопер, но судя по статье), как разработка сайтов лет так 10 назад с зоопарком браузеров, которые рендерели страницы как хотели :)
+2
Почти :), только вот голова болит сильнее, устройств сильно больше чем браузеров)
0
Можете подробнее рассказать про стенд-автоматизатор, что вы используете для тестов и как он работает?
+3
О нем можно многое рассказать! Мой коллега написал интересный пост на эту тему:
https://habrahabr.ru/company/badoo/blog/309104/
Если хочется узнать что-то подробнее, то можно задать вопросы в этом посте или тут.
0
Интересная у вас статистика «Самые популярные» по Android: только Samsung и только флагманы. Вы точно не по Корее статистику считали? :)
+1

Мы даем статистику общемировую и во всем мире SAMSUNG лидирует.
Если ваше приложение создано для определенного региона то надо смотреть на статистику этого самого региона например тут
А вот и наша статистика по РФ за последнюю неделю, например:
image

0
Ох, ожидал почитать про автоматизацию тестирования, ну там чтобы скрипт (или механическая рука))) тыкала в кнопочки, и соответственно все бы заворачивалось на кукумбер-подобный API.
0
Поддержу, автоматизация тестирования на андроид сильно интересна. Что-нибудь вроде Chaos monkey или Gremlins.js (тут недавно про них статья была)?
0
Мы используем обезьянку ui monkey exerciser на Android. Чуть подробнее можно поглядеть тут и тут
0
Поскольку Samsung Galaxy S3 c Android 4.4 и HDPI small screen является популярным устройством с самым маленьким экраном и, при этом достаточно слабым (это довольно старое устройство 2014 года выпуска), то он отлично подходит для негативного тестирования.

Вы серьезно?
SGS3 — флагман 2012-го года.
Официальный Android 4.4 на него никогда не выходил. Можно прошить кастом, но телефон с кастомной прошивкой никак не попадает в ряд популярных девайсов.
Наконец, 4,8" экран с HD разрешением — это xhdpi normal screen.
+1
Прошу прощения за неточность, дело в том, что SGS3 это не одно устройство, а 3 брата, три похожих устройства, SGS3, SGS3 Neo+ и SGS3 mini. В нашей собственной статистике эти устройства до сих пор находятся рядом друг с другом в топе популярных. Потому я их условно обобщила в одно, SGS3 Neo+ как раз с 4.4 Android, а у mini small screen. Условно, потому что тестируем мы на всех них время от времени.
Большое спасибо за комментарий, поправлю информацию в статье!
+1
Всем привет
Совсем недавно занимался поиском информации по топселлерам Андройд в россии ( активно скачивающие приложения пользователи)
У меня список получился таким по 3-му кварталу 2016

1. Xiaomi Redmi Note 3 (5-8%)
2. Samsung Galaxy S5 (3-6%)
3. Samsung Galaxy A5 (~2%)
4. Samsung Galaxy s3 neo (~2%)
5. Samsung Galaxy A5(2016 ) (~1/6%)
6. Asus ZenFone 2 (ZE551ML) (2-5%)
7. LG Nexus 5 hammerhead (0,9-2%)
8. ASUS ZenFone 2 Laser (ZE500KL) (~1.4%)
9. Samsung Galaxy A3 (1,4%)
10. Samsung Galaxy S6 Edge (1.4%)
11. Meizu m3 note (~1.4%)
12 Galaxy A3(2016) (~1.2%)
13. Xiaomi Redmi 3 (1.2-2.2%)
14. Xiaomi Redmi Note 2
15. Samsung Galaxy S7 Edge
16. Samsung Galaxy S6
17. Sony Xperia Z2
18. Sony Xperia Z1
19. Meizu m2 note
20. Lenovo A536
21. Samsung Galaxy Grand Prime
22. Lenovo Z90a40
23. Lenovo A2010-a
0
Очень интересная статистика! Спасибо! А какими сайтами вы пользовались для ее сбора?
Да, Xiaomi выбирается в топ, еще бы, Redmi Note 3 имеет отличные характеристики! Я тоже остановилась на Xiaomi Redmi Note 3, когда искала популярное в России и интересное Android устройство пару месяцев назад. Кстати, забыла указать в ссылках отличный русскоязычный сайт со свежей и актуальной информацией из мира Android.
0
Я основывался на доступной информации anTuTu (топ 10) и на скачиваниях разрабатываемых в компании приложениях.

0

Проблема anTuTu в том что они там показывают девайсы на которых чаще мерили попугаев де факто :)

0
то есть это активные пользователи которые скачивают приложения
я сначала не очень доверял их рейтингу, но по факту, он на 80 процентов совпал с статистикой приложений у нас =)
0
Вы упомянули про Doze Mode. Что на счет подобных программ от производителей, таких как Stamina от Sony. Вы уделяете особое внимание таким нюансам? Существует какой-то список условий, при котором вы не можете ограничить пользователя в установке приложения, но не гарантируете стабильную работы и безопасность использование вашего приложения, например, на рутованом устройстве?
0

Таких условий нет. Все решается на connectivity layer. В общем случае всегда есть API, который сам расскажет в каком состоянии ваше приложение и что ему в данный момент можно.

0
С появлением doze, «настоящую» stamina убрали же? По-моему не дублировать функционал ОС вполне здравое требование.
Only logged in users are able to leave comments. , please.