Pull to refresh

Скрипт удаляет «неудаляемые» мусорные приложения Android

Reading time 1 min
Views 62K
Open source *Development for Android *Smartphones Software


На Хабре уже публиковались инструкции, как удалить со смартфона «неудаляемый» мусор, который туда добавляют производители и операторы сотовой связи. Для этого не требуются рутовые права. Все операции можно выполнить вручную, подключив смартфон к компьютеру по ADB. Подробнее см. статью «Как удалить «неудаляемые» приложения со смартфона».

Сейчас на Gitlab опубликован универсальный bash-скрипт Universal Android Debloater, который автоматизирует большинство операций на большинстве популярных моделей смартфонов.
Читать дальше →
Total votes 44: ↑43 and ↓1 +42
Comments 37

Как облегчить установку .apk на Android или GUI для adb install

Reading time 3 min
Views 25K
Configuring Linux **nix *
Sandbox
Доброго времени суток, уважаемые Хабравчане! Так сложилось, что мне часто приходиться устанавливать .apk-файлы на Android-устройства — работаю тестировщиком. И вот в очередной раз, открывая терминал и набирая команду для установки очередного приложения, я задумался о том, как можно избавиться от рутинной работы. Статья предназначена для новичков, по-этому будет много пояснений.
Читать дальше →
Total votes 15: ↑14 and ↓1 +13
Comments 12

Установка ADB driver для телефонов малоизвестных производителей

Reading time 3 min
Views 259K
DNS *
Sandbox
Здравствуйте!
Возникла необходимость получить root на смартфоне DNS S5301, почитал в сети, 4pda и т.д. в основном ссылки устаревшие или не внушающие доверия, попробовал решить сам. Возникла проблема с установкой драйверов ADB режима.
Читать дальше →
Total votes 18: ↑16 and ↓2 +14
Comments 11

Обзор Intent Sender плагина к Android Studio и отдельных особенностей его разработки

Reading time 7 min
Views 8.5K
Java *Development for Android *
Sandbox
При разработке Android приложений зачастую приходится прибегать к помощи adb для оптимизации своей работы и экономии времени. Adb является единственным инструментом, позволяющим, к примеру, миновать длинную цепочку activity и запустить сразу нужную или отправить broadcast сообщение без ожидания выполнения каких-либо внешних условий. Использование adb влечет за собой все неудобства применения терминала для формирования длинных команд, что и привело меня к написанию плагина для ускорения и упрощения работы с adb при отправке intent на устройства.
Читать дальше →
Total votes 18: ↑18 and ↓0 +18
Comments 0

DroidShoter — скриншоты приложения на разных разрешениях экрана, используя одно устройство и Adb

Reading time 5 min
Views 10K
Development for Android *Mobile applications testing *
Как известно, Андроид устройств существует много… очень много. Это дает нам огромное число экранов, с различным сочетанием разрешения и плотности пикселей, что значительно усложняет разработку приложений. В определенный момент захотелось постараться упростить проверку приложения на разных экранах и избежать запуска на многих устройствах и эмуляторах. Анализ проблемы показал, что все необходимое для решения проблемы есть и, используя Adb, можно обойтись одним подключенным устройством. В итоге была разработана кроссплатформенная утилита для автоматического сохранения скриншотов приложения на разных параметрах экрана одного устройства, не требующая никаких дополнительных манипуляций с исходным кодом приложения (с эмуляторами также все работает). После работы утилиты получаются скриншоты приложения в том виде, в каком оно выглядит на различных устройствах. В дальнейшем, используя полученные скриншоты, можно выявлять артефакты отображения приложения и анализировать оптимальность лэйаутов.
Читать дальше →
Total votes 18: ↑18 and ↓0 +18
Comments 11

Security Week 42: зима на подходе, взрывающиеся свиньи, зашифрована половина интернета

Reading time 4 min
Views 11K
«Лаборатория Касперского» corporate blog Information Security *
Как вы наверное уже поняли, этот выпуск еженедельного дайджеста новостей в сфере инфобезопасности посвящен борьбе с желтыми заголовками. Исследователь Джон Сойер нашел уязвимость в ряде моделей смартфонов на базе Android, выпускаемых компанией Foxconn (новость, исследование). Уязвимость произошла из-за ошибки производителя, поставляющего для части клиентов также собственную версию ОС: там имелся отладочный модуль, позволяющий без труда получить привилегии рута и полный доступ к смартфону.

Несмотря на то, что ошибка оказалась достаточно серьезной, Сойер в своем исследовании высказался против использования уязвимостей «для пиара» — не в том смысле, что о них не стоит сообщать публике, а в том, что не нужно раздувать опасность обнаруживаемых дыр ради шеров и лайков. Отсюда и название уязвимости, пародирующее иные попытки брендировать уязвимости вплоть до создания логотипа, флага и рингтона: «Свиной взрыв».

Эксплуатируется проще простого. Достаточно подключить телефон к компьютеру, ввести пару команд через отладчик и готово. Впрочем, не совсем так. Исследователь обнаружил, что через стандартную консоль adb ввести комнаду не получится и слегка модифицировал софт так, чтобы отправлять на телефон необходимую последовательность символов. Результат: загрузка телефона в режиме отладки, с полным доступом к системе. Это не позволяет напрямую читать зашифрованную информацию, но дает массу возможностей для брутфорса или других специализированных мероприятий.
Читать дальше →
Total votes 15: ↑14 and ↓1 +13
Comments 4

Копируем текст из буфера обмена на Android девайсы через ADB

Reading time 5 min
Views 8.6K
red_mad_robot corporate blog Development of mobile applications *Development for Android *


Привет! Вы сталкивались с желанием скопировать какой-нибудь текст на лежащий рядом девайс? Мне хотелось бы, чтобы это было так же просто, как и copy-paste на эмулятор — набирать руками надоедает и не всегда удобно.


А что насчет хоткея: нажимаете его, и текст из буфера обмена PC начинает сам набираться на экране вашего телефона/планшета — звучит неплохо, верно?


В этой статье мы поговорим про использование adb в качестве инструмента копирования текста и о том, как это можно сделать удобным.

Читать дальше →
Total votes 17: ↑17 and ↓0 +17
Comments 6

Python-установщик Android-сборок из TeamCity своими руками

Reading time 4 min
Views 4.5K
VK corporate blog Python *Mobile applications testing *


Аудитория


QA-инженеры, тестировщики мобильных приложений, автоматизаторы.


Проблема


Во время тестирования приложений под Android (не только, но далее речь пойдет только про данную платформу), приходится устанавливать множество сборок тестируемого продукта / продуктов. Этот процесс отнимает время и силы, которые эффективнее потратить на поиск багов.


В настоящей статье мы рассмотрим существующее решение, напишем свое на Python и сравним их.

Читать дальше →
Total votes 19: ↑19 and ↓0 +19
Comments 1

ADB vs Spy Cam & Mic

Reading time 4 min
Views 18K
Information Security *Regular expressions *Development for Android *Smartphones
Как проверить, ведет ли какое-нибудь приложение на Android-смартфоне фото- или видеорепортаж, хотя ему это ни разу ни к чему? Нижепредлагаемый вариант совсем не идеален, но не требует «рута» или кастомной прошивки.

P.S. Я добавил в статью описание мониторинга доступа приложений к микрофону.

Что требуется установить:
  • ADB (Android Debug Bridge) (например, в составе Android SDK Platform Tools — загрузить можно здесь);
  • драйвер для телефона (при необходимости, например, Google USB Driver можно загрузить здесь).

Включаем на телефоне режим отладки через USB и подключаем смартфон к USB-порту компьютера, причем следует выбрать режим USB-подключения, отличный от «Только зарядка».
Скрытый текст
В «Диспетчере устройств» смартфон отображается, например, так:
в режиме «Фото» или «Файлы»

в режиме «USB-диск»

А вот так — в выводе команды lsusb:


Открываем командную строку в каталоге, в который установились «тулзы».
Проверяем, что подключение успешно (отображается серийный номер подключенного смартфона):
adb devices
(для Windows)

Для Linux команда бы выглядела так:
./adb devices

Если компьютер не авторизован для использования с этим смартфоном (под Android 4.2.2 и новее), то рядом с серийным номером появится предупредительное сообщение "unauthorized".
Для авторизации необходимо подтвердить на смартфоне разрешение отладки через USB.
Скрытый текст
Под Linux может появляться сообщение "no permissions" — в моем случае удалось решить проблему переключением смартфона в режим «Медиаустройство (MTP)».

Запускаем оболочку на устройстве (получаем приглашение "$"):
adb shell



Затем вводим следующие «магические» символы:
while true; do ps `while ! (dumpsys media.camera | grep -E "PID") do  done | grep -o "[^PID: ][0-9]*$"` | grep -o "[^S ]*$" ; date; sleep 1; done

Читать дальше →
Total votes 25: ↑25 and ↓0 +25
Comments 34

Play Store теперь принимает прогрессивные веб-приложения (PWA)

Reading time 15 min
Views 36K
Google Chrome Development of mobile applications *Development for Android *API *
Tutorial
Translation

Дисклеймер: я не связан с Google Play, Chrome или любой упомянутой компанией. Это не официальное заявление. Логотип и названия используются только для иллюстрации.

В Chrome 72 для Android реализована долгожданная функция Trusted Web Activity. Это означает, что теперь мы можем распространять PWA через каталог Google Play и запускать Chrome без UI в автономном режиме для нативных пакетов! Я некоторое время поигрался с этой функцией, копаясь в API, а здесь расскажу, о чём речь, чего ожидать и что доступно уже сегодня.
Total votes 30: ↑30 and ↓0 +30
Comments 10

И снова о втором мониторе из планшета…

Reading time 3 min
Views 34K
Configuring Linux *Gadgets Monitors and TV
Sandbox
Оказавшись обладателем среднего такого планшета с нерабочим сенсором (старшенький сынуля постарался) долго думал, куда приспособить. Гуглил, гуглил и нагуглил (раз, два, Хакер №227), а так же много других рецептов с участием spacedesk, iDispla и некоторых других. Вот только незадача — у меня Linux. Погуглив ещё, я нашел несколько рецептов и путем несложного шаманства получил приемлемый результат.

Читать дальше →
Total votes 72: ↑65 and ↓7 +58
Comments 35

OLED-экраны смартфонов на Андроиде и как с ними бороться

Reading time 4 min
Views 57K
Development for Android *
Sandbox

Экран Google Pixel 4


Привет, Хабр!


Сегодня я коснусь весьма распространенной и, вообще говоря, довольно общеизвестной темы выгорания OLED-экранов. Несмотря на то, что эта тема актуальна уже достаточно давно, некоторые производители смартфонов продолжают делать неудачные дизайнерские решения, а пользователи продолжают предпринимать неверные, довольно разрушительные меры. Я бы хотел рассказать кратко о том, что такое OLED-экраны, почему они выгорают и как, собственно, быстрее и безболезненнее всего сгладить эту проблему (конечно же, без root-прав). Поехали!

Читать дальше →
Total votes 33: ↑31 and ↓2 +29
Comments 124

Как удалить «неудаляемые» приложения со смартфона

Reading time 5 min
Views 210K
VDSina.ru corporate blog Development for Android *Smartphones Software


Чтобы увеличить привлекательность смартфонов, производители ставят на них как можно больше разных программ. Это понятно. Просто берём и удаляем ненужное… Стоп.

Оказывается, некоторые программы невозможно удалить. Например, на отдельных моделях Samsung невозможно удалить Facebook (есть только опция 'disable'). Говорят, на Samsung S9 вдобавок предустановлены «неудаляемые» приложения Microsoft.

Эти смартфоны приведены для примера. Такая же проблема и на других моделях. На многих есть неудаляемые программы от самого производителя.

Всё это надо зачистить.
Читать дальше →
Total votes 190: ↑179 and ↓11 +168
Comments 202

Хостинг блога на GPS/LTE-модеме

Reading time 4 min
Views 8.7K
VDSina.ru corporate blog Hosting Server Administration *Gadgets
Translation
image

GPS/WWAN/LTE-модем телефона PinePhone


В процессе разработки ПО на PinePhone я наткнулся на любопытное сообщение в dmesg:

[   25.476857] modem-power serial1-0: ADB KEY is '41618099' (you can use it to unlock ADB access to the modem)

Для контекста скажу, что в PinePhone есть модем Quectel EG25-G, отвечающий за GPS и беспроводную связь PinePhone. Это оборудование — один из немногих компонентов телефона с закрытыми исходниками.

Когда я увидел это сообщение и упоминание ADB, я сразу же подумал об Android Debug Bridge, то есть о ПО, стандартно используемое для общения с Android-устройствами. Я подумал: «Разумеется, это не может быть тот самый ADB». Ну, оказалось, что так оно и есть.
Читать дальше →
Total votes 38: ↑35 and ↓3 +32
Comments 6

Нюансы установки сторонних прошивок на Android-смартфоны. Первые шаги. Установка стороннего Recovery

Reading time 6 min
Views 22K
Shells *Lifehacks for geeks
Tutorial

Здравствуй, уважаемый читатель! Этот пост является первым в цикле статей про нюансы установки сторонних (далее — кастомных, от слова custom) прошивок на свои устройства под управлением ОС Andoid, а также о критически важных нюансах этого процесса. Цикл статей ориентирован на тех, кто либо только думает над тем, чтобы «накатить» на свой аппарат неофициальную прошивку, либо не знает некоторых моментов (например, как подружить GPay с новой ОС).

Читать далее
Total votes 8: ↑7 and ↓1 +6
Comments 51

C#: Автоматизация Android без посредников (adb)

Reading time 6 min
Views 11K
Development for Android *C# *Mobile applications testing *
Sandbox

Часто приходится автоматизировать то или действие, андроид приложения не являются исключениями.Конечно, все в этом случае прибегают к различным фреймворкам - Appium, Detox, UI Automator, Ranorex, но все эти приложения созданы для тестирования, соответственно потребляют больше ресурсов и их скорость оставляет желать лучшего.Однако есть выход - автоматизировать приложения напрямую с adb, для этого я и дописал эту библиотеку. Она ничем не уступает по возможностям этим фреймворкам , но при этом является достаточно простой и легко разворачиваемой на любой машине. Об этой библиотеке и пойдет речь в статье.

Читать далее
Total votes 17: ↑17 and ↓0 +17
Comments 8

История телепортации в андроиде

Reading time 3 min
Views 4.1K
IT systems testing *Web services testing *Mobile applications testing *

Это история о том, как я тестировал одно мобильное приложение для которого важным было то, что установка и работа приложения происходит заграницей. Казалось бы, все должно быть просто, поменял регион в телефоне/эмуляторе или включил VPN и вот тебе счастье. Но это не всегда так, и настройка окружения может затянуться на сутки!

Это не туториал, но в общих чертах вы узнаете, как приложения могут вычислять местоположение, какие приложения часто помогают легко поменять геопозицию, и как все таки сделать эмуляцию региона, когда все способы провалились.

Кстати, если вы знаете еще способ, как можно было всего этого избежать, то напишите, пожалуйста.

Читать далее
Total votes 4: ↑4 and ↓0 +4
Comments 7

Готовим Pirogue и пробуем его с трафиком домашней камеры Mi Home

Reading time 3 min
Views 3.3K
Information Security *Open source *Network technologies *Mobile App Analytics *Development for Raspberry Pi *
Sandbox

Наткнувшись на короткую статью на Хабр о решении PiRogue, мне показалось интересным проверить - можно ли получить работающий инструмент, затратив минимум времени. При этом, хотелось отработать конкретную прикладную задачу - проверить куда же идет траффик с моей домашней камеры.

Ингредиенты:

девайс Raspberry PI - 1 шт,

образ Pirogue с официального сайта https://pts-project.org/ - 1 шт.

Так как готового PI у меня под рукой нет, пришлось сделать паузу на заказ и получения девайса. Порадовало что сборка и запуск прошла на раз, при полном отсутствии опыта сборки подобных девайсов до этого.

Читать далее
Total votes 5: ↑4 and ↓1 +3
Comments 0

Android Debug Bridge для тестировщика без SMS и регистрации

Reading time 15 min
Views 11K
inDrive.Tech corporate blog Development of mobile applications *Mobile applications testing *
✏️ Technotext 2022

Привет, Хабр! Меня зовут Александр Карпенко, я QA Engineer в inDrive. Я подготовил эту статью для начинающих QA-специалистов. Ниже расскажу, как использовать Android Debug Bridge (ADB) в тестировании мобильных приложений и нужен ли вообще этот инструмент. 

Читать далее
Total votes 14: ↑14 and ↓0 +14
Comments 4
1