- Ставим Google Play Store на виртуальный девайс с Jelly Bean (API 16)
- Установка Google сервисов на Windows Subsystem for Android
- Использование Intel HAXM при разработке приложений для Android Wear и TV
- Предварительные сведения
- Работа с универсальным приложением-примером для Android
- Создание AVD для Android TV и Wear
- Эмуляция Android Wear
- Эмуляция Android TV
- Создание и запуск необходимого количества экземпляров эмуляторов
Ставим Google Play Store на виртуальный девайс с Jelly Bean (API 16)
Меня всегда смущали циркулирующие по интернетам способы установки маркета: что-то откуда-то качать, запускать какие-то скрипты. Всё можно сделать гораздо проще и безопаснее.
Сразу предупрежу, что на API 15 описанный способ не работает, там маркет приложения не скачивает, хотя и ставится.
Сначала краткое описание процедуры:
- создаём виртуальный девайс на основе Google API образа;
- запускаем эмулятор девайса шаманским образом;
- удаляем «лишние» пакеты;
- достаём пакет с маркетом из имеющегося телефона через USB-кабель;
- закачиваем пакет с маркетом;
- финальное шаманство.
Все происходит в линуксе, но в других операционках всё абсолютно так же.
Для начала нужно обновить SDK Tools и Platform Tools до последней версии, чтобы в списке доступных платформ появились образы с API 16.
Создаём виртуальный девайс на основе Google API
Выбираем в поле Target значение Google APIs (Google Inc.) — API Level 16. В секцию Hardware набиваем нужные элементы.
Зачем на основе Google API? А всё просто — в этом образе уже есть нужные для работы Play Store пакеты (google services framework, например) и их не нужно где-то искать и шаманскими путями устанавливать.
Запускаем эмулятор девайса шаманским образом
/android/android-sdk-linux ; виртуалка называется test-4.1 )
Эта команда запускает виртуальный девайс, у которого размер системного раздела увеличен до 250 МБ, если этого не делать, то пустого места на разделе совсем не будет.
Теперь перемонтируем системный раздел для записи и заодно убеждаемся, что перемонтировался:
Я везде использую аргумент -e при вызове adb для того, чтобы запросы шли сразу на эмулируемый девайс.
Удаляем «лишние» пакеты
По умолчанию на виртуальном девайсе находится несколько несколько вредных пакетов, мешающих нормальной работе, в данном случае это LicenseChecker.apk и SdkSetup.apk , удалим их:
Достаём пакет с маркетом из имеющегося телефона через USB-кабель
Теперь нужно достать пакет с маркетом, для этого сгодится любой android-телефон, где этот маркет установлен. Включаем на телефоне отладку через USB, подключаем телефон кабелем к компьютеру и начинаем шаманство. Сначала нужно найти, где находится пакет с маркетом, это просто:
Вот он, родимый: /data/app/com.android.vending-1.apk . Выкачиваем его в текущий каталог (ключ -d используется для обозначения реального устройства, а не эмулятора, это удобно, не нужно id-девайса указывать при каждом вызове):
Этот способ должен работать на любом, даже не рутованном телефоне. И, да, таким путём можно извлекать любые пакеты с телефона.
Закачиваем пакет с маркетом
Закачиваем apk-пакет на телефон:
Финальное шаманство
Пакет на виртуальный девайс залит, осталось теперь сделать так, чтобы при следующем запуске он не слетел. Это тоже просто: эмулятор создаёт копию системного раздела в каталоге с временными файлами при каждом запуске:
Вот он, в файлике emulator-dHRHv0 (у вас он по-другому будет называться, но лежать в этом же каталоге), просто скопируем его в каталог виртуального девайса под именем system.img :
Теперь девайс прибиваем и запускаем обычным образом:
Источник
Установка Google сервисов на Windows Subsystem for Android
Энтузиаст смог установить Google сервисы и приложения на WSA . Оригинал тут.
Я же попробую описать это в виде инструкции, и предоставить готовый архив, для тех кому лень вводить кучу команд в терминал или устанавливать WSL .
Остальная установка интуитивно понятна и в комментариях не нуждается
Скачивание файлов:
Скачиваем WSA подробнее тут, в конце статьи в разделе UPD1 (далее файл_1)
Скачиваем репозиторий в виде архива .zip (далее файл_2)
Переходим на сайт opengapps , выбираем параметры platform: x86_64, android: 11, variant: pico и скачиваем архив. (далее файл_3)
Подготовка установочных файлов:
Создаем папку C:\WindowsSubsystemAndroid
Открываем архиватором файл_1. Находим в архиве файл вида «WsaPackage_XXX_x64_Release-Nightly.msix» размер более 700мб, у меня находился в самом конце списка. И открываем этот файл так же архиватором
В открывшемся архиве выделяем все файлы и папки, снимаем выделение с папки AppxMetadata и файлов [Content_Types].xml AppxBlockMap.xml AppxSignature.p7x выделенное копируем и вставляем в папку C:\WindowsSubsystemAndroid
Создаем папку C:\GAppsWSA и разархивируем туда репозиторий файл_2 из пункта скачивания файлов
Переходим в директорию C:\GAppsWSA\#GAPPS и кладем туда архив файл_3. ВНИМАНИЕ, разархивировать не нужно!
Переходим в директорию C:\WindowsSubsystemAndroid копируем из нее 4 файла: product.img vendor.img system_ext.img system.img в папку C:\GAppsWSA\#IMAGES
Вводим команду: sudo su
Меняем в консоли директорию на C:\GAppsWSA (команды cd)
Выполняем команду sudo apt-get update
Выполняем команду sudo apt-get install unzip lzip
Выполняем команду apt install lzip unzip
Выполняем команду apt install dos2unix
Выполняем команду dos2unix apply.sh
Выполняем команду dos2unix extend_and_mount_images.sh
Выполняем команду dos2unix extract_gapps_pico.sh
Выполняем команду dos2unix unmount_images.sh
Выполняем команду dos2unix VARIABLES.sh
Выполняем команду ./extract_gapps_pico.sh
Выполняем команду ./extend_and_mount_images.sh
Выполняем команду ./apply.sh
Выполняем команду ./unmount_images.sh
Переходим в директорию C:\GAppsWSA\#IMAGES копируем из нее 4 файла product.img vendor.img system_ext.img system.img в папку C:\WindowsSubsystemAndroid
Переходим в директорию C:\WindowsSubsystemAndroid\Tools переименовываем файл kernel в kernel_bak
Копируем файл kernel из C:\GAppsWSA\misc в C:\WindowsSubsystemAndroid\Tools
Для дальнейшей установки необходимо включить developer mode в Windows. Как включить посмотреть можно тут
Запускаем PowerShell от имени администратора
Выполняем команду Add-AppxPackage -Register C:\WindowsSubsystemAndroid\AppxManifest.xml
Скачиваем ADBKit и разархивируем его в папку C:\ADBKit
В PowerShell переходим в директорию C:\ADBKit. Далее выполняем команды
.\adb.exe connect 127.0.0.1:58526
После этого можно авторизовываться в Google.
Осталось пару шагов.
Переходим в директорию C:\WindowsSubsystemAndroid\Tools
Файл kernel переименовываем в kernel_root
Файл kernel_bak переименовываем в kernel
Можно пользоваться Google Play и устанавливать оттуда приложения. Полноценно оценить какие работают а какие нет — еще не успел, возможно разберу позже
Надеюсь помог тем кто хотел это опробовать)
P.S устройство определяется как Google Pixel 5
Источник
Использование Intel HAXM при разработке приложений для Android Wear и TV
Предварительные сведения
Intel Hardware Accelerated Execution Manager (HAXM) – это Android-эмулятор, который поддерживает аппаратную виртуализацию. Он создаёт невысокую нагрузку на систему, обладает отличной производительностью и быстрым интерфейсом.
Используя Intel HAXM, можно запустить несколько экземпляров Android-эмулятора на одном компьютере, не особо беспокоясь о производительности, о нагрузке на систему или о «тормозах» интерфейса. Подобный подход может быть весьма полезным в итеративном процессе создания и тестирования приложений, он способен дать огромный прирост производительности труда разработчиков.
Образы Android-эмуляторов, рассчитанные на архитектуры, отличные от x86, могут медленно запускаться и с задержкой откликаться на команды пользователя. Кроме того, в отличие от некоторых Android-эмуляторов сторонних производителей, с помощью Intel HAXM вы получаете возможность работать с последними версиями API и платформ Android сразу же после их выпуска.
Здесь вы можете найти подробное руководство по работе с HAXM.
В этом материале мы поговорим о том, как пользоваться возможностями Intel HAXM при создании приложений, рассчитанных на всевозможные варианты платформы Android. Такие приложения могут работать на обычных смартфонах разных форм-факторов, и на устройствах, несущих на борту Android Wear и Android TV.
Работа с универсальным приложением-примером для Android
Компания Google недавно выпустила приложение, на примере которого показано, как охватить одной кодовой базой множество различных Android-устройств.
В примере продемонстрированы передовые подходы к разработке универсальных приложений. Для сборки проекта воспользуйтесь инструкциями, которые можно найти по вышеупомянутой ссылке. Мы, в данном практическом руководстве, будем испытывать пример на x86 HAXM-эмуляторах Android TV, Wear и смартфона.
Проект можно импортировать в Android Studio и воспользоваться возможностями этой среды по сборке и запуску приложения на эмуляторе. Если вы предпочитаете работать с другой IDE, то, о чём пойдёт речь дальше, так же окажется полезным.
Если вам близок интерфейс командной строки, можете просто запустить Gradle-скрипт для сборки приложения из папки с исходным кодом примера.
Результирующий APK-файл можно найти в папке «mobile/build/outputs/apk/mobile-debug.apk».
Создание AVD для Android TV и Wear
Для начала нужно удостовериться в том, что у нас имеются самые свежие образы эмуляторов для платформ Android TV, Wear, а так же – для обычных смартфонов.
Откроем Android SDK Manager. Его можно запустить из интерфейса Android Studio или из командной строки (папка /tools должна быть указана в переменных среды) с помощью такой команды:
Окно Android SDK Manager. Образы систем, которые нужно загрузить, выделены
После того, как необходимые пакеты загружены, нужно, для использования соответствующих образов систем, настроить конфигурации эмуляторов (то есть, создать набор AVD). Для этого нам понадобится Android Virtual Device Manager. Запустим его из командной строки:
Окно Android Virtual Device Manager, здесь можно создавать новые AVD и настраивать существующие
Эмуляция Android Wear
Создадим конфигурацию виртуального устройства для Android Wear так, как показано на рисунке ниже.
Настройка конфигурации эмулятора для Android Wear
После того, как настройки выполнены, нажмём кнопку OK, после чего – запустим эмулятор. Для этого его нужно выделить в окне AVD Manager и нажать на кнопку Start. Вот как выглядит окно эмулятора.
Окно эмулятора Android Wear
Для того чтобы смартфон мог взаимодействовать с устройством, работающим под управлением Android Wear (или с соответствующим эмулятором), нужно дополнительное приложение. Единственный способ установить это приложение на устройство – загрузка из Магазина Google Play. Соответственно, нам понадобится Android-смартфон, который имеет доступ к Магазину.
Устройство должно быть доступно для ADB. Для того чтобы оно смогло подключиться к эмулятору, нужно, чтобы и смартфон, и эмулятор, присутствовали в списке устройств, который можно получить следующей командой:
Список подключенных устройств
Теперь перенаправим TCP-порты такой командой:
Теперь всё готово для сопряжения эмулятора Android Wear и аппаратного устройства. Осталось лишь запустить на смартфоне приложение Android Wear, и, из его меню, выполнить команду подключения к эмулятору. Если подключение удалось, экран эмулятора будет выглядеть так, как показано в левой части рисунка. В правой части показан экран эмулятора, не подключенного к смартфону.
Экраны эмулятора Android Wear в подключенном (слева) и неподключенном (справа) состоянии
Подробные сведения о создании приложений для Android Wear можно найти здесь. APK-файл тестового приложения ничем не отличается от других APK, его можно установить на эмулятор Android Wear с использованием ADB.
Проверить, установлено ли приложение на эмуляторе, можно с помощью такой команды:
Установка приложения на эмулятор и проверка установки
Имя пакета приложения-примера (com.example.android.uamp) присутствует в списке. Из командной строки можно и запустить приложение:
Теперь приложение запущено на эмуляторе Android Wear
Эмуляция Android TV
Создадим конфигурацию виртуального устройства для Android TV так, как показано на рисунке ниже.
Настройка конфигурации эмулятора для Android TV
После настройки нажмём на кнопку OK и запустим эмулятор кнопкой Start в окне ADV Manager.
Проверить доступность эмулятора для ADB можно такой командой:
Запишите или запомните идентификатор эмулятора (что-то вроде emulator-55xx). Он понадобится для указания целевого устройства при работе с эмулятором с помощью ADB. Для установки приложения на эмулятор можно воспользоваться такой командой:
Запустить приложение на эмуляторе Android TV можно так:
Вот как приложение выглядит на экране эмулятора.
Приложение, запущенное на эмуляторе Android TV
Создание и запуск необходимого количества экземпляров эмуляторов
Если в ходе разработки и тестирования приложения возникает необходимость создания и запуска нескольких экземпляров эмуляторов – всё это достижимо с использованием Intel HAXM. При установке HAXM можно настроить размер оперативной памяти, который отводится для его работы. Вот набор конфигураций AVD для Android Wear, TV и смартфона.
Список виртуальных устройств Android
Ниже вы можете видеть приложение-пример, запущенное одновременно на трёх виртуальных устройствах (Android TV, Wear и эмулятор смартфона). Здесь же показаны сведения об использовании CPU. Как видно, все эти экземпляры эмулятора не создают чрезмерной нагрузки на систему.
Три одновременно запущенных эмулятора и сведения о нагрузке на систему, которую они создают
В ходе работы можно настраивать выделение памяти для эмуляторов, оптимизируя потребление ими системных ресурсов. Для того, чтобы перенастроить параметры выделения памяти, заданные при установке HAXM, нужно повторно запустить его установку и указать нужные параметры.
Источник