На чём пишут приложения для Android. Программы для создания андроид-приложений Создание эмулятора Android

Каким образом проходит процесс разработки под Android? Выделим несколько основ:

  • В Java файлах вы описываете логику программы — то, что вы хотите, чтобы ваше приложение выполняло.
  • В XML файлах вы разрабатываете макеты — внешний вид.
  • Как только приложение будет написано, нужно использовать инструмент сборки для того, чтобы скомпилировать все файлы и упаковать их вместе в.apk файл, который можно запускать на устройствах Android и/или опубликовать в Google Play.
  • Все утилиты и файлы, которые используются для создания приложения под Android, объединены в интегрированную среду разработки (IDE). IDE — это программа, которую вы откроете для редактирования ваших файлов кода, а также компиляции и запуска.
  • Ранее стандартной IDE для разработки под Android была Eclipse, но сейчас ее заменила более функциональная Android Studio — продукт компании Google.

Вы, конечно же, найдете более глубокие процессы, происходящие за кулисами вышеперечисленных шагов. Например, продвинутые пользователи захотят узнать роль виртуальной машины Dalvik. В конце статьи будут перечислены ссылки на полезные ресурсы, с которыми должен быть знаком каждый Android разработчик. Первым из них является официальная документация от Google .

  • Загрузим и установим Android Studio.
  • Узнаем про запуск и тестирование приложений на устройствах и эмуляторах Android.
  • Создадим простое приложение на Android, которое выводит надпись «Hello World» на экран мобильного устройства.

В конце статьи вы можете ознакомиться с полезными рекомендациями начинающим разработчикам от компании.

Установка среды разработки Android Studio

Начать читать документацию и писать код что бы узнать на что способна платформа - это действительно заманчиво. И мы скоро это сделаем! Однако, для начала работы с платформой Android необходимо настроить среду разработки.

Новичкам в программировании под Андроид особенно важно не торопиться и методично следовать каждому шагу. Даже если вы выполняете шаги правильно, может потребоваться устранить небольшую проблему с настройкой среды в зависимости от конфигурации вашей системы или версии продукта. Для этого используйте поисковые сервисы. Особенно можно выделить ресурс StackOverflow .

Важно не допустить, чтобы какие-либо подводные камни препятствовали вашей конечной цели — обучиться Android программированию. Известно, что даже профессионалы иногда испытывают определенные проблемы с настройкой рабочего окружения. В таких случаях бывает важно знание командной строки. Если вы хотите лучше ознакомиться с этим инструментом, внизу приводится ссылка на хороший вводный .

Наряду с тренировками в синтаксисе, важно обучить себя мышлению успешного программиста, которое не будет принимать сообщение об ошибке file X not found окончательным приговором. Такое мышление легко тренируется вами в случаях, если вы не сдаетесь и ищите решение возникшей проблемы.

Перейдите на страницу Android Studio developer.android.com/studio/index.html и найдите кнопку для загрузки последней версии для своей платформы.

Кликните по кнопке загрузки и вас попросят ознакомиться с правилами и условиями использования программного продукта. После внимательного прочтения (как вы всегда это делаете) и принятия, начинается загрузка. Вероятно, это займет несколько минут. После этого вы можете установить Android Studio аналогично любой другой программе. На начальной странице загрузки содержатся инструкции по установке под Mac и Windows.

Теперь, когда вы установили Android Studio, давайте запустим его! Запустите Android Studio. Программа спросит, хотите ли вы импортировать свои настройки. Поскольку вы начинаете с нуля, просто выберите второй пункт и продолжайте.

Вы должны увидеть красивый загрузочный экран в стиле Material Design.

По окончанию загрузки, вы попадете на экран приветствия.

Даже в том случае, если вы только что загрузили Android Studio, у вас может быть не самая последняя версия. Чтобы избежать проблем с версиями в дальнейшем, нажмите кнопку «Check for updates now» и, если необходимо, выполнить все инструкции для получения последней версии. Иногда Studio автоматически информирует вас о том, что есть обновление с помощью экрана, подобного этому:

В этом случае всегда выбирайте Update and Restart. Отлично! Мы успешно справились с установкой среды для разработки.

Создание первого Android проекта

Пришло время создать первый проект. Начнем с простого. У программистов принято называть первую программу «Hello World». Давайте следовать этой традиции, а затем сделаем несколько небольших изменений, чтобы приложение использовало ваше имя для приветствия. В конце вы сможете загрузить его на устройство и показать своим знакомым. Android Studio имеет небольшой пошаговый инструмент, который поможет вам создать свой проект. Нажмите «New Project» на стартовом экране:

Заполните его подобным образом. Не стесняйтесь заменить «example» в имени пакета на что-то еще, чтобы удалить предупреждение внизу экрана. Вы также можете установить местоположение проекта, указав любую папку на жестком диске

Для раскрывающихся версий SDK обратите внимание на раздел «Описание» в нижней части диалогового окна. В нем объясняется, для чего предназначена каждая настройка.

Установите минимальный требуемый SDK, как показано на снимке экрана. Это устанавливает минимальную версию Android, необходимую для запуска приложения. Выбор этого значения для ваших собственных проектов — это вопрос балансировки возможностей SDK, которые вы хотите, и устройств, которые будут поддерживаться.

Для получения дополнительной информации о версиях API и их использовании, на сайте для разработчиков под Android существует специальная страничка Dashboards https://developer.android.com/about/dashboards/index.html.

После выбора версии, открывается экран выбора стартового шаблона. Вы можете создать приложение , которое уже взаимодействует с api google maps и отображает карту. В нашем тестовом примере выбираем Empty Activity и нажимаем кнопку «Next».

И сейчас вы находитесь на последнем шаге процесса создания приложения. Прежде чем нажать «Finish», обратите внимание на некоторые вещи. Тут вы впервые сталкиваетесь с упоминаниями о главных архитектурных компонентах любого приложения.

  • — это первое, но не последнее упоминание слова Activity. В контексте Android, Activity обычно рассматривается как «экран» в вашем приложении. Этот элемент очень гибкий. Когда Android Studio создает класс MainActivity, он наследует его от класса Activity из пакета Android SDK. Те, кто знаком с объектно-ориентированным программированием, понимают эту концепцию, но для новичков, это, в основном, означает, что ваша MainActivity будет настраиваемой версией Activity.

  • Layout Name — макет того, что будет показано пользователю, определен в специальном виде Android XML. Вы скоро научитесь читать и редактировать эти файлы.

Нажимаем Finish. Некоторое время займет создание и загрузка проекта. Через некоторое время Android Studio завершит билд вашего проекта. Конечно, проект пока пуст, но в нем есть все необходимое для запуска на Android-устройстве или эмуляторе.

После загрузки проекта вы просматриваете файл макета в формате XML. Прежде чем перейти к программированию под Android, давайте поговорим о том, каким образом мы можем запустить это приложение. Пришло время сказать «Hello world!».

Запуск приложения на эмуляторе

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

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

Нажмите на кнопку Run в виде зеленой стрелки.

Придется подождать некоторое время, пока эмулятор загрузится и как только он будет готов, вы увидите что-то вроде этого:

Мои поздравления! Вы сделали свое первое приложение для Android!

И так… Почему и как это сработало?

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

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

Структура Android проекта: Команда

Каждая хорошая команда состоит из людей, которые выполняют отведенные им роли. Вы хотите выполнить работу правильно? Вам нужна правильная команда. В проектах Android есть несколько ключевых элементов, и каждый из них должен сыграть определенную роль:

Java: Профессионал

Это часть вашего кода, которая отвечает за логику приложения. Ваш код будет находиться в каталоге src\main\java в основной папке проекта. Для изучения Java можно посоветовать книгу Брюса Эккеля «Философия Java»;

Resources: Артист

Недостаточно просто сделать Android приложение, оно должно быть еще и стильным. Ваше приложение никогда не будет выделяться, если у него нет четких значков и изображений, хорошо продуманных макетов и, возможно, даже плавных анимаций.

При инициализации, папка содержит следующие папки:

  • drawable, в которой хранятся иконки. Сейчас там лежит только стандартная иконка приложения.
  • layout с XML файлами, которые представляют собой дизайны экранов.
  • menu c XML файлами списков элементов, которые будут отображаться в панели действий.
  • values с XML файлами, содержащими размеры, цвета, строковые константы и стили.

AndroidManifest.xml: Босс

Этот XML-файл информирует вашу систему о требованиях к оборудованию и программному обеспечению приложения и содержит его версию имя и значок. Манифест также содержит информацию про все Activity в приложении. Вам нужна работа, выполняемая вашим приложением? Сначала поговорите с начальником.

Внесение изменений

Перейдите к res/values/strings.xml и дважды щелкните файл. Когда вы откроете файл, вы увидите два строковых ресурса в XML.

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

Измените строку hello_world, которую приложение отображает на экране. Измените ее содержимое на нечто более личное, например используйте ваше собственное имя. Получится что-то вроде:

Matt is learning Android!

Нажмите Run. Приложение должно перезапуститься и вы увидите персональное сообщение:

Мы поздравляем вас - вы сделали первый проект и научились редактировать исходный код. Первый шаг в Android программировании сделан. Желаем удачи на этом непростом, но безумно интересном пути! Если вам нужна профессиональная разработка приложения для Android , обращайтесь к специалистам Infoshell.

Прежде чем начать разрабатывать приложения под Android, рассмотрим существующие инструменты, подходящие для этих целей. Можно выделить необходимые инструменты, без которых разработка мобильных приложений под Android просто невозможна. С другой стороны, существует большое количество вспомогательных систем, в какой-то мере упрощающих процесс разработки.

К обязательным инструментам относится Android SDK - набор средств программирования, который содержит инструменты, необходимые для создания, компиляции и сборки мобильного приложения.

Рассмотрим кратко наиболее важные инструменты, входящие в состав Android SDK:

Мы рассмотрели основные инструменты, входящие в состав Android SDK, разумеется, не все и недостаточно подробно. Для более серьезного изучения инструментов имеет смысл обратиться к сайту разработчиков (http://developer.android.com/tools/help/index.html). Для разработки мобильных приложений под Android уверенного владения инструментами из SDK вполне достаточно. Если же возникают какие-то вопросы, дополнительные инструкции по созданию проектов, компиляции, запуску из командной строки содержатся в руководстве от Google (http://developer.android.com/training/basics/firstapp/index.html).

В современных условиях разработка ПО в большинстве случаев ведется с использованием интегрированных сред разработки (IDE). IDE имеют несомненные достоинства: процесс компиляции, сборки и запуска приложения обычно автоматизирован, в связи с чем для начинающего разработчика создать свое первое приложение труда не составляет. Но чтобы заниматься разработкой всерьез, необходимо потратить силы и время на изучение возможностей самой среды. Рассмотрим IDE, пригодные для разработки под Android 1Разумеется, обзор не претендует на полноту и скорей всего найдутся не охваченные им инструменты (а то и появятся новые), но самые популярные на конец 2013 года будут рассмотрены. .

Для начала поговорим о двух средах разработки, которые рекомендует Google: Android IDE (ADT) и Android Studio.

Android IDE - среда разработки под Android, основанная на Eclipse. Предоставляет интегрированные инструменты для разработки, сборки и отладки мобильных приложений. В данном курсе Android IDE выбрана в качестве основной среды разработки. Возможности этой среды более подробно рассмотрены в первой лабораторной работе. Также там даны рекомендации по установке и настройке среды, созданию и запуску первого приложения как на эмуляторе, так и на реальном устройстве.

Android Studio - среда разработки под Android, основанная на IntelliJ IDEA. Подобно Android IDE, она предоставляет интегрированные инструменты для разработки и отладки. Дополнительно ко всем возможностям, ожидаемым от IntelliJ, в Android Studio реализованы:

  • поддержка сборки приложения, основанной на Gradle;
  • специфичный для Android рефакторинг и быстрое исправление дефектов;
  • lint инструменты для поиска проблем с производительностью, с юзабилити, с совместимостью версий и других;
  • возможности ProGuard (утилита для сокращения, оптимизации и обфускации кода) и подписи приложений;
  • основанные на шаблонах мастера для создания общих Android конструкций и компонентов;
  • WYSIWYG редактор, работающий на многих размерах экранов и разрешений, окно предварительного просмотра, показывающее запущенное приложение сразу на нескольких устройствах и в реальном времени;
  • встроенная поддержка облачной платформы Google.

Перейдем к рассмотрению других инструментов, пригодных для разработки мобильных приложений под Android. Начнем с инструментов от Intel - Intel XDK и Intel Beacon Mountain.

Intel XDK позволяет легко разрабатывать кроссплатформенные мобильные приложения; включает в себя инструменты для создания, отладки и сборки ПО, а также эмулятор устройств; поддерживает разработку для Android, Apple iOS, Microsoft Windows 8, Tizen; поддерживает языки разработки: HTML5 и JavaScript.

Последняя тема данного курса полностью посвящена изучению нового поколения инструментальных средств разработки мобильных HTML5-приложений и Intel XDK, предполагается разработка мобильного приложения с использованием этих инструментов.

Intel Beacon Mountain - среда разработки, позволяющая создавать приложения для устройств, работающих под управлением ОС Android. Предоставляет инструменты необходимые для проектирования, разработки, отладки и оптимизации приложений под Android. Освобождает разработчика от необходимости поддерживать систему разработки в актуальном состоянии, следит за обновлениями и добавляет их в среду разработки по мере появления. Поддерживает разработку для целевых платформ на основе процессоров Intel Atom и ARM.

Beacon Mountain построена на основе Android IDE (Eclipse, Android ADT, Android SDK), для более серьезной разработки и оптимизации добавлены следующие инструменты Intel:

  • Intel* Hardware Accelerated Execution Manager (Intel* HAXM) - аппаратно поддерживаемый процессор виртуализации, использующий технологию виртуализации Intel* (Intel* VT) для ускорения работы эмулятора в среде разработки.
  • Intel* Graphics Performance Analyzers (Intel* GPA) System Analyzer поддерживает мобильные устройства с процессором Intel Atom под управлением ОС Android. Позволяет разработчикам оптимизировать загруженность системы при использовании процедур OpenGL, предоставляя возможность получать множество системных метрик в реальном времени, отображающих загруженность CPU, GPU и OpenGL ES API. Разработчик может запустить несколько графических экспериментов для выявления узких мест в обработке графики.
  • Intel* Integrated Performance Primitives (Intel* IPP) Preview - библиотека оптимизированной обработки данных и изображений, поддерживающая мобильные устройства с платформой Intel под управлением ОС Android. Preview версия является частью полной версии Intel IPP, которая тоже поддерживает ОС Android.
  • Intel* Threading Building Blocks (Intel* TBB) - широко используемая, признанная библиотека шаблонов С++ для создания масштабируемых приложений и увеличения производительности. Поддерживает мобильные устройства с платформой Intel под управлением Android. Проверенные алгоритмы позволяют разработчикам эффективно распараллелить С++ мобильные приложения, что повышает производительность при снижении энергетических затрат.

Загрузить Intel Beacon Mountain можно по ссылке

Нельзя обойти вниманием инструментарий Marmalade SDK.

Marmalade SDK - кроссплатформенное SDK от Ideaworks3D Limited. Представляет собой набор библиотек, образцов, инструментов и документации, необходимых для разработки, тестирования и развертывания приложений для мобильных устройств. Используется, в основном, для разработки игр. Многие получившие признание игры, такие как Cut the Rope и Plants vs. Zombies, были разработаны с использованием этого программного средства. К сожалению, Marmalade SDK представляет собой проприетарное программное обеспечение (самая дешевая лицензия $15 в месяц) и не может быть рекомендована в данном учебном курсе, но читатель может самостоятельно попробовать бесплатную 30-дневную версию, доступную по ссылке https://www.madewithmarmalade.com/free-trial .

Нельзя не сказать об отечественных разработках. Например, компания 1С идет в ногу со временем, версия платформы 1С 8.3 позволяет разрабатывать мобильные приложения. Программный продукт "1С:Предприятие 8. Расширение для карманных компьютеров" обеспечивает возможность работы с данными информационных баз 1С:Предприятия 8 на мобильных устройствах (карманных компьютерах, коммуникаторах, терминалах сбора данных), а также на персональных компьютерах (в том числе ноутбуках), не имеющих прямого доступа к информационным базам 1С:Предприятия 8.

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

B4A (или Basic for Android) - самый малоизвестный инструмент для разработки Android-приложений от компании Anywhere Software, специализирующейся на концепции быстрой разработки приложений(RAD). Как следует из названия, B4A - это IDE и интерпретатор, который позволяет разработчикам создавать приложения с использованием языка программирования BASIC. Для тех, кто не знаком с BASIC -  это процедурный язык программирования, который читается практически как обычный английский язык. Несмотря на то, что B4A - это проект, разработанный всего одним человеком, ему удалось соединить в себе множество полезных расширенных функций, таких как: беспроводная отладка через Bluetooth, визуальный редактор для добавления и упорядочивания представлений и т.п. Данное ПО не бесплатно.

С помощью B4A вы можете делать практически все то же самое, что вы делаете при помощи Java, но гораздо быстрее и с меньшим количеством шаблонов. Любое понижение производительности, по сравнению с другими IDE, минимально. Тем не менее, вам все еще стоит изучить официальный метод создания приложений, особенно если вы хотите использовать конкретные библиотеки (но стоит упомянуть, что библиотеки Java могут быть обернуты для Basic4Android).

AIDE

Наверное вы уже успели заметить, что инструменты для разработки приложений под 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 является наиболее распространенной в сфере мобильных устройств. Свою популярность Android получил во многом благодаря открытому исходному коду и политике Google, разрешающую производителям мобильных устройств безвозмездно использовать платформу Android для своей продукции. Android используется большинством крупных компании-производителей мобильных устройств, таких как Samsung, HTC, Sony, Huawei.

Android Studio – это интегрированная среда разработки (IDE) для работы с платформой Android, выпущенная компанией Google .

Изначально Google рассчитывала давать версиям Android имена известных роботов, но отказалась от этой идеи из-за проблем с авторскими правами. Каждая версия системы, начиная с версии 1.5, получает собственное кодовое имя на тему сладостей. Кодовые имена присваиваются в алфавитном порядке латинского алфавита .

Платформа Android состоит из операционной системы, основанной на ядре операционной системы Linux, встроенных мобильных приложений и переходного программного обеспечения. Во главе создания и совершенствования Android платформы стоит компания Google.

Android позволяет фоновое выполнение какого-либо действия, поддерживает двумерную и трехмерную графику, доступ к файловой системе и базе данных, обеспечивает обширную библиотеку элементов пользовательского интерфейса.

Архитектура системы Android состоит из следующих уровней:

1) Ядро операционной системы Linux.

2) Библиотеки и система выполнения.

3) Уровень каркаса приложений наделяет разработчика доступом к интерфейсу прикладного программирования API (application programming interface).

4) Уровень приложений – комплекс стандартных приложений.

На рисунке 1 представлена архитектура системы Android.

Рисунок 1. Изображение архитектуры системы Android

Разработчик, как правило, работает с уровнями приложений и каркаса приложений. Библиотеки, система выполнения и ядро операционной системы Linux от разработчика скрыты.

Одним из важнейших инструментов для разработки Android-приложений является универсальное средство разработки мобильных приложений для операционной системы Android (Android SDK) – комплекс средств программирования, содержащий инструменты, которые необходимы для создания, компиляции и сборки мобильного приложения.

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

Существует две преимущественно популярные среды разработки, рекомендованные Google: Android IDE (ADT) и Android Studio.

Android IDE – среда разработки мобильных приложений под операционную систему Android, основанная на интегрированной среде разработки приложений Eclipse. Содержит встроенные инструменты для создания, компиляции, сборки и отладки мобильных приложений.

Android Studio – среда разработки мобильных приложений под операционную систему Android, основанная на интегрированной среде разработки программного обеспечения IntelliJ IDEA. Аналогично среде Android IDE, Android Studio содержит встроенные инструменты для создания и отладки мобильных приложений. Дополнительно ко всем возможностям в Android Studio реализованы:

Поддержка системы автоматической сборки Gradle;

Уникальная система рефакторинга кода;

Инструменты для поиска и устранения различных проблем;

Окно предварительного просмотра, которое показывает запущенное приложение сразу на нескольких устройствах и в реальном времени;

Поддержка облачной платформы Google Cloud Platform.

В данный момент компания Google прекращает поддержку инструментов для разработки в операционной системе Android для среды Android IDE.

В ходе изучения на практике среды разработки мобильных приложений Android Studio и написания небольших программ (приложение «Заметки» для создания пометок, приложение для определения долготы и широты объекта, приложение, определяющее местоположение с помощью Google Maps, приложение «Фонарик») были определены следующие недостатки Android Studio:

1) Необходимо иметь базовый уровень программирования на языке Java и знания английского языка.

2) Вследствие постоянного сопровождения разработчика системой автоматической сборки (Gradle) значительно замедляется время компиляции проектов.

3) Высокие системные требования для компьютера разработчика.

4) Стандартные эмуляторы требовательны по отношению к системным ресурсам, долго включаются и не обладают всеми возможностями реальных смартфонов.

5) Отсутствие русскоязычной справки.

Достоинства Android Studio:

1) Удобный дизайн.

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

3) Встроенный комплекс средств разработки SDK (software development kit), выдает уведомление с установкой необходимого API для запуска старого проекта.

4) Удобная структура проекта.

5) Наличие логов для отслеживания ошибок, процессов и потоков.

6) Наличие достаточно большого количества литературы на русском языке.

Начинающим разработчикам, которые только начали изучать программирование, будет достаточно сложно работать в данной системе, так как она подразумевает наличие некоторых навыков и опыта в программировании и разработке приложений. Тем не менее, среда программирования Android Studio быстро развивается и программисты, работающие с данной системой, пользуются большим спросом.

Список литературы:

  1. Энциклопедия Википедия: сайт – [Электронный ресурс] – Режим доступа. URL:https://ru.wikipedia.org/wiki/Android_Studio (дата обращения: 25.01.2017).
  2. Энциклопедия Википедия: сайт – [Электронный ресурс] – Режим доступа. URL:https://ru.wikipedia.org/wiki/История_версий_Android (дата обращения: 25.01.2017).

В этой статье предполагается, что вы используете среду разработки Eclipse и плагин Android Developer Tools для Eclipse. Простейшим путем для того, чтобы начать разработку приложений Android, станет загрузка набора средств разработки Android SDK и среды разработки Eclipse IDE (см. ). Разработка на Android может вестись на Microsoft® Windows®, Mac OS X, или Linux.

Приложения Android пишутся на языке Java, но компилируются и выполняются в виртуальной машине Dalvik (a non-Java virtual machine). Написание кода на языке Java в Eclipse очень интуитивно; Eclipse предоставляет широкие возможности Java, включая контекстно-зависимую помощь и подсказки с предлагаемым кодом. Когда код на Java будет скомпилирован, плагин Android Developer Tools удостоверится в том, что приложение правильно упаковано, включая файл AndroidManifest.xml.

Приложения Android можно разрабатывать не используя Eclipse и плагин Android Developer Tools, но для этого нужны познания в Android SDK.

Android SDK распространяется как файл ZIP, который можно распаковать в папку на вашем жестком диске. Поскольку уже было несколько обновлений SDK, рекомендуется организовать вашу среду разработки таким образом, чтобы можно было легко переключаться между разными инсталляциями SDK. В SDK входят:

- android.jar
Архивный файл Java, содержащий все классы Android SDK, необходимые для создания приложений

- documention.html и папка docs
Документация SDK, предоставляемая локально и в сети Интернет. В основном она представлена в форме JavaDocs, обеспечивая легкость навигации по множеству пакетов SDK. Документация содержит также хорошо организованное Руководство разработчика и ссылки обширного сообщества Android.

-Папка Samples
Папка Samples содержит исходные коды множества приложений, включая ApiDemo, использующее многие из функций API. Приложение-пример может послужить хорошим началом разработки приложений Android.

-Папка Tools
Содержит все инструменты командной строки для создания приложений Android. Наиболее часто используемым и наиболее полезным инструментом является утилита adb (Android Debug Bridge).

-Папка usb driver
Папка, содержащая драйверы, необходимые для обеспечения связи между средой разработки и устройством Android, таким, как смартфон G1 или Android Dev 1. Эти файлы необходимы только для разработчиков на платформе Windows.
Приложение Android может быть запущено на реальном устройстве или на Эмуляторе Android, который поставляется вместе с Android SDK. На Рисунке 3 представлен главный экран Эмулятора Android.

Рисунок 3. Эмулятор Android

Android Debug Bridge
Утилита командного процессора adb поддерживает несколько необязательных аргументов командной строки, которые обеспечивают такие мощные возможности, как копирование с устройства и на него. Аргумент командной строки позволяет соединяться непосредственно с телефоном и выдавать элементарные команды командного процессора.
На Рисунке 4 представлена утилита командного процессора adb, действующая по отношению к реальному устройству, соединенному при помощи кабеля USB к лэптопу под управлением Windows.

Рисунок 4. Использование утилиты adb


В данном окружении командной строки вы можете:
- Отобразить сетевую конфигурацию с указанием различных сетевых соединений. Обратите внимание на соединения:
-- локальное соединение или соединение с обратной связью.
-- tiwlan0 - WiFi соединение с адресом, предоставленным локальным сервером DHCP.
- Отобразить содержимое переменной окружения PATH.
- Выпольнить команду su для получения прав суперпользователя.
- Перейти в папку /data/app, где хранятся приложения пользователя.
- Сделать распечатку папок, можно увидеть единичное приложение. Файлы приложений Android в действительности являются архивными файлами, которые можно просмотреть при помощи WinZip или другой программы. Расширение - apk.
- Выдать команду ping для определения, доступен ли Google.com.
В данном окружении командной строки вы также можете взаимодействовать с базами данных SQLite, запускать программы, выполнять множество других задач системного уровня. Это довольно впечатляющая функция, учитывая, что вы соединены с телефоном.