Обзор средств запуска и отладки приложений на Android
Разрабатывая свое первое приложение под Android, я столкнулся с проблемой запуска приложения для проверки и отладки. Эта статья должна помочь начинающему пользователю выбрать средство эмуляции.
Содержание:
Android Virtual Device (AVD)
Установка:
Это средство эмуляции встроено в Android SDK.
Настройка:
(на примере использования в Eclipse)
Window > Android SDK and AVD Manager > New
Вписываем имя виртуального устройства, платформу, размер карты памяти, тип дисплея…
Жмем Create AVD.
Запуск:
Первый запуск эмулятор длиться очень долго, особенно на слабых устройствах. Например, я так и не смог дождаться первого запуска на своем нетбуке, а, запуская первый раз на компьютере, был уверен, что эмулятор ушел в вечный цикл.
Последующие запуски эмулятора будут чуть шутрее.
Время между нажатием кнопки «Run» и появлением главного активити тестового приложения на эмуляторе проходит в среднем 11 секунд. Замеры проводил на достаточно производительном компьютере.
Преимущества и недостатки:
+ возможность протестировать приложение на разных версиях ОС Android, на устройствах с разными типами дисплея…
+ различные настройки, необходимые для тестирования, например, смена ориентации экрана
+ эмуляция SD-карты
— большой промежуток времени между нажатием кнопки «Run» и запуском приложения на эмуляторе
— эмулятор работает очень медленно, например, то, что телефон обрабатывал 1-2 секунды, эмулятор делал за 8-10 секунд
VirtualBox+Android x86
Установка и настройка:
- Скачиваем и устанавливаем VirtualBox.
- Скачиваем образ.
- «Создаём виртуальную машину Linux 2.6/Other Linux, 512 Mb RAM, Bridged Network, HD 2 Gb, Disable Mouse Integration. Подключаем ISO файл и загружаемся одной из опций LiveCD (есть вариант HDPI и MDPI)» (с) или следуем этой инструкции.
- Нажимаем Alt-F1 для выхода в консоль и набираем netcfg и запоминаем IP адрес эмулятора. Для возврата к GUI, нажимаем Alt-F7.
- adb connect
Запуск:
Время между нажатием кнопки «Run» и появлением главного активити тестового приложения на эмуляторе не засекал, но, по субъективным ощущениям, это происходит почти мгновенно.
Преимущества и недостатки:
+ маленький промежуток времени между нажатием кнопки «Run» и запуском приложения на эмуляторе
+ местами шустрая работа
— достаточно длительная и иногда проблематичная установка
— эмулятор работает местами медленно, имеются проблемы с изображением (особенно на MDPI)
— проблемы с эмуляцией SD-карты, сменой ориентацию экрана,…
— только два (три) доступные версии ОС Android и только два доступных типа дисплея
Телефон с ОС Android, подключенный через USB
Установка и настройка:
- Включаем на телефоне режим отладки. (Насторйки > Приложения > Разработка > Отладка по USB).
- Скачиваем драйвер для вашего телефона.
- Подключаем телефон к ПК.
- Устанавливаем драйвера. В Диспетчере устройств должен появиться раздел ADB Interface.
- adb devices. Если ваш телефон не отображается в списке, то переустанавливаем драйвер ADB.
Запуск:
Между нажатием кнопки «Run» и появлением главного активити тестового приложения на телефоне проходит порядка 5 секунд.
Преимущества и недостатки:
+ возможность увидеть приложение так, как его будет видеть пользователь (очень важным момент, особенно при создании интерфейса и дизайна приложения)
+ мультитач (если есть в телефоне)
+ смена ориентации экрана, акселерометр (если есть в телефоне)
— только одна версия ОС и один тип дисплея
— на физическом рабочем столе появиться еще один объект
Выводы:
Я пробовал работать с каждым из этих средств эмуляции и остановился на таком варианте:
1. написание и тестирование приложения, используя телефон;
2. тестирование приложения на многочисленных Android Virtual Device с различными комбинациями версии ОС и типа дисплея.
Надеюсь, что читающий сделал выбор эмулятора или почерпнул для себя что-то новое.
Удачи в тестировании!
Источник
Sandbox Droidy — песочница для проверки APK Android от Virustotal
Virustotal, компания, которая принадлежит Google, объявила о запуске Android-песочницы Droidy. Если вы загружаете APK из сторонних источников, то, прежде чем устанавливать их на Android-устройство, можете проверить их через Virustotal Droidy, чтобы узнать больше о их поведении в системе. Virustotal Droidy раскрывает информацию о работе проверяемого приложения, включая HTTP-запросы, разрешения DNS, IP-трафик, активность системных файлов, использование базы данных, события, связанные с криптосвязью, и многое другое.
Посмотрите образец отчета на сайте Virustotal. Там можно переключаться между Virustotal Droidy и классической песочницей Virustotal, чтобы увидеть различия в отчётах. Информация, которую накапливает новая песочница, используется другими службами Virustotal, Intelligence и Graph, чтобы обеспечить более четкое представление о деятельности приложений Android.
Использование Virustotal Droidy
Все, что вам нужно сделать, это перейти на сайт Virustotal и перетащить Android APK в поле на сайте. Или использовать кнопку загрузки, чтобы выбрать APK из локальной системы.
Virustotal вычисляет хеш и отображает результаты сканирования сразу же, если он уже находится в базе данных службы. Если нет, то APK сканируется.
Совет. Вы можете щелкнуть подробный отчет, чтобы получить дополнительную информацию о подключенных вызовах и снимках экрана, которые песочница захватила во время анализа.
Virustotal Droidy не требует счета Virustotal, но вам по-прежнему нужна учетная запись, чтобы использовать такие функции, как Virustotal Graph.
Источник
Виртуальная песочница для android
Краткое описание:
Позволяет клонировать, устанавливать и замораживать приложения во встроенной песочнице Android 7.0+ (с версии 1.1)
Описание:
Shelter — ПО с открытым исходным кодом, позволяющая использовать песочницу Android 7.0+ для изоляции приложений, которым вы не доверяете, а так же для клонирования приложений.
Возможности:
- Изоляция приложений в песочнице от ваших данных и файлов
- Заморозка приложений из песочницы по требованию — предотвращает их открытые в фоне и позволяет экономить ресурсы и батарею
- Клонирование приложений, например для того чтобы иметь 2 аккаунта в соцсетях
Возможность использования Shelter целиком зависит от прошивки вашего телефона! У некоторых производителей может быть плохая или забагованная реализация «рабочего профиля», что может привести к зависаниям, падениям и тд. Один из примеров — прошивки MIUI от Xiaomi — разработчик советует ставить альтернативные прошивки на эти устройства для использования Shelter.
Необходимо знать:
Shelter — это не полноценная песочница сама по себе. Она не сможет защитить вас от:
- Багов в ядре Android и его безопасности
- Бекдоров в вашей прошивке (потому рекомендуется использовать прошивки с открытым исходным кодом, если это вас волнует)
- Бекдоров в прошивках модема и других компонентов устройства (от этого невозможно защитить)
- Любых других багов и ограничений Android
Так же Shelter не может создать более одного рабочего профиля, или сосуществовать с любым другим ПО управляющим рабочим профилем. Это ограничение Android.
Требуется Android: 7.0 и выше
Русский интерфейс: Нет
- Оптимизация и исправления в процессе инициализации, теперь больше устройств будут поддерживать Shelter
- Меню «поделиться» теперь может пересекать профили благодаря @BroncoTc. Вы можете обмениваться чем угодно через встроенную в приложения кнопку «Поделиться» внутри Shelter с внешним профилем
- Теперь APK файлы можно установить напрямую в Shelter
- Улучшена безопасноть взаимодействия профилей, хоть и наивно (если я что-т- сломал, это скорее всего вызвано этим изменением, дайте мне знать не медля, хоть мои тесты и не выявили ничего сломанного этим)
- Представлена новая возможность — File Shuttle, позволяющая вам получить доступ к файлам между профилями использую интерфейс документов и Storage Access Framewrok (SAF) без рута и adb, и не принося в жертву гарантию изоляции. (Эта возможность ДОЛЖНА быть включена в настройках Shelter чтобы ее использовать)
- i18n: добавлена базовая ru-rRU локализация благодаря @NeoTheFox. Заметьте, что i18n переводы предоставлены и обсуживаются сообществом, потому нет никакой гарантии полного перевода. Вы все еще можете видеть не переведенные строки с не-Англоязыными локалями.
- Минимальная версия Android снижена до 7.0
- Лучшее обнаружение несовместимых устройств (меньше падений)
- Отключена возможность клонирования не системых приложений на MIUI (на этих прошивках клонирование сломано, необходимо качать приложения через магазин запущенный в песочнице)
- Исправлена редкая ошибка при которой подготовка рабочего профиля не закачнивается
- i18n: перевод на упрощенный Китайский
- Иконка заменена на новую (и более красивую) за авторством @嘿_这里有口井 on Weibo
версия: 1.2 F-droid net.typeblog.shelter_7.apk ( 1.38 МБ )
версия: 1.4.1 GP Shelter (Пост washerron #76875116)
версия: 1.3 GP Shelter (Пост washerron #76875116)
версия: 1.2 GP 1.1 GP (Пост washerron #76875116)
Скачать: версия: 1.0net.typeblog.shelter_3.apk ( 1.32 МБ )
Скачать: версия: 1.1Shelter 1.1.apk ( 1.36 МБ )
Сообщение отредактировал iMiKED — 04.11.20, 13:11
Что нового:
— Fixed crashes (Shelter cannot detect work profile) on some devices introduced by the last release
Shelter [1.4.1].apk ( 1.45 МБ )
Сообщение отредактировал washerron — 05.05.19, 21:14
Источник
Виртуальная песочница для android
Краткое описание:
Позволяет клонировать, устанавливать и замораживать приложения во встроенной песочнице Android 7.0+ (с версии 1.1)
Описание:
Shelter — ПО с открытым исходным кодом, позволяющая использовать песочницу Android 7.0+ для изоляции приложений, которым вы не доверяете, а так же для клонирования приложений.
Возможности:
- Изоляция приложений в песочнице от ваших данных и файлов
- Заморозка приложений из песочницы по требованию — предотвращает их открытые в фоне и позволяет экономить ресурсы и батарею
- Клонирование приложений, например для того чтобы иметь 2 аккаунта в соцсетях
Возможность использования Shelter целиком зависит от прошивки вашего телефона! У некоторых производителей может быть плохая или забагованная реализация «рабочего профиля», что может привести к зависаниям, падениям и тд. Один из примеров — прошивки MIUI от Xiaomi — разработчик советует ставить альтернативные прошивки на эти устройства для использования Shelter.
Необходимо знать:
Shelter — это не полноценная песочница сама по себе. Она не сможет защитить вас от:
- Багов в ядре Android и его безопасности
- Бекдоров в вашей прошивке (потому рекомендуется использовать прошивки с открытым исходным кодом, если это вас волнует)
- Бекдоров в прошивках модема и других компонентов устройства (от этого невозможно защитить)
- Любых других багов и ограничений Android
Так же Shelter не может создать более одного рабочего профиля, или сосуществовать с любым другим ПО управляющим рабочим профилем. Это ограничение Android.
Требуется Android: 7.0 и выше
Русский интерфейс: Нет
- Оптимизация и исправления в процессе инициализации, теперь больше устройств будут поддерживать Shelter
- Меню «поделиться» теперь может пересекать профили благодаря @BroncoTc. Вы можете обмениваться чем угодно через встроенную в приложения кнопку «Поделиться» внутри Shelter с внешним профилем
- Теперь APK файлы можно установить напрямую в Shelter
- Улучшена безопасноть взаимодействия профилей, хоть и наивно (если я что-т- сломал, это скорее всего вызвано этим изменением, дайте мне знать не медля, хоть мои тесты и не выявили ничего сломанного этим)
- Представлена новая возможность — File Shuttle, позволяющая вам получить доступ к файлам между профилями использую интерфейс документов и Storage Access Framewrok (SAF) без рута и adb, и не принося в жертву гарантию изоляции. (Эта возможность ДОЛЖНА быть включена в настройках Shelter чтобы ее использовать)
- i18n: добавлена базовая ru-rRU локализация благодаря @NeoTheFox. Заметьте, что i18n переводы предоставлены и обсуживаются сообществом, потому нет никакой гарантии полного перевода. Вы все еще можете видеть не переведенные строки с не-Англоязыными локалями.
- Минимальная версия Android снижена до 7.0
- Лучшее обнаружение несовместимых устройств (меньше падений)
- Отключена возможность клонирования не системых приложений на MIUI (на этих прошивках клонирование сломано, необходимо качать приложения через магазин запущенный в песочнице)
- Исправлена редкая ошибка при которой подготовка рабочего профиля не закачнивается
- i18n: перевод на упрощенный Китайский
- Иконка заменена на новую (и более красивую) за авторством @嘿_这里有口井 on Weibo
версия: 1.2 F-droid net.typeblog.shelter_7.apk ( 1.38 МБ )
версия: 1.4.1 GP Shelter (Пост washerron #76875116)
версия: 1.3 GP Shelter (Пост washerron #76875116)
версия: 1.2 GP 1.1 GP (Пост washerron #76875116)
Скачать: версия: 1.0net.typeblog.shelter_3.apk ( 1.32 МБ )
Скачать: версия: 1.1Shelter 1.1.apk ( 1.36 МБ )
Сообщение отредактировал iMiKED — 04.11.20, 13:11
Что нового:
— Fixed crashes (Shelter cannot detect work profile) on some devices introduced by the last release
Shelter [1.4.1].apk ( 1.45 МБ )
Сообщение отредактировал washerron — 05.05.19, 21:14
Источник