С конца 2019 Huawei поставляет Android-смартфоны без сервисов Google, в том числе без привычного всем магазина приложений Google Play. В качестве альтернативы китайская компания предлагает собственные разработки — Huawei Mobile Services (HMS), а также магазин AppGallery. В этом тексте я — разработчик Технократии Алина Саетова — расскажу, как с этим жить и работать.
В статье мы рассмотрим:
- начало работы c Huawei-системой
- внедрение Huawei Mobile Services в приложение
- отладка и тестирование на удаленных устройствах Huawei
- публикация в AppGallery
Видеоверсию статьи смотрите здесь на канале Технократии.
С чего начать?
Чтобы взаимодействовать с Huawei-системой, нужно завести Huawei ID. Это аналог google-аккаунта, с помощью которого предоставляется доступ к сервисам системы. Далее нужно зарегистрировать аккаунт разработчика: индивидуальный или корпоративный.
- Индивидуальному разработчику нужно ввести свои ФИО, адрес, телефон, почту. В отличие от регистрации аккаунта разработчика в Google Play, нужны также сканы паспорта и банковской карты. Да-да, документы требуются для удостоверения личности. Huawei обещает удалить их после регистрации.
- Для регистрации корпоративного аккаунта требуются данные компании, либо DUNS number (международный идентификатор юридических лиц), либо бизнес лицензия.
Ждем одобрения аккаунта. За 1-2 дня Huawei обещают проверить наши данные. После этого можно подключать приложение к HMS. Для этого заходим в консоль AppGallery Connect.
Бесплатная копия iPhone в iCloud
- Создаем проект, а в нем добавляем приложение
Обращаем внимание, что для приложения, в котором используются HMS, название пакета должно оканчиваться на “.huawei”.
2.Помещаем конфигурационный файл agconnect-services.json в корневую папку приложения. Также сохраняем хэш SHA-256. Он потребуется для аутентификации приложения, когда оно попытается получить доступ к службам HMS Core.
Примечание. Для того, чтобы получить SHA-256, можно выполнить команду в терминале, подставив необходимые данные из вашего keystore:
keytool -list -v -keystore -alias -storepass -keypass
Для работы некоторых сервисов нужно указать место хранения данных:
3.Добавляем зависимости в проект Android Studio.В build.gradle на уровне проекта:
buildscript < repositories < google() jcenter() maven < url ‘https://developer.huawei.com/repo/’ >> dependencies < . classpath ‘com.huawei.agconnect:agcp:1.4.2.301’ >> allprojects < repositories < google() jcenter() maven > >
В build.gradle в модуле app:
apply plugin: ‘com.android.application’ apply plugin: ‘kotlin-android’ apply plugin: ‘kotlin-android-extensions’ apply plugin: ‘kotlin-kapt’ . apply plugin: ‘com.huawei.agconnect’ android < . >dependencies
4.Для предотвращения обфускации AppGallery Connect сервисов, Huawei рекомендует прописать следующие правила в файле proguard-rules.pro на уровне модуля app:
-ignorewarnings -keep class com.huawei.agconnect.**
- Для DexGuard:
-ignorewarnings -keep class com.huawei.agconnect.** -keepresourcexmlelements ** -keepresources */*
Первоначальная настройка проекта с Huawei Mobile Services завершена.
Внедряем HMS сервисы в проект
Почти на каждый сервис Google у Huawei есть альтернатива:
- Push Kit. Отправка пуш-уведомлений пользователям.
- Auth Service. В дополнение к привычным способам аутентификации здесь присутствует вход по Huawei ID.
- Crash Service. Cервис для отслеживания крашей приложения.
- Cloud Storage, Cloud DB. Хранение различных файлов и база данных.
- Location Kit. Получение местоположения пользователя.
- Analytics Kit. Анализ статистических данных приложения.
- In-App Purchases. Совершение покупок в приложении.
- Cloud Testing, Cloud Debugging. Тестирование приложений на удаленных устройствах Huawei.
Этот список можно продолжать долго — у Huawei довольно обширный перечень сервисов. Как же подключить их в наш проект?
Прежде всего, нам нужно определиться, как мы будем внедрять сервисы. Есть несколько вариантов:
- Полностью заменяем GMS сервисы на HMS сервисы
- Делаем комбинацию GMS и HMS сервисов в одном проекте
В этом деле нам пригодится плагин HMS Toolkit. Он поможет интегрировать HMS Core с минимальными затратами и высокой эффективностью. К сожалению, HMS Toolkit поддерживает конвертацию не всех сервисов, и лучше заранее уточнить, сможет ли он перенести работу ваших.
Нам нужен инструмент Convertor. Он проанализирует проект на наличие GMS сервисов и покажет места, где требуется заменить код с GMS на HMS.
- В меню выбираем HMS > Convertor > New Conversion:
2.В появившемся окошке указываем директорию, где создастся бэкап проекта до конвертации.
3.Здесь плагин представляет результаты анализа проекта: какие GMS сервисы у нас содержатся и какие из них конвертируемые. Также нам предлагается проверить sdk version для соответствия требованиям HMS.
На этом шаге мы должны выбрать стратегию конвертации:
- Add HMS API. На основе существующих в проекте GMS APIs генерируется XMS adapter (как дополнительный модуль в проекте). Он представляет собой прослойку между нашим кодом и непосредственно вызовом сервисов. Это такие Extension-классы, в которых лежит код, поддерживающий HMS и GMS сервисы одновременно. В runtime определяется поддерживаемый девайсом вид сервисов и вызываются соответствующие методы.
- To HMS API – полностью заменяются GMS APIs на HMS APIs.
4.После анализа проекта, мы видим список мест в коде, где необходима конвертация.
По клику на каждый пункт произойдет навигация в файл, где будет предложена конвертация:
Если был выбран способ Add HMS API, мы можем посмотреть на сгенерированный xms адаптер. Вот так, например, выглядит метод из класса ExtensionUser:
А вот размер xms адаптер модуля при использовании лишь одного API с аутентификацией пользователя:
По итогу, APK нашего приложения увеличивается (old size — это APK приложения с only GMS, new size — APK с GMS и HMS одновременно):
Не сказать, что разница велика, но если в приложении будет использоваться несколько API?
Подводные камни
В политике Google Play есть замечание:
“Any existing app that is currently using an alternative billing system will need to remove it to comply with this update. For those apps, we are offering an extended grace period until September 30, 2021 to make any required changes. New apps submitted after January 20, 2021 will need to be in compliance.”
Что это значит для нас? Теперь, если приложение одновременно поддерживает HMS и GMS сервисы, и в нем есть In-App Purchases, то Google Play не допустит его публикации, а существующим приложениям придется удалить этот функционал.В итоге, если был выбран первый способ конвертации (Add HMS API), мы имеем:
- Большое количество сгенерированных классов.
- Увеличенный размер APK приложения.
- Невозможность публикации приложения в Google Play, если в нем есть In-App Purchases.
- Неполную поддержку одновременной работы HMS … flavorDimensions ‘services’ productFlavors < hms < dimension ‘services’ applicationIdSuffix ‘.huawei’ >gms < dimension ‘services’ >> >
По умолчанию, Android Studio заводит sourceSet main, в котором содержатся общие файлы с кодом. Создаем папки для каждого flavor’a:
New -> Folder -> Выбираем нужный тип папки:
Затем в build.gradle того модуля, где мы создали папку, должен автоматически вставиться следующий код (например, если мы выбрали hms):
android < … productFlavors < . >sourceSets < hms < java < srcDirs ‘src/hms/java’ >. > > >
Теперь Gradle будет включать в сборку файлы, соответствующие выбранному flavor’у. Важно, чтобы файлы в этих директориях имели одинаковое название и лежали в пакетах с одним и тем же названием.
Пример. Мы используем Auth API. У нас будет абстракция — интерфейс AuthRepository, хранящийся в main/, а его имплементации для разных сервисов лежат в gms/ и hms/ директориях — тогда в сборку, например, для HMS, попадет именно имплементация с huawei сервисами.
Если проект многомодульный, то в каждом модуле необходимо прописать flavor’ы и при необходимости source sets. Код с flavor’ами можно вынести в отдельный файл.
Создадем .gradle файл в корневой папке проекта, назовем его flavors.gradle:
ext.flavorConfig = < flavorDimensions ‘services’ productFlavors < hms < dimension ‘services’ ext.mApplicationIdSuffix = ‘.huawei’ >gms < dimension ‘services’ >> productFlavors.all < flavor ->if (flavor.hasProperty(‘mApplicationIdSuffix’) isApplicationProject()) < flavor.applicationIdSuffix = flavor.mApplicationIdSuffix >> > def isApplicationProject()
Помимо самих flavor’ов, в экстеншене flavorConfig лежит код с циклом по flavor’ам — там будет определяться app модуль, которому присваивается applicationIdSuffix.
Затем в каждом модуле прописываем следующее:
apply from: «../flavors.gradle» android < buildTypes < . >. with flavorConfig >
Для использования подходящих плагинов во время процесса компиляции можем добавлять такие if-else конструкции:
apply plugin: ‘kotlin-kapt’ . if(getGradle().getStartParameter().getTaskNames().toString().toLowerCase().contains(«hms»)) < apply plugin: ‘com.huawei.agconnect’ >else < apply plugin: ‘com.google.gms.google-services’ apply plugin: ‘com.google.firebase.crashlytics’ >.
Для каждого flavor’а мы можем включать dependencies, необходимые только ему. Перед implementation прописываем его название:
// Firebase gmsImplementation platform(‘com.google.firebase:firebase-bom:26.1.0’) gmsImplementation ‘com.google.firebase:firebase-crashlytics-ktx’ gmsImplementation ‘com.google.firebase:firebase-analytics-ktx’ // Huawei services hmsImplementation ‘com.huawei.agconnect:agconnect-core:1.4.2.300’ hmsImplementation ‘com.huawei.hms:push:5.0.4.302’ hmsImplementation ‘com.huawei.hms:hwid:5.0.3.301’
Тестируем и отлаживаем приложение
После того, как мы внедрили Huawei сервисы в приложение, нам нужно протестировать его работоспособность.
У Huawei есть облачная платформа DigiX Lab, в которой представлены 2 сервиса.
С помощью сервиса облачного тестирования проверяем совместимость, стабильность, производительность и энергопотребление приложения на удаленных устройствах Huawei. Краткое описание тестов можно увидеть на картинке.
По окончании каждого теста доступен подробный отчет. Можно узнать о сбоях, ANR, утечках ресурсов, также увидеть загрузку процессора, использование памяти и многое другое. Плюсом будут доступны скриншоты, которые снимаются во время тестирования и журналы Logcat.
Тесты можно запускать либо с помощью плагина в Android Studio:
Либо в консоли AppGallery, выгрузив туда свой APK:
Служба облачной отладки решает проблему отсутствия реальных устройств Huawei. Предоставляется список удаленных устройств, а разовый сеанс работы до 2 часов. Сервис дает 24 часа работы бесплатно после подтверждения личности. Можно подавать заявки на продление срока действия неограниченное количество раз. Отладка также доступна из Android Studio и консоли.
Публикуем приложение в AppGallery
После внедрения сервисов и успешного тестирования приложения, мы готовы публиковаться в AppGallery.
1.Переходим в AppGallery Connect и заполняем данные:
2.Грузим иконку приложения и скриншоты. Есть возможность прикрепить видео.
3.Указываем страны/регионы для публикации и грузим APK приложения. Кроме того, нужно загрузить подпись приложения.
4.Отмечаем способ покупок в приложении и рейтинг.
5.Грузим политику конфиденциальности (обязательно) и предоставляем данные тестового аккаунта, если это необходимо. Указываем дату публикации.
6.Нажимаем кнопочку “Отправить на проверку” и ждем! Проверка по регламенту занимает около 3-5 дней.
Основные причины отказа в публикации
- Политика конфиденциальности не соответствует стандарту
- Отсутствует ссылка на политику конфиденциальности.
- Ссылка на политику конфиденциальности недоступна.
- Ссылка на политику конфиденциальности ведет на официальный сайт компании, на котором нет ссылки на политику конфиденциальности.
- Указанный статус Гонконга и Макао не соответствует стандарту.Гонконг и Макао не могут быть указаны как страны на странице выбора региона. Китай очень трепетно относится к этому. Пример:
3.Приведены ссылки на сторонние магазины приложений
Функция для оценки и написания отзыва в приложении содержит ссылку на сторонние магазины приложений без ссылки на AppGallery
Итоги
Huawei выстроили удобный процесс адаптации приложения под свои сервисы. Максимально безболезненный переход к HMS, тестирование и отладка на удаленных устройствах, а также знакомый процесс публикации приложения значительно облегчат жизнь разработчику. И пока что в AppGallery не такая серьезная конкуренция как в других магазинах приложений, самое время присоединяться к Huawei сообществу.
- AppGallery Connect. Getting started with Android.
- HMS Core Documentation.
- Huawei Codelabs.
- Huawei Developers Forum.
- Блог Huawei на Хабре.
Подписывайтесь на наш Telegram-канал «Голос Технократии», где мы пишем о новостях из мира ИТ и высказываем свое мнение о важных событиях.
- android
- android development
- huawei
- huawei mobile services
- google mobile services
- разработка приложений
- разработка под android
- разработка мобильных приложений
- публикация приложений
Источник: habr.com
Galaxy Store — что это за программа на Андроид и нужна ли она?
Несмотря на доминирование на рынке цифровых магазинов «Google Play» и «iTunes Store» другие компании не оставляют попыток потеснить признанных фаворитов с их позиций. ещё в сентябре 2009 года запустила магазин приложений «Samsung App», призванный стать полноценным конкурентом, а в будущем – и лидером среди подобных сервисов. Ныне сервис «Samsung App» имеет название «Samsung Galaxy Apps» (или сокращённо «Galaxy Apps»), а его работу обслуживает одноимённое приложение, которому и посвящён данный материал. В котором я расскажу, что за программа «Galaxy Apps», каково её предназначение, и нужен ли данный цифровой продукт на вашем телефоне.
Изучаем приложение «Galaxy App»
Нужен ли Essential Apps в телефоне?
Ответ на данный вопрос однозначный — нет, данная программа в Huawei не нужна. Подобные функции с легкостью выполняются встроенными инструментами в Андроид.
Также следует заметить — если вы просто закроете или заморозите EA через Titanium BackUp, то никакого влияния оно оказывать не будет.
Хуавей в каждой своей новой линейке пытается внедрить свой магазин. К примеру, на телефонах Huawei P20 и P20 Pro появился фирменный магазин — AppGallery. Функции его, думаю, вам всем понятны.
Хуавей запустил несколько своих магазинов приложений
Galaxy Apps что это за программа и нужна ли она на телефоне
«Galaxy Apps» (полное — «Galaxy App Store» — в переводе «магазин приложения «Galaxy») – это официальный каталог приложений для мобильных устройств от «Samsung». В упомянутом каталоге содержится мобильный софт преимущественно для серии «Galaxy» (отсюда и название). Хотя владельцы других устройств от «Samsung» наверняка найдут в данном каталоге (цифровом магазине) что-то интересное и полезное для своих гаджетов.
При этом в магазине имеется и ряд эксклюзивных продуктов, которые по заявлению разработчиков, можно скачать только в «Galaxy Apps» (интерфейс магазина локализирован для более чем 160 стран мира).
Работу указанного каталога обслуживает одноимённое мобильное приложение «Galaxy Apps», которое обычно предустанавливается на телефоны от «Samsung» (работает под ОС «Android» и «Windows Mobile»). Запустив данное приложение, пользователь получает возможность скачать платные или бесплатные продукты с «Galaxy App Store», отсортированные по нескольким категориям (игры, музыка, развлечения, фотографии, подарки и так далее).
Внешний вид «Galaxy Apps»
Если рассматриваемое приложение работает стабильно, и вы не замечаете за ним раздражающих недостатков, тогда рекомендую его оставить, и пользоваться его богатыми возможностями (в частности, внимания заслуживает продвинутая система скидок на ряд уникальных цифровых продуктов). Если же вы недовольны его функционалом, тогда читайте информацию, поданную ниже.
Как удалить приложение?
Для полного удаления программки Huawei Essential Apps вам понадобится сделать следующее:
- Открываем «Настройки» — «Приложения»;
- В меню есть опция — «Показать системные приложения», либо отведена отдельная вкладка «Все»;
- Находите в списке и просто удаляете Essential Apps. Можете также остановить и забыть про него.
- Отдельно поищите и удалите процесс «com.ironsource.appmanager».
Есть небольшие нюансы — я бы рекомендовал просто остановить данные процессы. Проблема в том, что после апдейта прошивки, Андроид может снова закачать программку. Тут никуда не денешься, если фирма-производитель хочет напихать своего софта — нужно смириться.
Galaxy Store — внешний вид
По этой картинке могу сделать вывод — прога вам может подсказывать самые популярные приложения, рейтинговые, например Топ 3 игр:
Здесь мы видим — магазин предлагает эксклюзивные приложения, они показаны под надписью Exclusive Apps Made for Samsung:
Хорошая опция Auto update apps — Using Wi-Fi only, что означает для обновления приложений использовать только сеть Wi-Fi. Это хорошо, ведь мобильный интернет обычно платный.
Программа покажет и рекомендуемые проги:
Вот темы оформления для часов:
В магазине присутствуют и знакомые нам программы, например Microsoft Word:
Кстати еще показывается рейтинг звездочкой, мелочь, но тоже нужно.
Что такое HiCare
HiCare – это предустановленное приложение на устройствах Honor и Huawei, которое создано для быстрой диагностики устройства и устранения небольших проблем, связанных с программными повреждениями (чем-то похоже на использование инженерного меню). При физических повреждениях устройства с помощью программы можно найти ближайший
Как удалить с телефона
Предустановленное приложение удалить можно лишь с использованием этой статьи. Если вы не хотите вникать в суть описанной инструкции, то его можно просто остановить через настройки.
Для остановки приложения потребуется:
- Запустить основные настройки телефона.
- Открыть строку «Приложения», затем снова нажать на «Приложения».
- В поиске ввести название HiCare.
- Открыть программу.
- Нажать на «Отключить»
- Подтвердить выбор.
Если приложение было установлено самим пользователем, то манипуляции проводятся аналогичные. При этом вместо кнопки «остановить», будет кнопка «удалить».
Неофициальный способ скачать и установить Movie Maker 2.6 и Movie Maker 6.0
После выхода Windows 10 стал популярным сторонний набор компонентов системы Missed Features Installer 10 (MFI 10), представляющий собой ISO-файл для быстрой установки тех компонентов, которые присутствовали в предыдущих версиях ОС, но исчезли в последних. Также существует и версия MFI 7 (для Windows 7), но и та и другая версия позволяют установить Movie Maker во всех последних версиях системы, правда в данном наборе он предоставляется без русского языка интерфейса.
Шаги для загрузки простые — скачайте MFI 10 или MFI 7 и смонтируйте ISO образ в системе. Запустите со смонтированного диска исполняемый файл mfi.exe, после чего выберите пункт Windows Movie Maker (для этого в MFI 10 внизу окна программы пролистайте страницы до 3-й), а затем — требуемую версию видео редактора (версия 6.0 содержит также программу DVD Maker для создания DVD из фото и видео).
Начнется автоматическая установка, по окончанию которой вы получите работающий Movie Maker в своей системе (при каких-либо проблемах запуска, попробуйте также запуск в режиме совместимости). На скриншоте ниже — установленная таким образом версия 6.0 в Windows 10.
Ранее у Missed Features Installer был собственный официальный сайт, который сейчас закрылся. Тем не менее, MFI остался доступным для загрузки на сайте: chip.de/downloads/Missed-Features-Installer-fuer-Windows-10_88552123.html (но будьте внимательны, установщик с chip.de пробует также установить дополнительное ПО на компьютер от которого можно отказаться).
Источник: xiaomi-fun.ru
Отвязываем смартфон от всевидящего ока Google
Компания Google быстро прошла путь от небольшой поисковой системы до гигантской инфраструктуры, компоненты которой работают на наших ПК, смартфонах, планшетах и даже телевизорах. Google неустанно собирает о нас информацию, поисковые запросы тщательно логируются, перемещения отслеживаются, а пароли, письма и контактная информация сохраняются на годы вперед. Все это неотъемлемая часть современности, но мы вполне можем ее изменить.
Введение
Ни для кого не секрет, что любое устройство под управлением Android (по крайней мере то, что сертифицировано Google) содержит в себе не только компоненты, собранные из AOSP, но и внушительное количество проприетарных программ Google. Это те самые Google Play, Gmail, Hangouts, Maps и еще куча приложений, включая диалер и камеру (начиная с KitKat).
Для всех этих компонентов нет не только исходного кода, но и вообще каких-либо пояснений по поводу принципов их работы. Многие из них изначально созданы с целью собирать определенные виды информации и отправлять их на серверы Google. Так, например, ведут себя GoogleBackupTransport, отвечающий за синхронизацию списка установленных приложений, паролей и других данных, GoogleContactsSyncAdapter, который синхронизирует список контактов, или ChromeBookmarksSyncAdapter, работа которого — синхронизировать закладки браузера. Плюс сбор информации обо всех запросах в поисковике.
В самом факте синхронизации, конечно, ничего плохого нет, и это великолепный механизм, который позволяет настроить новый телефон за считаные минуты, а Google Now даже умудряется дать нам полезную информацию на основе наших данных (иногда). Проблема только в том, что все это рушит нашу конфиденциальность, ибо, как показал Сноуден, под колпаком у АНБ (и, вероятнее всего, у кучи других служб) находится не только какая-нибудь империя зла под названием Microsoft, но и Google, а также множество других компаний из тусовки «мы не зло, а пушистые меценаты».
Говоря другими словами: Гугл сольет нас всех без всяких проблем, и не факт, что его сотрудники, сидя в своих офисах с массажистками и собачками, не ржут над именами из твоей контактной книги (там все зашифровано, да), попивая 15-летний пуэр из провинции Юньнань. А может быть, к черту этот Гугл? Возьмем их Android, а сами они пусть идут лесом?
Что такое Google Apps
Последняя версия кастомной прошивки на основе KitKat для моего смартфона весит 200 Мб, однако, чтобы получить настоящий экспириенс от смартфона, я должен прошить поверх нее еще и архив gapps, размер которого составляет 170 Мб. Только после этого я получу систему, аналогичную предустановленной на Nexus-устройства, со всеми плюшками в виде интегрированного с Google Now рабочего стола, блокировку экрана на основе снимка лица, камеру с поддержкой сферической съемки и килограмм гугловского софта, начиная от Google Play и заканчивая Google Books.
Еще раз повторюсь: все это закрытый софт от Google, который по-хорошему вообще нельзя распространять без их ведома (поэтому его нет в кастомных прошивках типа CyanogenMod), но так как извлечь его из прошивок Nexus-девайсов довольно просто, то в Сети можно найти огромное количество подобных архивов, в том числе сильно урезанных. Для того чтобы выпустить смартфон на Android с набором gapps на борту, производитель должен отправить его на сертификацию в Google, которая, оценив качество и производительность смартфона, либо даст добро, либо отфутболит (но китайцев это вообще никак не останавливает).
Так Google Apps попадают на смартфон. Из пользователей 99% либо юзают предустановленные приложения, либо устанавливают их самостоятельно на абсолютно чистую и полностью анонимную прошивку. А дальше с момента ввода имени пользователя и пароля начинается синхронизация и слив информации.
Чтобы разобраться, как это происходит, распакуем тот самый архив с gapps и взглянем внутрь. Нас интересуют каталоги /system/app и /system/priv-app , при установке их содержимое копируется в одноименные каталоги внутри смартфона. Второй каталог — это новшество KitKat, в нем размещаются приложения, использующие системные API, помеченные как «private» и не доступные обычным приложениям.
В каталоге /system/app мы найдем большое количество разных гугловских приложений, легко узнаваемых по названию пакета: Books.apk, Chrome.apk, Gmail2.apk и так далее. Каждое из них по-своему будет делиться информацией, но это абсолютно нормально (да, Google будет знать, что ты читаешь Пауло Коэльо через их приложение!). Наибольшую опасность здесь представляет GoogleContactsSyncAdapter.apk, который отвечает только за то, чтобы отправлять на удаленный сервер список контактов. Записываем название в блокнот и идем дальше.
Большинство файлов из каталога /system/priv-app — это сервисы и фреймворки, необходимые для запуска всей этой махины синхронизации и слежки:
- GoogleBackupTransport.apk — занимается синхронизацией данных установленных приложений, паролей Wi-Fi и некоторых настроек;
- GoogleLoginService.apk — связывает устройство с Google-аккаунтом;
- GooglePartnerSetup.apk — позволяет сторонним приложениям получить доступ к сервисам Google;
- GoogleServicesFramwork.apk — фреймворк с различной подсобной функциональностью;
- Phonesky.apk — Play Store (как ни странно);
- PrebuiltGmsCore.apk — Google Services, как видно из названия, это ядро всего комплекта gapps;
- Velvet.apk — поиск от Google, включающий в себя строку поиска на рабочем столе и Google Now.
В сущности, это и есть та часть Google Apps, которая ответственна за слив нашей частной информации. Попробуем от всего этого избавиться.
Способ номер 1. Отключение через настройки
Самый простой способ отвязать смартфон от Google — это воспользоваться стандартными настройками системы. Метод хорош тем, что не требует ни прав root, ни установки кастомных прошивок, ни кастомного рекавери. Все можно сделать в любой стоковой прошивке без потери доступа к аккаунту и приложениям типа Gmail (если это необходимо). Однако за эффективность никто ручаться не будет, так как вполне возможно, что некоторые компоненты gapps продолжат отправку данных.
За множество настроек синхронизации отвечает также приложение «Настройки Google», которое является частью Google Services. С его помощью, в частности, можно отключить доступ Google к местоположению («Доступ к геоданным -> Доступ к моим геоданным / Отправка геоданных / История местоположений»), отключить отправку личных данных поисковику («Поиск -> Личные данные»), отключить Google Now («Поиск -> Google Now») и отключить удаленное управление («Удаленное управление -> Удаленный поиск устройства / Удаленная блокировка и сброс настроек»).
В тех же «Настройках Google», кстати, можно отключить любое приложение, использующее аккаунт Google для
Open Source Маркет
Кроме описанных в статье, а также множества других менее известных магазинов приложений, в Сети можно найти отличающийся от остальных репозиторий F-Droid. Он полностью анонимен и содержит только свободный софт, распространяемый под лицензиями, одобренными фондом FSF. Приложений в F-Droid всего тысяча, зато все они гарантированно не содержат бэкдоров и других систем разглашения личных данных. Именно F-Droid используется в качестве дефолтового маркета в свободной Android-прошивке Replicant.
Решение проблемы зависимости приложений от Google Apps
Несмотря на то что компоненты gapps не являются частью официального API Android, некоторые приложения все-таки ожидают увидеть их в системе, из-за чего может возникнуть ряд проблем — от полной неработоспособности приложения до потери части его функций. Некоторые приложения откажутся устанавливаться из-за отсутствия Google Maps API, другие падают сразу после запуска, не обнаружив его, третьи включают в себя прямые ссылки на Google Play, что может привести к падениям и некорректной работе.
Чтобы решить эти проблемы, пользователь MaR-V-iN с XDA начал проект NOGAPPS, в рамках которого ведется разработка набора открытых компонентов, заменяющих оригинальную функциональность Google Apps. В данный момент доступно три компонента-замены:
- Network Location — сервис геолокации на основе Wi-Fi и базовых станций GSM. Основан на базе данных IP-адресов от Apple и открытой базе базовых станций;
- Maps API — замена интерфейса к Google Maps на основе OpenStreetMap;
- BlankStore — открытая альтернатива клиенту Play Store. Позволяет устанавливать бесплатные приложения из магазина Google, но не рекомендуется к использованию из-за возможных санкций со стороны поисковика (это запрещено их правилами).
Установка компонентов производится отдельно и разными способами. Network Location достаточно вручную скопировать в каталог /system/app/ в Android 2.3–4.3 или в каталог /system/priv-app/ в KitKat (в этом случае следует использовать файл NetworkLocation-gms.apk). Maps API устанавливается с помощью прошивки файла nogapps-maps.zip через консоль восстановления. Для установки маркета придется не только копировать файл, но и генерировать Android ID на большой машине, но, так как делать это не рекомендуется, я не буду об этом рассказывать и ограничусь ссылкой на инструкцию.
После всех манипуляций софт должен корректно заработать.
Выводы
Для компании Google Android без ее собственных приложений бесполезен, поэтому нет ничего удивительного в том, что компания выносит в них самые вкусные части системы и оставляет код закрытым. Однако в этой статье я показал, что жизнь без gapps есть и она может быть даже проще и удобнее, чем с Google.
[authors]Евгений Зобнин
Редактор рубрики X-Mobile. По совместительству сисадмин. Большой фанат Linux, Plan 9, гаджетов и древних видеоигр.
Источник: xakep.ru
- Политика конфиденциальности не соответствует стандарту