В этом тексте описаны полезные вещи, которые можно делать с Android через adb shell. И часто их можно сделать только так.
Чтобы выполнить инструкции из этой статьи, нужно сначала включить режим разработчика на телефоне:
- зайти в раздел Настройки/Settings → О телефоне/About Phone;
- найдите пункт с номером сборки (Build number) и нажимайте его быстро до тех пор, пока не появится надпись типа «Теперь вы стали разработчиком»
- в телефонах с MIUI нужно нажимать по пункту MIUI Version
В современном андроиде версии 4 или выше через кабель невозможно нормально добраться до главного раздела, так как доступ к нему открыт только через глючный и тормозной MTP, а с линуксом ещё хуже — там вообще нет нормальной поддержки MTP.
Многие выкручиваются так: поднимают на девайсе какой-нибудь сервер (обычно FTP), а дальше к нему подключаются через Wi-Fi; затем можно через любой FTP-клиент копировать файлы с девайса и назад. Есть и недостатки: не очень безопасно и часто очень медленно.
Но выход есть и называется он USB-tethering.
Это древний текст, он уже неактуален и вряд ли кому понадобится, но пусть хранится для истории.
Работа с данными: адаптеры и отображение. Плюс работа с обработчиками событий виджетов.
Начиная с этой статьи, я больше не буду придерживаться строгого порядка нумерации, а также не буду вдаваться в откровенно простые вещи, которые можно прочитать в официальных руководствах.
В официальном руководстве есть обучающая статья про данные, называется она Saving Data. К сожалению, статья не очень понятная, а ещё перегруженная совершенно не нужными для обучающего текста данными (паттернами и прочим энтерпрайзом). Я постараюсь в моей статье раскрыть тему хранения и отображения данных более понятно (и по-русски).
Задача: нужно поставить Market (а теперь он называется Play) на андроидный виртуальный девайс. Широко известная в узких кругах процедура с копирование файла system.img
больше не работает, пришлось искать новый способ.
Для работы Market на девайсе должен быть установлен Google Services Framework (gsf), это библиотека для работы с гуглоаккаунтами, нужна практически для всех гугловых приложений. В составе SDK уже есть образы с включённым gsf, именно на виртуальный девайс, основанный на таком образе, мы и будем ставить маркет.
Обновлено 2015-09-17: исправлены ссылки на программы
Приложения для андроида распространяются в виде файлов с расширением apk, внутри такого файла лежат бинарные и текстовые ресурсы приложения, манифест со всякой технической информацией о пакете, а также скомпилированный код собственно приложения. И в какой-то момент неизбежно возникает желание расковырять чужой пакет, чтобы вытащить оттуда картинку, например, или посмотреть, как устроены макеты интерфейсов.
Вот этим мы и займёмся. Традиционно здесь всё рассказывается в контексте линукса, с остальными операционками разбирайтесь сами, хотя принцип ровно такой же.
Это древний текст, он уже неактуален и вряд ли кому понадобится, но пусть хранится для истории.
Java-классы проекта, макеты интерфейсов, ресурсы, доступ к ресурсам из кода
Сегодня займёмся редактированием кода проекта. В самом начале я заявил, что знание Java необязательно, однако это не значит, что я тут буду заниматься обучением этому языку, вам придётся самим что-то по этой теме читать; книг и обучающих ресурсов предостаточно, какие-то из них можно найти в ссылках в конце этой статьи.
Запускаем eclipse командой eclipse-adt
, там должен уже быть проект, который мы создали в прошлой части — first project, также запускаем эмулятор с виртуальным девайсом с Android 2.3.3.
Это древний текст, он уже неактуален и вряд ли кому понадобится, но пусть хранится для истории.
Работа с проектами в eclipse, создание первого android-приложения, структура apk-файлов
А статья уже довольно сильно устарела, часть скриншотов точно не соответствует реальности, часть текста тоже. Такие дела.
В этой статье мы наконец создадим в Eclipse ADT первое работающее андроидное приложение. И не просто создадим, но и проверим его работу в виртуальном девайсе.
Как и в любой интегрированной среде разработки, в Eclipse ADT создание работающего приложения сводится к трём шагам:
- создание андроид-проекта в Eclipse (минимальный шаблонный проект);
- написание программного кода, рисование дизайна и т.п.;
- «компиляция» проекта в окончательный apk-файл.
Это древний текст, он уже неактуален и вряд ли кому понадобится, но пусть хранится для истории.
Установка Eclipse, установка компонентов для android-разработки, настройка рабочего окружения
В прошлой части мы поверхностно ознакомились с инструментами Android SDK, поигрались с эмуляторам и виртуальными девайсами. В этой статье займёмся подготовкой рабочего места андроид-кодера — будем настраивать Eclipse ADT.
Это древний текст, он уже неактуален и вряд ли кому понадобится, но пусть хранится для истории.
Установка SDK, знакомство с SDK, инструменты SDK.
В этой части пробежимся по верхушкам Android Software Development Kit (SDK), посмотрим, как он устроен, какие инструменты в него входят и как с этими инструментами работать. Особо углубляться в детали не будем, лишь поиграемся с отдельными программами, чтобы понять, как там всё работает.
Текст статьи (ссылки, описания, инструкции) актуален на март 2013 года.
Это древний текст, он уже неактуален и вряд ли кому понадобится, но пусть хранится для истории.
«Этим полукреслом мастер Гамбс начинает новую партию мебели.» Пошлый эпиграф.
Да-да, перед вами очередной цикл статей про разработку приложений для андроида. Однако от других этот цикл отличается двумя вещами: неформальным языком (местами очень неформальным) и полным ламерством автора в собственно разработке под андроид. Думаю, в итоге получится этакий акынский цикл: что вижу, то и пою, так что не ждите особой изощрённости и утончённости, покровы тут не срывают.
Статьи будут регулярно появляться в этом блоге, все они пронумерованы и доступны через тег android tutorial. Структура каждой статьи одинаковая: один абзац с описанием и ключевыми словами, чтобы читатель мог сразу определиться, интересует ли его дальнейшее; затем идёт собственно текст с иллюстрациями; а в конце — краткая аннотация следующей статьи, список ссылок и примечания. Поскольку я буду осваивать андроидное программирование параллельно с написанием текста, текст может показаться слегка бессистемным, но тут ничего не поделаешь. Ещё одна цель проекта — обустройство программного окружения андроид-разработчика в линуксе, надеюсь, что к какому-то моменту это получится сделать.
Информация Что такое программное окружение? В моей терминологии — это среда разработки, документация, набор скриптов и вспомогательных программ, причём не по отдельности, а тщательно подогнанные друг к другу. Также в окружение входят способы собственно написания/изменения кода программы, изменение каких-либо параметров проекта, добавление файлов, короче — действия. Программы и действия, тщательно подогнанные друг к другу, чтобы было удобно и легко двигаться.
Естественно, я буду в этом цикле навязывать моё собственное окружение, ибо за неимением никакого сгодится любое (а гугл как раз никакого и не предлагает). Но вы вольны его изменять под свои требования и желания, естественно.
Да, вы только что прочитали информационный блок, это набор абзацев, отделённых от остального текста и снабжённый отдельным заголовком. Информационные блоки играют роль сносок, очень тесно связанных с основным текстом.