Все в порядке, но.
Этот текст мало кто будет читать и мы можем написать здесь все, что угодно, например.
Вы живете в неведении. Роботы уже вторглись в нашу жизнь и быстро захватывают мир, но мы встали на светлый путь и боремся за выживание человечества. А если серьезно, то.
В целях обеспечения безопасности сайта от кибератак нам необходимо убедиться, что вы человек. Если данная страница выводится вам часто, есть вероятность, что ваш компьютер заражен или вы используете для доступа IP адрес зараженных компьютеров.
Если это ваш частный компьютер и вы пытаетесь зайти на сайт, например, из дома — мы рекомендуем вам проверить ваш компьютер на наличие вирусов.
Если вы пытаетесь зайти на сайт, например, с работы или открытых сетей — вам необходимо обратиться с системному администратору и сообщить, что о возможном заражении компьютеров в вашей сети.
5 неожиданностей, с которыми сталкиваешься без сервисов Google уже в первую неделю

Android плотно ассоциируется с Google и соответствующими сервисами. Однако изначально система открытая и непривязанная ни к чьим приложениям. Именно поэтому существуют модели, продвигаемые без сервисов Google. Сразу вспоминаются Volla Phone, PinePhone и, например, NitroPhone — о них на Трешбоксе есть отдельный материал. Однако приведенные примеры — это единичные модели для гиков от мелких компаний или стартапов, которые не предлагают сопоставимые сервисы на замену.
Huawei в этом смысле держится особняком. Компания уже не первый год выпускает смартфоны и планшеты без Google Play, но взамен развивает собственную экосистему, окружает пользователя всем необходимым и привлекает разработчиков в собственный магазин приложений. Именно поэтому в статье будут разобраны HMS (Huawei Mobile Services), как наиболее продвинутая альтернатива Google в мире Android.

Контакты и СМС тоже синхронизируются через Google. О них придется думать отдельно
Настройка нового телефона начинается c ввода аккаунта. Именно в нём хранятся контакты, записи календаря, журнал вызовов, СМС и другая мелкая информация вроде списка сохранённых точек Wi-Fi. В случае отказа от Google, об их переносе стоит задуматься заранее. Те же контакты, например, можно экспортировать в файл или временно перенести на SIM.

В Huawei решили этот вопрос с помощью приложения Phone Clone. Оно доступно на Android и iOS — есть и в Google Play, и в App Store. При переносе информации с Android-устройства, Phone Clone скопирует не только базовую информацию, но и специфические настройки системы — будильники, обои, пароли и даже приложения с данными. Забегая вперёд, программы, которых нет в AppGallery, перенесены не будут, но об этом нюансе далее.

Всем привычным сервисам нужно срочно искать замену (по крайней мере, мне)
Первая настройка выполнена, мы оказались на главном экране и сразу не досчитываемся ярлыков. Облачное хранилище Drive, заметки Keep, почта Gmail, браузер Chrome, синхронизация фотографий «Фото», карты, документы и видеосервис YouTube — эти и другие приложения поискового гиганта недоступны вне экосистемы. К ним можно получить доступ через браузер, но это слишком большой компромисс: интерфейс не такой удобный, уведомления работают не так классно, да и степень интеграции в систему не та.
Благо у любого сервиса Google есть мощные альтернативы, в том числе бесплатные. Что-то предлагает сама Huawei, полный комплект приложений есть у российских поисковых гигантов, существуют и независимые разработчики. Подходить к отбору нужно со всей ответственностью. Если есть задача подобрать новые заметки, рекомендую установить и опробовать сразу парочку приложений, несколько дней попользоваться ими параллельно, а после делать осознанный выбор. Ведь после придётся вручную переносить все свои данные, на это уйдёт немало времени — это и есть цена ошибки.

Лично я столкнулся с постоянным дискомфортом по причине разрушения привычных кейсов использования. Современные сервисы не ограничиваются смартфоном, так или иначе в них приходится заходить и с компьютера. Достаточно сложно переучить себя открывать не Google Drive, а условный Яндекс.Диск, или не Google Keep, а Evernote. Да и при схожем функционале два разных сервиса будут отличаться нюансами, которые и могут стать камнем преткновения.
Сторонние магазины приложений уже развиты, но ещё далеки от Google Play
В Google Play есть все приложения за исключением нескольких заблокированных — это главная площадка распространения Android-софта. Сторонние магазины, включая AppGallery, находятся в роли вечных догоняющих: одни разработчики неохотно осваивают новую площадку, другие вовсе игнорируют её по разным причинам. К счастью, большая часть российских разработчиков публикуются в магазине Huawei на равных — ярлычок «Explore it on AppGallery» занял своё место рядом с Google Play и App Store.

В целом, заметно динамичное развитие: AppGallery полгода-год назад и сегодня — это две разные по наполнению площадки. Компания вкладывается в развитие, благодаря чему пробелов становится всё меньше. Например, ещё полгода назад в AppGallery не было онлайн-кинотеатра Premier и каршеринга BelkaCar — сегодня они прекрасно работают. Особую ставку в Huawei делают на геймеров: во-первых, привлекают популярные студии, а во-вторых, дают бонусы для внутриигровых покупок.

Однако мелкие неудобства всё же остаются. Мной несколько раз была замечена несвоевременная публикация обновлений в AppGallery. Например, во время тестирования P50 Pro «Навигатор» от Яндекса пожаловался на устаревшую версию. По нажатию кнопки открылся недоступный на смартфоне Google Play через браузер, а AppGallery вовсе на тот момент не знал о существовании обновления. Также отмечу давнюю проблему Telegram. Мессенджер опубликован и обновляется в AppGallery, но клиент не отвязан от карт Google. Как следствие, функционал, связанный с трансляцией геолокации, не работает.
Установить APK порой мало, многие приложения привязаны к Google функционально
Недостающие приложения всегда можно установить из APK, скаченного на стороннем ресурсе. Но здесь нужно быть особенно внимательным. Многие форумы и чаты в мессенджерах заведомо распространяют вредоносные файлы. Особенно это касается пиратских версий и модификаций, обещающих необоснованные бонусы и преимущества. Качайте софт с проверенных ресурсов!

Однако многие сторонние приложения используют инфраструктуру и сервисные прослойки GMS (Google Mobile Services). Например, их геопозиционирование и карты, платежи через Google Pay или другой функционал. Такие программы не станут работать на Huawei с HMS в любом случае.
Ищем замену Google Pay
Пожалуй, о чём точно не стоит переживать, так это об отсутствии Google Pay. В AppGallery есть платёжный сервис Mir Pay, дающий возможность привязать карту «Мир» и расплачиваться ей бесконтактно. Оплата проходит так же быстро, как и через Google Pay, только Mir Pay ещё и сумму покупки на экран выводит — удобно. Клиенты «Сбера» и «Тинькофф» обнаружат сервисы бесконтактной оплаты непосредственно в своих банковских приложениях.
Дисконтные карты можно хранить в сервисе «Кошелек», оно создано для этих целей. Часть карт показывают свой баланс и возможность списания бонусов. Некоторые магазины даже дают регистрироваться в программе лояльности непосредственно в приложении.
Есть ли у альтернатив Google перспективы?
Вместо вывода хочется поделиться собственным опытом. В марте 2021 года я полностью переключился на Huawei без Google-сервисов. На тот момент AppGallery был пустоват, мне откровенно не хватало приложений, установить их отдельно из APK я не мог из-за привязки к GMS. Именно поэтому я был вынужден вернуться к Google спустя полгода. Глядя на ту же экосистему сегодня, я вижу огромный качественный скачок. К тому же обозначились явные перспективы дальнейшего развития AppGallery на российском рынке. Мне кажется, экосистема Huawei достигла той зрелости, при которой на неё можно переходить обычным пользователям, не желающим разбираться в нюансах Android.
Что будет, если на всех смартфонах в России отключат Google Mobile Services
В последнее время нас преследует череда различных блокировок и ограничений, а их количество лишь увеличивается. И если многие компании ограничили лишь доступ Российским пользователям к своему контенту или возможность оплаты различными сервисами, то всеми известная компания Google пошла дальше всех. Так, к примеру, она последовала примеру других сервисов и ограничила возможность оплаты подписок для определенного круга пользователей. Это действительно усложнило пользователям жизнь и многие уже остались без доступа к аудио или видеоконтенту. Далее была отключена монетизация на видеохостинге YouTube, хотя в этом плане многие обрели возможность просмотра YouTube в «премиум» аккаунте. Что может выкинуть в следующий раз Google пока непонятно, но о полной блокировке доступа к своим сервисам пока информации нет. Предлагаю рассмотреть вопрос блокировки Google Mobile Services.
Содержание
Что такое Google Mobile Services
Google Mobile Services — это ядро сервисных системных служб обеспечивающих работоспособность всей системы смартфона с установленной операционной системой Android. И если сказать другими словами, то без сервисов Google Mobile Services большинство приложений и служб смартфона просто не будут запускаться и работать. Вы даже не представляете, какое количество процессов работают на основе сервисов Google Mobile Services и, возможно, даже о них не слышали. Так основными и наиболее важными можно выделить процессы создания резервного копирования и автоматического обновления установленных приложений.
Кроме того, здесь присутствуют сервисы позволяющие работать с сохраненным списком контактов и различных настроек, получать и отсылать сервисные PUSH уведомления системы, отслеживания местоположения устройств и подключать беспроводные устройства. Действительно Google Mobile Services отвечает за важнейшие аспекты в операционной системе и потеряв ее мы, в какой-то мере получим кирпич из смартфона.
Кроме служб, Google Mobile Services содержит в себе огромное количество инструментов для разработки Android-приложений, потеря или блокировка которых пагубно отразится не только на работоспособности всего оборудования, но и на разработчиках этого программного обеспечения.
Во всех ли смартфонах присутствует Google Mobile Services
На самом деле операционная система Android имеет открытый бесплатный код и им могут пользоваться все разработчики мобильных приложений. Но пакет Google Mobile Services является платным приложением к операционке, поэтому многие производители сделали упреждающий удар и создали свои собственные пакеты системных служб. Не стоит скрывать, что большинство мобильной техники в России все же используют Google Mobile Services, но появился аналог от Huawei (Huawei Mobile Services), который правда не получил широкое распространение и доступен на узком сегменте мобильной техники. Оно и понятно, что довольно сложно перестроится на другие компоненты Mobile Services, поэтому широкого распространения за пределами Китая Huawei Mobile Services не получил.
Оболочка Fire OS от Amazon созданная на основе мобильной операционной системы Android для собственных смартфонов и электронных книг также не содержит GMS, поэтому привычный Google Play Market вы на ней не видите, установлен там свой собственный аналог Amazon AppStore предоставляющий приложения и различный контент.
Кроме того, операционными системами, освобожденными от GMS является CalyxOS и LineageOS, разработаны они на базе Android и содержат в себе в основном бесплатное программное обеспечение. Широкого распространения они не получили в силу отсутствия аналога магазина мобильных приложений. Хотя некоторых энтузиастов это даже привлекает, ведь можно полностью стать свободным от всевидящего ока Google и ее влияния по постоянному сбору данных о пользователях.
Распространяемая операционная система Android прекрасно работает и без установленной Google Mobile Services, что доказано миллионами смартфонов, используемых в Китае. Так как в Китае Google вообще запрещен с 2010 года, после неуспешной попытки захвата и регулирования части мобильного рынка.
Даже если ваше мобильное устройство поставляется без Google Mobile Services, это всегда можно исправить, ведь его можно установить самостоятельно и при этом получить доступ к Google Play Store. Но опять же не все устройства работают с этим сервисом и многое зависит от исходного программного обеспечения производителя.
Что будет, если все же отключат Google Mobile Services
Пока что точной информации об отключении от представителей компании Google нет, но сам факт отключения может произойти. И это подтверждает горький опыт Huawei лишившаяся доступа к системным службам и приложениям в новых устройствах. Если все же Российским пользователям отключат GMS, то мы, конечно, сможем дальше пользоваться смартфонами и другими мобильными устройствами, но потеряем ряд полезных функций. Так, к примеру, не получится получить новое обновление, распространяемое по воздуху, пропадут различные системные уведомления, сохранить резервную копию аккаунта с последующим восстановлением, синхронизировать сохраненные настройки и контакты. Кроме того, мы потеряем возможность использования Play Market с его огромным количеством приложений и подписок на различные сервисы.
В целом, отключив сервисы Google Mobile Services, пострадают не только рядовые пользователи, но и разработчики и производители мобильной техники. Ведь при введении ограничения на использование различных сервисов пропадет желание покупать и использовать такую технику.
Особенности тестирования Android без Google-сервисов
Привет! Меня зовут Мария Лещинская, я QA-специалист в Surf. Наша компания разрабатывает мобильные приложения с 2011 года. В этом материале поговорим о тестировании устройств Android, на которых нет поддержки Google Services.
Huawei без Google-сервисов начали массово выпускаться в 2019 году. Мы в Surf, разумеется, задумались о будущем: как сильно пострадают наши процессы и что нужно незамедлительно осваивать.
Я поделюсь впечатлениями от работы с Android без Google-сервисов и расскажу, какие возможности имеют такие мобильные устройства при тестировании.

В начале статьи — общая информация про AppGallery и AppGallery Connect. Если вы всё это уже знаете, переходите сразу к сути — к особенностям тестирования Android-платформы c поддержкой Huawei без Google-сервисов.
Что такое AppGallery, AppGallery Connect и почему Huawei — без поддержки Google
Приложения под iOS- и Android-платформы можно встретить в официальных магазинах AppStore и Google Play. Туда мы идём в первую очередь, когда хотим установить новое мобильное приложение на телефон.
С 2018 года во всем мире (а в Китае — ещё раньше) появился другой магазин мобильных приложений — AppGallery, а с ним и AppGallery Connect.
AppGallery — это менеджер пакетов и платформа распространения приложений, разработанная Huawei для операционной системы Android. AppGallery Connect — универсальная платформа для поддержки всего жизненного цикла приложения: разработки, распространения, управления, тестирования и анализа.
За AppGallery последовал и выпуск устройств на базе Huawei: с 2019 года для них в принципе отсутствует возможность работать с Google-сервисами, поэтому работа с Android стала сложнее. Нужно было оперативно включиться в работу и придумать, как изменить процессы тестирования платформы.
Казалось бы, зачем менять процессы и подстраиваться под ещё один магазин? Как много багов может добавиться к уже существующим? Стоит ли тратить время и деньги? У нас есть два аргумента.
Во-первых, при разработке приложения автор ориентируется не только на качество ПО, но и на качество продукта. Если продукт доступен бОльшей части потенциальных клиентов, это говорит об ответственном подходе к приложению. Нам кажется, что работать с AppGallery можно и нужно, ведь пользователь — важное звено в разработке ПО.
Во-вторых, у AppGallery солидное количество пользователей. Магазин появился в 2018 году, к октябрю 2020 года приложение доступно в 170 странах мира, число уникальных пользователей – 700 миллионов человек. Как говорит статистика, ежемесячная аудитория составляет 490 миллионов активных пользователей.
При этом для Huawei написали всего 96 000 приложений. Для сравнения — в Play Store 2.9 миллиона приложений: это значит что более двух с половиной миллионов приложений отсутствуют в AppGallery.
В AppGallery нет, например, Instagram, Facebook и WhatsАpp. Их, конечно, можно скачать и установить вручную без ограничений: найти по отдельности в браузере или через какой-нибудь агрегатор. Также в сети появились сервисы, с помощью которых можно скачать самые популярные приложения. Но не каждый пользователь захочет выполнять дополнительные манипуляции.
Три вида Android-устройств
Как только к Android с Google-сервисами прибавились Huawei с сервисами HMS, некоторые устройства стали автоматически поддерживать оба вида сервисов (например, как Huawei до 2020 года выпуска).
Ниже представлено сравнение трёх типов устройств Android: с Google-cервисами, без них и с поддержкой обоих.
Android без Google-сервисов
Android только с Google-сервисами
Android с поддержкой Google-сервисов и App Gallery
Установочный файл может быть один — на все виды устройств Android, или их может быть два: отдельно с сервисами Huawei и отдельно с сервисами Google.
Мы в Surf обычно делаем один .apk/.aab для обоих видов устройств Android. Логика работы приложений на разных устройствах определена внутри сборки. Но также могут быть два установочных файла одного приложения: один идёт в Google play, другой — в AppGallery.
На мой взгляд, удобнее использовать именно один установочный файл для тестирования и релиза в различные магазины.
Проще и быстрее сделать одну сборку, чем две, но как только подключается CI, разница минимизируется. Использование двух сборок теоретически может уменьшить вес приложения — особенно если в нем используются разные фреймворки для реализации фич на Android с Google Services и без.
AppGallery Connect и сервисы, не использующие Google.
Сервисы, использующие google, — в том числе Firebase.
AppGallery Connect, сервисы, не использующие Google, и сервисы, использующие Google — в том числе Firebase.
Какие инструменты выбрать, стоит продумать до начала разработки: проанализировать особенности проекта и устройств, потенциальную аудиторию, сервисы, необходимые для реализации фич.
При работе с Huawei без Google-сервисов всегда нужно помнить про отсутствие возможности работы с Google-сервисами. Как бы тавтологично это не звучало, бывают моменты, когда уже готовые решения, которые можно использовать в разработке определённого проекта, опираются на сервисы Google. Какие-то сразу об этом сообщают — тогда проблем нет. Какие-то используют их глубоко в фреймворке, и тогда приходится немного «покопаться» в реализации. Если такая библиотека случайно попадёт в приложение, используемое на Huawei без поддержки Google, могут возникнуть проблемы. Именно поэтому важно тестировать отдельно и на таких устройствах тоже.
Баги по общей логике приложения, конечно, будут распространяться на оба вида устройств. Существенные отличия могут появиться при работе сервисов типа Google Pay, push-уведомлений, deep links и dynamic links и так далее.
Устройства разные, особенности взаимодействия и тестирования — тем более. Казалось бы, все понятно: нужно знать, как с ними работать — и никаких проблем. Но ещё очень важно понимать, из чего составить этот рабочий процесс: как выбрать инструменты, чему обучить команду и к каким проблемам подойти с правильной стороны.
Возможности тестирования через AppGallery Connect
Проблемы начинаются при использовании разных библиотек на двух видах устройств Android. Мы в Surf пользуемся различными сервисами для работы с push-уведомлениями, аналитикой, dynamic или deep links, performance-мониторингом. Поэтому когда стали брать на вооружение работу с Huawei без Google-сервисов, волновались, насколько сильно изменится работа QA: получится ли тестировать push-уведомления и dynamic links в привычном ритме или придётся адаптироваться к абсолютно новому процессу? К счастью, сам процесс меняется несильно. Но есть вещи, о которых необходимо знать, прежде чем браться за работу с устройствами без поддержки Google.
Huawei без Google-сервисов не имеет доступа к инструментам, которые работают с Google, — например, Firebase. Сервисы для тестирования и работы мобильного приложения нужно настраивать через AppGallery (к счастью, AppGallery Connect имеет базовые возможности из коробки) или другие доступные инструменты. А возможно, придумывать и свои решения.
Ниже приведены базовые инструменты AppGallery Connect, позволяющие без особого труда наладить основные процессы по работе с пуш-уведомлениями, аналитикой, удалённой настройкой и прочими инструментами для удобства тестирования и поддержки.
Аналитика
При тестировании аналитики полезно просматривать события в реальном времени — это помогает обеспечить качество реализации отправки событий в мобильном приложении. Проверять аналитику в AppGallery Connect в реальном времени можно, например, с помощью «Отладки приложения» (аналогично DebugView в Firebase).
«Отладка приложения» (App Debugging) позволяет смотреть события, приходящие от МП, и их параметры в реальном времени. Чтобы подключить устройство к Отладке приложения в AppGallery Connect, нужно подключить устройство к компьютеру и в терминале выполнить команду:
Чтобы отключить устройство от отладки, выполнить команду:
Чтобы быстрее найти <package_name>, можно воспользоваться командой adb:
Общий сбор аналитики в AppGallery Connect тоже доступен. Он называется «Просмотр в реальном времени» (аналогично Events в Firebase)
«Просмотр в реальном времени» (Real-Time Overview) собирает все события с МП в одном месте. Можно строить графики по выбранным критериям, активировать фильтры и в целом проводить анализ по мобильному приложению.
Удалённая настройка и параметры
«Удалённая настройка» (Remote Configuration) позволяет управлять различными параметрами для приложения, и при необходимости обращаться к AppGallery Connect прямо из МП для работы с ними (аналогично RemoteConfig в Firebase).
Push-уведомления
При работе с push-уведомлениями Surf использует разные инструменты: Flocktory, Mindbox, Firebase и другие. Не все инструменты пока ещё могут работать с Android без поддержки Google, но базовая возможность подключить push-уведомления для Huawei есть: это их фирменная реализация через AppGallery Connect. Настройка пyшей происходит в PushKit.
Важно отметить, что пушер бэкэнда обязательно должен уметь взаимодействовать с AppGallery PushKit. Иначе push-уведомления придётся отправлять вручную из AppGallery Connect.
App Linking
App Linking — сервис для работы с dynamic links. На основании deep links App Linking предоставляет пользователям доступ к нужному контенту непосредственно на веб-страницах и в мобильных приложениях: это повышает конверсию пользователей (аналогично Dynamic Links в Firebase).
Dynamic Links vs Deep Links
Dynamic links — это интеллектуальные URL-адреса, которые позволяют отправлять существующих и потенциальных пользователей в любое место в приложении iOS или Android. Dynamic links легко переводят пользователей с любого URL на контент в приложении. Если пользователь не установил приложение на устройство, он увидит контент, когда установит его.
Deep Links — это тип локальных ссылок: они направляют пользователей непосредственно в приложение — и только. Соответственно, если приложение не установлено, работа с deep links невозможна.
Простыми словами, dynamic links — ссылки, которые могут редиректить пользователя откуда угодно прямо в приложение или магазин, если оно не установлено (а после установки — и в приложение). Deep links — ссылки, которые привязаны к конкретному экрану внутри приложения и работают локально внутри МП.
На данный момент при работе с AppGallery Connect нет возможности создавать кастомные dynamic links: например, которые были бы одинаковыми и для обоих видов устройств Android (с поддержкой Google и без). Но c deep links всё в порядке.
Crash
Чтобы ловить незаметные с первого взгляда баги, стоит мониторить crash-аналитику даже на debug-версиях. Это необходимо, когда приложение потенциально разрабатывается на большую аудиторию и релиз близко — не говоря уже о ситуации, когда МП уже доступно магазине и им пользуется много людей.
Нам было важно, чтобы такой инструмент был доступен и для Huawei без Google-сервисов. Crash — плагин, позволяющий отслеживать и анализировать баги, краши и ошибки в приложении (аналогично Crashlytics в Firebase).
Чтобы обеспечить качество клиент-серверного взаимодействия, удобно использовать инструмент, который бы помогал анализировать ответы от сервера и отрисовку экранов и элементов в приложении. В AppGallery Connect такой инструмент — APM. Это сервис, который помогает искать и устранять проблемы производительности приложения и улучшать таким образом пользовательский интерфейс (аналогично Performance в Firebase).
Конечно, это не все необходимые сервисы, которые можно встретить в мобильных приложениях, но они — базовые. Всегда приятно понимать, что не приходишь на «пустое поле»: есть с чем работать и можно сделать приложение лучше и доступнее для всех пользователей.
Особенности тестирования Android-платформы c поддержкой Huawei без Google-сервисов
В первое время при работе с устройствами Huawei без Google-сервисов мы тратили много времени на анализ и выстраивание процессов. Сейчас всё наладилось.
В целом можно выделить следующие проблемы и решения.
Шаринг сборок
На проектах мы часто шарим сборки через Firebase, или напрямую скачиваем .apk из Jenkins, или собираем вручную из Android Studio. Проблем со скачиванием или ручной установкой .apk для Huawei без Google-сервисов нет. Проблем с App Tester — приложением Firebase для шаринга сборок — тоже нет. Использовать непосредственно приложение не получится, но пройти по invite из почты в браузер для скачивания сборки удастся.
Лайфхак: сохраняйте страницу из браузера на рабочий стол телефона и не знайте горя.
Устройства
Конечно, для тестирования необходимы устройства без Google-сервисов.
Если на проекте планируется адаптация под AppGallery, можно отправить заявку Huawei. Они пришлют девайсы для тестирования. Правда, финальное слово всегда за самим Huawei: отправка запроса ничего не гарантирует. Но опция приятная.
Неплохой вариант — использовать ферму устройств. Конечно, это не восполнит полную работу с реальным устройством, но может помочь в отдельных случаях.
Можно установить HMS Toolkit в Android Studio и работать с Huawei без Google-сервисов прямо из IDE.
На что обратить внимание
Стоит отметить важные моменты, которые впоследствии помогут избежать проблем или продумать пути их решения заранее.
1. Push-уведомления. На Huawei без Google-сервисов не будут работать push-уведомления, реализованные на backend через Firebase (а такое встречается сейчас часто). Такие устройства имеют свой hms-токен, и для работы с ними нужна специальная реализация.
2. Dynamic links. Инструмент AppGallery Connect не поддерживает кастомный формат dynamic links, поэтому нельзя настроить унифицированную ссылку на оба вида конфигураций устройств Android. Решение: использовать deep links или другой инструмент по работе с ссылками, работающий без Google Services.
3. Библиотеки с Google-сервисами. Различия в реализации и потенциальное скопление багов в логике будут, если в проекте используются библиотеки с Google-сервисами. Для Huawei их придётся заменить на другие фреймворки или if-ответвления. Тогда понадобится более тщательно тестировать оба вида устройств.
Google Pay. На Android без Google-сервисов можно столкнуться с окном «Оплата недоступна, так как для нее нужен доступ к Google-сервисам, которые ваше устройство не поддерживает». Аналогичную ошибку можно встретить при запуске других приложений, не предназначенных для Huawei без Google.
Google-карты. Работа с Google-картами может содержать проблемы с кластеризацией, поиском, отрисовкой текущего местоположения и так далее.
Google-аккаунт. Авторизация через Google-аккаунт на Huawei без поддержки Google недоступна. Но реализация авторизации-регистрации через Huawei-аккаунт была бы кстати.
Магазины. Если мобильное приложение может отправить пользователя в магазин (для оценки, например), то необходимо проверить, что Android без Google Services отправляет в App Gallery, а Android с поддержкой Google — в Google Play. Если устройство поддерживает обе конфигурации, было бы здорово, если бы пользователь мог выбрать между магазинами.
4. Сервисы с поддержкой Google. Для Huawei без Google придётся найти аналоги или разработать их самостоятельно. Хорошо, что важные базовые инструменты, как упоминалось выше, доступны в AppGallery Connect из коробки.
Например, на Android-устройствах можно открывать ссылки из приложения тремя разными способами:
CustomTabs (разработка Google),
Для Huawei без поддержки Google, по умолчанию доступны только два способа или дополнительная разработка вручную.
Android с Google и без: сколько времени понадобится на тестирование
Базовые активности QA:
ревью ТЗ и дизайна,
прогоны по фиче, итоговые, регрессионные,
Это пример активностей QA «в среднем по больнице». Мы исключаем особенности компании и проектов и говорим немного в вакууме.
При работе с Huawei без Google-сервисов точно добавляется время к каждой из активностей:
Ревью ТЗ и дизайна, написание проверок. Будут дополнительные кейсы, отражающие особенности работы с такими устройствами. Можно смело увеличивать оценку временных затрат на это в 1,4–1,6 раза. Здесь время уйдёт либо на обработку дополнительных сценариев в ТЗ и дизайне, либо на анализ и подтверждение, что никакой особенной реализации для Android без Google-сервисов нет.
Прогоны. Во время прогонов (по фиче, итоговых, регрессионных) рекомендуется проводить тестирования как на Android с Google-сервисами, так и без. Особое внимание — устройствам, где доступны оба вида сервисов. Здесь сокращение количества устройств может когда-нибудь неприятно «выстрелить». Время может увеличиться в 1,8–2 раза и уйдёт на осуществление прогона на всех трёх видах устройств.
Обратная связь. Под «обратной связью» мы в Surf подразумеваем просмотр маленьких задач (которые не требует прогона по фиче — например, «Смену статичного текста») и исправленных багов. При работе с обратной связью, а также при анализе и просмотре импакта от багов и прочих задач, снова не стоит забывать про тот же список устройств (без и с Google-сервисами, а также с двумя видами сервисов) для тестирования. Время увеличивается примерно в 1,3 раза снова для того, чтобы осуществить ретест или проверку задачи на этих видах устройств.
Послерелизные активности. При релизе приложения в AppGallery необходимо продолжать мониторить работу МП как минимум по crash-сервису, чтобы поддерживать качество и исправлять ошибки вовремя. Если в проекте не используется один инструмент мониторинга обоих видов устройств, то времени на работу с двумя инструментами и анализом багов будет уходить больше. Пожалуй, тут лучше увеличить время в 2 раза.
Тестируемые устройства. И, конечно, на время может повлиять количество выбранных устройств для тестирования (автоматизированного или ручного). Подходить к выбору устройств стоит ответственно, проанализировав множественные факторы проекта и аудитории.
При тестировании на Android с Google Services хочется покрыть наибольшее количество устройств: разные операционные системы, оболочки, разрешения экранов, внутренние особенности и возможности. Устройств становится ещё больше, когда добавляются девайсы Huawei с HMS-сервисами.
Таким образом, необходимо покрыть бОльшее количество устройств: не забывая про Android с Google-сервисами, Android без их поддержки, и Android с поддержкой HMS-сервисов помимо Google.
На процесс и время могут повлиять особенности работы конкретной компании. Если у вас есть дополнительные задачи, активности, роли, рекомендуем провести предварительный анализ, чтобы не столкнуться с неожиданностями «в бою».
Время общего тестирования фичи увеличится:
в 1,8–2 раза в случае разных инструментов для реализации фичи;
в 1,3–1,5 раза в случае одного инструмента для реализации фичи (в том числе при отсутствии отличий на первый взгляд);
в 1,4–1,6 раза в случае дополнительных требований и отличительной части реализации.
Таблица-сравнение по тестированию фичи для устройств с Google и без
Мы оценили фичи по пунктам, о которых говорили выше ревью, написание проверок, прогоны по фиче, обратная связь.
Фича
Поддержка Android только с сервисами Google
Поддержка Android с Huawei и Google Services
Авторизация по логину и паролю, а также через соц.сети
Push-уведомления (реализация через Firebase и AppGallery Connect)
Аналитика, около 15 событий (реализация через Firebase и AppGallery Connect)
Аналитика, около 15 событий (реализация через один сервис, например, Amplitude)
Значение Х — время на тестирование Android с Google-сервисами. Оценка Y*X — время на тестирование Android с двумя видами сервисов, где Y — коэффициент увеличения времени на работу с Huawei с HMS-сервисами
Все временные оценки — исходя из нашего опыта. Приводим их для примерного понимания.
Что хотелось бы сказать в конце.
Мы в Surf поддерживаем устройства Huawei без Google-сервисов на некоторых проектах и довольны процессами. Конечно, поработать головой иногда приходится чуть дольше: разработчикам — чтобы найти универсальное решение. QA — чтобы найти максимальное количество дефектов, широко покрыть фичи проверками и обеспечить качественное тестирование. И на мой взгляд, оно того стоит.
Больше полезного про Android — в нашем телеграм-канале Surf Android Team. Здесь мы публикуем кейсы, лучшие практики, новости и вакансии Surf, а также проводим прямые эфиры. Присоединяйтесь!