Аббревиатура avd расшифровывается как android
Здесь расшифрованы непонятные термины, сокращения, аббревиатуры, которые относятся к платформе Android и программированию под Андроид.
aapt Android Asset Packaging Tool — этот инструмент берет Ваши файлы ресурсов приложения, такие как файл AndroidManifest.xml, и XML-файлы Ваших Activity, и компилирует их в Java-класс R (получается модуль R.java). Класс R.java создается для того, чтобы Вы могли обращаться к ресурсам из кода Java по символическим именам.
ACTION действие
activity класс, некая одиночная сущность в приложении, на которой фокусируется внимание пользователя (т. е. представляет визуальный интерфейс, с которым имеет дело пользователь программы). К примеру, класс Activity заботится о создании для Вас окна, на котором организуется интерфейс взаимодействия с пользователем. Хотя activity это обычно окно, открытое на весь экран, но это необязательно — это могут быть плавающие окна. Activity может быть также вложенным в другое Activity.
ADB Android Debug Bridge.
ADT Android Developer Tools, это плагин для IDE Eclipse, предоставляющий набор инструментов для интеграции в эту среду разработки. Плагин предоставляет доступ ко многим возможностям, чтобы помочь Вам быстро разрабатывать приложения для Android. В ADT встроен графический интерфейс пользователя (GUI) ко многим утилитам командной строки SDK, а также инструментарий для разработки пользовательского интерфейса программ. Подробнее см. [5].
Android.mk это файл с инструкциями для make (файл makefile), указывающий, как компилировать некий код (обычно код C/C++ NDK).
ANR диалог Application Not Responding (приложение не отвечает).
Ant вспомогательная утилита для компиляции приложений Android, написанная на Java. Она была написана как часть открытого проекта Apache. Можно думать об утилите Ant как о своеобразной утилите make. Скрипты для Ant основаны на XML и имеют соответствующую структуру.
API level число, определяющее разновидность API OS Android. Это число, зависящее от версии системы, и оно определяет совместимость приложений Android с системой. Чем больше число, тем свежее релиз системы Android.
AVD Android Virtual device. Специальное устройство, которое нужно для эмулятора Android, когда Вы проверяете работу своей программы. AVD соответствует какому-то смартфону, на котором будет работать разрабатываемая программа, и определяет его свойства — разрешение экрана в точках, версия операционной системы и т. п. Можно задать несколько разных AVD; одно скажем будет с экраном 320×480 и операционной системой Android 2.2, другое 480×800 с Android 3.0.
CDT расшифровывается как C/C++ Development Tooling, специальный плагин для Eclipse, обеспечивающий поддержку native-языка C и C++.
DDMS Dalvik Debug Monitor Server
dpi dots per inch — сколько точек приходится на один дюйм. Характеристика, относящаяся к качеству отображения и печати. В контексте Android означает разрешающую способность экрана устройства.
drawable padding, drawablePadding отступ, расстояние между отдельными графическими элементами. Например, расстояние в пикселах между графикой радиокнопки и текстовой меткой.
gdbserv, gdbserver сервер для отладки с помощью отладчика GDB.
gesture жесты — специальные движения пальцами по тачскрину, предназначенные для организации интерфейса управления пользователя (UI). На картинке ниже показаны обычные для Android жесты.
GWT (из Википедии) Google Web Toolkit — свободный Java-фреймворк, который позволяет веб-разработчикам создавать Ajax-приложения на основе Java. Выпускается под лицензией Apache версии 2.0. GWT делает акцент на повторное использование и кроссбраузерную совместимость.
heap куча, пул динамически распределяемой памяти. Применяется для создания runtime (во время выполнения) переменных, экземпляров объектов и классов. В Android есть две кучи: Managed heap (управляемая куча, применяется для приложений, работающих в виртуальной машине Java Dalvik) и Native heap (традиционная куча, относится к OpenGL/BMP).
Instrumentation базовый класс для реализации в приложении кода инструментария. Когда код работает с включенным инструментарием, этот класс инстанцируется перед любым кодом приложения, что позволяет Вам мониторить все взаимодействия приложения с системой.
INTENT намерение — это механизм для описания одной операции — выбрать фотографию, отправить письмо, сделать звонок, запустить браузер и перейти по указанному адресу. В Android-приложениях многие операции работают через намерения. Наиболее распространенный сценарий использования намерения — запуск другой активности в своём приложении.
IPC Interprocess Communication, взаимодействие между процессами.
jdb java debugger — отладчик кода Java, запускаемый из командной строки.
JDK Java Development Kit.
JDWP Java Debug Wire Protocol — протокол, используемый для обмена между отладчиком и виртуальной машиной Java, в которой выполняется отлаживаемая программа (виртуальная машина иногда называется target VM).
JNI Java Native Interface — интерфейс взаимодействия Java и библиотеками на C/C++. Спецификация (стандарт), предоставленный компанией Sun для двух целей: позволить вызывать низкоуровневый код из кода Java и вызывать Java-методы из низкоуровневого кода. Под низкоуровневым кодом обычно понимается код на языке C/C++.
JRE Java Runtime Environment. Среды разработки под Windows наподобие Eclipse и Android Studio также написаны на Java, поэтому для их выполнения также нужно установить JRE (его можно бесплатно скачать с сайта Oracle).
javah.exe специальная магическая утилита JDK, которая генерит для всех методов классов Java с префиксом native файлы-заголовки *.h, на основе которых потом пишется реализация native-методов (модули кода на языках C и C++).
JVM Java Virtual Machine, виртуальная машина Java. Java-программа всегда работает на так называемой виртуальной машине, так что приложение ничего не знает о физическом устройстве, на котором выполняется. Благодаря такой организации достигается кроссплатформенность Java-программ. Т. е. практически вся забота о железе перекладывается на виртуальную машину. Если для какой-то платформы (телефон, смартфон, ноутбук, компьютер и т. п.) есть реализация виртуальной машины Java, то значит на ней можно запускать Java-код. На Android эта виртуальная машина почему-то называется Dalvik.
inflate метод, который из содержимого layout-файла позволяет создать View-элемент. Слово inflate в этом контексте переводится как расширять, заполнять.
layout в контексте программирования Android это слово обозначает планировку экрана приложения и конфигурацию визуальных элементов, из которых приложение состоит.
LogCat специальная система лога, куда выводятся информационные сообщения, и сообщения об ошибках. Программист с помощью класса android.util.Log также может писать произвольные сообщения в LogCat.
MCC Mobile Country Code, мобильный код страны — идентификатор, характеризующий текущую конфигурацию устройства Android.
MIME Multipurpose Internet Mail Extensions — стандарт, описывающий кодирования различных типов данных, используемые при передаче файлов через электронную почту и протоколы Интернет (HTTP).
MNC Mobile Network Code, код мобильной сети — идентификатор, характеризующий текущую конфигурацию устройства Android.
MTP Media Transfer Protocol — основанный на PTP аппаратно-независимый протокол, разработанный компанией Microsoft для подключения цифровых плееров к компьютеру. Первая версия вышла в 2004 году. В первую очередь MTP рассчитан на передачу данных через USB, но он пригоден и под TCP, и под Bluetooth. В 2008 году MTP-устройствам выделен стандартный USB-класс. Поддерживается Android, начиная с версии Honeycomb 3.0.
native в данном контексте означает языковую среду программирования, отличающуюся от Java (обычно это C/C++). Из-за того, что базовым языком программирования для Android является Java и только Java, то для совместной разработки программ на C и на Java понаделано немало костылей в виде javah.exe. Все внешние методы, которые реализованы вне кода на Java, должны быть объявлены с префиксом native, и для них должны быть сгенерирован заголовочный файл с помощью утилиты javah.exe.
NDK Native-code Development Kit.
OTA Over The Air update service.
PDE Plug-in Development Environment (рабочее окружение для поддержки разработки плагинов) предоставляет инструментарий для создания, разработки, тестирования, отладки, сборки и распространения плагинов Eclipse и других программных компонентов.
PPP Point-to-Point Protocol — двухточечный протокол канального уровня (Data Link) сетевой модели OSI. Обычно используется для установления прямой связи между двумя узлами сети, причем он может обеспечить аутентификацию соединения, шифрование (с использованием ECP, RFC 1968) и сжатие данных. Используется на многих типах физических сетей: нуль-модемный кабель, телефонная линия, сотовая связь и т. д. В контексте ADB протокол PPP применяется поверх протокола USB.
PPPD демон (служба), обслуживающий протокол PPP.
RPC Remote Procedure Call, вызов удаленной процедуры. Здесь по «удаленной» подразумевается, что процедура не здесь, а «далеко». Т. е. вызываемая процедура может находиться не в том же процессе и даже не в той же программе (и иногда даже не на том же компьютере), что и вызывающий процедуру код, а в другом процессе (этот процесс может принадлежать другой программе или операционной системе). RPC обычно используют для организации взаимодействия между процессами (см. IPC).
SDK Software Development Kit (здесь для Android), пакет программного обеспечения для поддержки разработки ПО.
shell (шелл) оболочка командной строки, которая позволяет запускать текстовые команды на экземпляре эмулятора/подключенного устройства. Remote shell — то же самое, просто имеется в виду запуск шелла на удаленном (доступном через сетевое подключение) эмуляторе/устройстве.
splash screen экран, который сразу показывается пользователю при старте приложения (splash буквально переводится как «всплеск»). Цель этого экрана — отвлечь внимание пользователя от ожидания окончания загрузки всех компонентов программы.На splash screen обычно отображают либо логотип разработчика программы (иногда анимированный) вместе (или без него) с индикатором прогресса загрузки. Может быть также отображено традиционное вращающееся кольцо, означающее ожидание.
UI User Interface — интерфейс пользователя. Под этим обычно понимается внешний вид экрана приложения (программы) Android и алгоритм взаимодействия приложения с пользователем.
URI Uniform Resource Identifier, унифицированный (единообразный) идентификатор ресурса. Это текстовая строка, по которой можно найти какие-либо данные, например файл. Простейший пример URI: «file:///tmp/android.txt».
WYSIWYG What You See Is What You Get, в переводе означает «что видишь, то и получишь». Термин относится к визуальным редакторам текста и графики.
Источник
Лучшие инструменты для разработки приложений под Android
Nov 9, 2018 · 8 min read
Android предлагает разработчикам массу возможностей: это универсальная, открытая платформа, используемая миллионами пользователей по всему миру, с удивительно простой в использовании площадкой для распространения приложений. К счастью, существует множество инструментов для Android-разработчиков, которые помогут быстро начать работу. Но еще лучше то, что с каждым годом инструментов становится все больше, а их эффективность постоянно повышается. Еще никогда не было столь благоприятного времени для создания собственного приложения под Android!
Android Studio
Ни один топ “Лучших инструментов д л я разработки приложений под Android” не обходится без Android Studio. Это официальная IDE (интегрированная среда разработки) для Android, созданная компанией Google. Именно поэтому Android Studio является номером один для разработчиков, которые хотят создавать приложения, в соответствии с Material дизайном Google и доступом к расширенным функциям платформы.
IDE — это место, в котором разработчик проводит большую часть своего времени: Android Studio выступает в качестве редактора для выбранного вами языка программирования (он поддерживает Java, C++, а также Kotlin, который с недавних пор тоже стал официальным языком Android), компилятора, который может создавать APK файлы и файловой системы для организации вашего проекта. Кроме этого он включает в себя редактор XML и расширенный редактор макетов. Android Studio предлагает целый набор дополнительных инструментов, некоторые из которых мы рассмотрим в данной статье. К счастью, большинство из них теперь можно скачать единым пакетом. По сути, этот пакет идет в комплекте с Android SDK, но вам все равно придется отдельно загрузить и установить Java JDK. И было бы неплохо, если бы вы прочли инструкцию для новичков по использованию Android Studio.
Разработка при помощи Java и Android SDK имеет несколько крутую кривую обучаемости, но с точки зрения интеграции, поддержки и возможностей — Android Studio нет равных.
AVD Manager
Инструмент AVD Manager идет в комплекте с Android Studio. Аббревиатура AVD расшифровывается как “Android Virtual Device”, поэтому, по сути, это эмулятор для запуска приложений Android на вашем компьютере. Это очень полезный инструмент, который позволяет вам тестировать свои приложения, без необходимости устанавливать их на физические устройства. Что еще более важно, AVD Manager позволяет создавать множество эмуляторов с различными размерами экрана, спецификациями и версиями Android. Вы сможете увидеть, как будет выглядеть ваше творение на любом устройстве, и тем самым обеспечите поддержку среди самых популярных гаджетов. Производительность инструмента постоянно улучшается, особенно с режимом fast virt, который запускает на вашем компьютере версию Android от Intel и устраняет необходимость эмуляции уровня instruction.
Android Device Monitor
Еще один встроенный инструмент — Android Device Monitor, который позволяет проводить мониторинг вашего физического или виртуального устройства во время его работы, и, взамен, получать информацию о том, сколько процессов выполняется по потоку, сетевую статистику, LogCat и т.д. Данный инструмент отлично подходит для тестирования производительности ваших приложений.
Android Debug Bridge
ADB — это инструмент командной строки, с помощью которого можно копировать файлы на устройство и обратно, устанавливать и удалять приложения, выполнять резервное копирование и восстановление на всех устройствах на базе Android, в том числе и на виртуальном. Он идет в комплекте с Android Studio и, по большей части, вам не придется его использовать. Но в редких случаях вам все же придется им воспользоваться. Для этого перейдите в папку, где находится файл adb.exe и откройте командную строку (Shift + RMB>Открыть окно команд).
Unity 3D
Unity 3D — первый инструмент в нашем списке, который не предустановлен в Android Studio. Unity 3D представляет из себя игровой движок и IDE для кроссплатформенной разработки игр. Он очень прост в изучении и обладает большим набором функций для разработки игр. С помощью Android Studio можно создать игру, но в Unity то же самое можно сделать гораздо легче, без уймы потерянного времени и головной боли. Кстати говоря, в Unity есть возможность создавать приложения с дополненной реальностью для Daydream, Cardboard или Gear VR!
Unreal Engine
Unreal Engine — это игровой движок и альтернативный вариант для тех, кто интересуется кроссплатформенной и полнофункциональной разработкой игр. Unreal, также как и Unity, поддерживает разработку под Android, но, в плане графики, игры на Unreal сильно превосходят игры на Unity. Тем не менее Unity имеет лучшую встроенную поддержку мобильных и 2D-творений, поэтому является предпочтительным вариантом для большинства мобильных разработчиков игр. Не имеет значения, какой в итоге вы выберете движок, так как нет причин, по которым вы не можете дать им обоим шанс.
GameMaker: Studio
GameMaker: Studio — еще один инструмент для разработки игр, на этот раз для 2D-игр. Он гораздо проще в использовании, чем Unity или Unreal, и позволяет создавать игры, практически без написания кода. Однако, если хотите добавить немного больше настроек в свою игру, вы можете воспользоваться встроенным языком программирования для начинающих — GML или «GameMaker Language».
Однако из-за простоты использования вы, в какой-то степени, теряете мощность и функциональность. Также стоит отметить, что GameMaker: Studio не является бесплатным ПО, но есть бесплатная пробная версия.
B4A (или Basic for Android) — самый малоизвестный инструмент для разработки Android-приложений от компании Anywhere Software, специализирующейся на концепции быстрой разработки приложений(RAD). Как следует из названия, B4A — это IDE и интерпретатор, который позволяет разработчикам создавать приложения с использованием языка программирования BASIC . Для тех, кто не знаком с BASIC — это процедурный язык программирования, который читается практически как обычный английский язык. Несмотря на то, что B4A — это проект, разработанный всего одним человеком, ему удалось соединить в себе множество полезных расширенных функций, таких как: беспроводная отладка через Bluetooth, визуальный редактор для добавления и упорядочивания представлений и т.п. Данное ПО не бесплатно.
С помощью B4A вы можете делать практически все то же самое, что вы делаете при помощи Java, но гораздо быстрее и с меньшим количеством шаблонов. Любое понижение производительности, по сравнению с другими IDE, минимально. Тем не менее, вам все еще стоит изучить официальный метод создания приложений, особенно если вы хотите использовать конкретные библиотеки (но стоит упомянуть, что библиотеки Java могут быть обернуты для Basic4Android).
Наверное вы уже успели заметить, что инструменты для разработки приложений под Android любят аббревиатуры. AIDE расшифровывается как “Android IDE” и он уникален тем, что работает на самом Android. Это означает, что вы можете создавать приложения, используя свой телефон или планшет, а затем тестировать их на этом же устройстве.
Скорее всего вы уже поняли, что данному IDE не хватает некоторых функций из Android Studio (окей, очень многих функций) и у него нет никакого реального преимущества перед более функциональными IDE для разработки под Android. Он пригоден только для изучения Java и Android SDK, так как предоставляет возможность читать учебник по программированию и, в тот же самый момент, проверять оттуда код в режиме реального времени. Это настоящая находка для тех, кто только-только начал разрабатывать собственные мобильные проекты. AIDE не бесплатен и, независимо от того, хорошее о нем общественное мнение или нет — его стоит купить и попробовать самостоятельно.
Xamarin в Visual Studio
Visual Studio — это IDE от Microsoft, поддерживающий ряд языков, включая C#, VB.net, JavaScript и многое другое. С помощью фреймворка Xamarin, который входит в Visual Studio, можно создавать кроссплатформенные приложения с помощью C#, а затем тестировать их на нескольких устройствах, подключенных к облаку. Это хороший и бесплатный выбор, если вы планируете выпустить приложение и для Android, и для IOS, но не горите желанием писать свой код дважды. Также он является отличным выбором для тех, кто уже знаком с C# и/или Visual Studio. Минусом является то, что Xamarin неудобен в использовании Java библиотек и, как и с любой другой альтернативой Android Studio, вы теряете поддержку Google и расширенные встроенные функции.
Eclipse
До появления Android Studio, в качестве основного инструмента для разработки Android-приложений, разработчики использовали Eclipse. Этот IDE поддерживает несколько различных языков программирования, в том числе и Java с Android SDK. В отличие от Android Studio, Eclipse не предлагает встроенную поддержку и требует более тщательной настройки. На данный момент Google отключила официальную поддержку, поэтому, на самом деле, нет никаких оснований использовать Eclipse, вместо Android Studio. Я включил его в этот список, так как он может быть полезен тем, кто интересуется историей IDE и учится создавать приложения для Android. Так сказать для того, чтобы расширить кругозор.
GitHub
GitHub — это онлайн-сервис для хостинга и совместной разработки IT-проектов. Также он включает в себя систему контроля версий. Это очень удобно, если вам нужно сделать резервную копия вашего проекта или вы ищите людей для совместной разработки, или образец хорошего кода, который смогли бы использовать в качестве примера для разработки собственного проекта. Если вы новичок, то скорее всего будете загружать на свой компьютер код различных проектов, а потом переписывать его по своему желанию. Если вы когда-нибудь работали в команде над разработкой большого приложения, но никогда не использовали GitHub — самое время это исправить!
Другие инструменты для разработки приложений под Android
Помимо перечисленных выше инструментов, существует еще много вариантов, например, PhoneGap, Cordova или IntelliJ IDEA для создания простых приложений, или Andyroid и Blustacks, если вам нужна эмуляция Android без установки Android Studio и AVD Manager. Также разработчикам будет полезно освоить целый ряд других программ, помимо программ программирования. Например, вы можете использовать Photoshop или GiMP для редактирования изображений, а Illustrator для создания качественных векторных изображений. Может быть вам понравится идея создать макет дизайна приложения, сделав его интерактивным при помощи InVision, ну или можно по-старинке нарисовать его вручную. Возможно вы будете использовать Blender для создания 3D-моделей для ваших игр на Android или, возможно, вы будете использовать FL Studio 12 для написания музыки. Но мой вам совет — не делайте все в одиночку, а используйте сервисы для совместной работы с фрилансерами.
Для разработки приложений под Android подойдут многие программы, но подходящие именно вам будут зависеть от вашего стиля работы, предпочтений и целей. Надеюсь этот список дал вам хорошее представление о том, с чего начать свой путь.
Источник