Учтите, что студия постоянно обновляется, поэтому внешний вид окон и другие детали могут отличаться от данного примера. Большинство уроков на сайте сейчас используют версию 2.3. 25 октября 2017 года вышла версия 3.0, в которой многое поменялось. В этой статье я постарался заменить все картинки под новую версию.
В качестве языка программирования для Android используется Java. Для создания пользовательского интерфейса используется XML.
Здесь следует сделать небольшое отступление. В Android Studio 3.0 добавлена полноценная поддержка нового языка Kotlin, разработанная котанами. Google объявила о своих планах сделать новый "кошачий" язык основным. Но вы должны понимать, что за предыдущие годы было написано огромное количество примеров на Java. Если вы новичок в программировании, то лучше в первый период обучения полностью сосредоточиться на Java, вам будет проще находить ответы на вопросы. Kotlin от вас никуда не денется, перейти потом на него будет проще, а вот обратный процесс будет проходить тяжелее. Когда немного освоитесь в Java, то можете параллельно изучать примеры на Kotlin. Google сейчас активно переписывает документацию под Kotlin, но до полного перехода ещё далеко, даже меньше 50%. Чуть позже я также буду делать уроки под Kotlin, но это будет не скоро.
По традиции, заложенной в прошлом веке, каждый программист должен был написать «Hello World!» (Здравствуй, Мир!) в качестве первой программы. Времена меняются, и программа «Hello World!» уже встроена в среду разработки под Android в целях совместимости, а современные программисты должны писать программу Hello Kitty! (Привет, киска!). Согласитесь, что здороваться с котёнком имеет больше здравого смысла, чем с каким-то миром.
Поэтому разобьём задачу на две части. Сначала запустим готовую программу без написания кода, чтобы убедиться, что весь инструментарий корректно установился, и мы можем создавать и отлаживать программы. А потом уже напишем свою первую программу.
Запускаем Студию и выбираем File | New | New Project... . Появится диалоговое окно мастера.
Поле Application name - понятное имя для приложения, которое будет отображаться в заголовке приложения. По умолчанию у вас уже может быть My Application . Заменим на . В принципе вы могли написать здесь и Здравствуй, мир! , но у Android есть замечательная возможность выводить нужные строки на телефонах с разными языками. Скажем, у американца на телефоне появится надпись на английском, а у русского - на русском. Поэтому в первоначальных настройках всегда используются английские варианты, а локализованные строки подготовите позже. Необходимо сразу вырабатывать привычку к правильному коду.
Поле Company Domain служит для указания вашего сайта. По умолчанию там может появиться ваше имя как пользователя компьютера. Если сайт у вас есть, то можете ввести его адрес, либо придумайте какое-нибудь название. Введённое имя запоминается и будет автоматически подставляться в следующих новых проектах. Экономия, однако.
Третье поле Project location позволяет выбрать место на диске для создаваемого проекта. Вы можете создать на своём диске отдельную папку для своих проектов и хранить свои программы в ней. Студия запоминает последнюю папку и будет автоматически предлагать сохранение в ней. В случае необходимости вы можете задать другое местоположение для отдельного проекта через кнопку с тремя точками.
Поле Package name формирует специальный Java-пакет на основе вашего имени из предыдущего поля. В Java используется перевёрнутый вариант для наименования пакетов, поэтому сначала идёт ru , а потом уже название сайта. Пакет служит для уникальной идентификации вашего приложения, когда вы будете его распространять. Если сто человек напишет сто приложений с названием "Cat", то будет непонятно, где приложение, написанное разработчиком Василием Котовым. А приложение с именем пакета ru.vaskakotov.cat проще найти. Обратите внимание, что Гугл в своей документации использует пакет com.example в демонстрационных целях. Если вы будете просто копировать примеры из документации и в таком виде попытаетесь выложить в Google Play, то у вас ничего не выйдет - это название зарезервировано и запрещено к использованию в магазине приложений. Кнопка Edit позволяет отредактировать подготовленный вариант. Например, вы пишете приложение на заказ и вам нужно использовать имя пакета, утверждённое заказчиком, а не ваш вариант по умолчанию.
Ниже представлены два варианта для написания программ на C++ и Kotlin. Эти варианты мы пока не рассматриваем. Когда вы будете писать на Kotlin, то ставьте соответствующий флажок. Впрочем, вы можете сконвертировать проект с Java на Kotlin и позже средствами студии.
Нажимаем на кнопку Next и переходим к следующему окну. Здесь мы выбираем типы устройств, под которые будем разрабатывать своё приложение. В большинстве случае мы будет писать для смартфонов и планшетов, поэтому оставляем флажок у первого пункта. Также вы можете писать приложения для Android TV, Android Wear, Android Auto и Android Things.
Кроме выбора типа устройств, надо выбрать минимальную версию системы, под которую будет работать приложение. Выберите свой вариант. На данный момент Гугл поддерживает версии, начиная с API 7, выпуская специальные библиотеки совместимости для старых устройств. Но вы можете выбрать более современный вариант. У меня в наличии телефон с минимальной версией Android 4.4, поэтому я выставляю этот вариант.
Папка java содержит три подпапки - рабочую и для тестов. Рабочая папка имеет название вашего пакета и содержит файлы классов. Сейчас там один класс MainActivity . Папки для тестов можете не трогать. Если вы знаете, как работают пакеты в Java, то можете создавать новые папки и подпапки.
Папка res содержит файлы ресурсов, разбитых на отдельные подпапки.
Со временем вы будет свободно ориентироваться в этих папках, пока не забивайте себе голову.
Как уже говорилось, программа Hello, World! уже встроена в любой новый проект, поэтому вам даже не нужно ничего писать. Просто нужно запустить проект и получить готовую программу!
Для изучения вам нужно открыть два файла - MainActivity (скорее всего он уже открыт) и activity_main.xml (res/layout ) в центральной части Студии. Если файлы не открыты, то откройте их самостоятельно двойным щелчком для редактирования (или просмотра). Таким способом вы можете открыть любой нужный вам файл.
Не будем пока изучать код, а просто нажмём на зелёный треугольник Run (Shift+F10) на панели инструментов в верхней части студии для запуска приложения.
Если вы не настроили эмулятор, значит вы не читали предыдущий урок. Настройте сначала эмулятор и запускайте проект снова. Либо подключайте реальное устройство.
Если всё сделали правильно, то в эмуляторе или на устройстве загрузится ваша программа. Поздравляю!
Итак, если программа запустилась, то увидите окно приложения с надписью . Заголовок у программы будет также . Все эти строки можно найти в файле res/values/strings.xml и отредактировать при желании.
Теперь посмотрим на код. Сначала изучим activity_main.xml .
Смотреть его можно в двух режимах - Design и Text .
Откройте в режиме Text .
Это новый код шаблона, который появился в Android Studio 2.3 в марте 2017 года. Раньше использовался другой код с RelativeLayout (а ещё раньше и другой код с LinearLayout ). Если вам будут попадаться старые примеры, то в студии есть контекстное меню, которое поможет сконвертировать старый код в новый.
Немного о XML-коде. Имеется специальный контейнер ConstraintLayout , в котором размещён компонент TextView , предназначенный для вывода текста.
Теперь посмотрим на Java-код (MainActivity.java )
Package ru.alexanderklimov.helloworld; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } }
Перед вами открыт файл класса, где имя класса MainActivity совпадает с именем файла с расширением java (это правило, установленное языком Java). В первой строке идет название пакета - его мы задавали при создании проекта (Package Name ). Далее идут строки импорта необходимых классов для проекта. Для экономии места они свёрнуты в одну группу. Разверните её. Если однажды вы увидите, что имена классов выводятся серым цветом, значит они не используются в проекте (подсказка Unused import statement ) и можете спокойно удалить лишние строки. Также они могут удаляться автоматически (настраивается).
Далее идёт объявление самого класса, который наследуется (extends ) от абстрактного класса Activity . Это базовый класс для всех экранов приложения. Не исключено, что у вас будет AppCompatActivity , если при создании проекта вы оставили поддержку старых устройств (флажок Backwards Compatibilty (App Compat) ). В старых версиях не было плюшек, которые появились после Android 4, поэтому для них была создана специальная библиотека совместимости, которая позволяет использовать новинки от новых версий Android в старых программах. Класс AppCompatActivity как раз и относится к библиотеке совместимости. Считайте её бедным родственником базовой Activity . У неё есть все нужные методы и вспомогательные классы, но названия могут немного различаться. И смешивать названия нельзя. Если уж используете класс из библиотеки совместимости, то методы берите соответствующие.
На разных этапах использовались разные названия класса активности, которые могут вам встретиться в старых проектах. Например, сначала использовался FragmenActivity , затем ActionBarActivity , а 22 апреля 2015 года вышла новая версия библиотеки совместимости и на данный момент используется новый класс AppCompatActivity .
В самом классе мы видим метод onCreate() – он вызывается, когда приложение создаёт и отображает разметку активности. Метод помечен как protected и сопровождается аннотацией @Override (переопределён из базового класса). Аннотация может пригодиться вам. Если вы сделаете опечатку в имени метода, то компилятор сможет предупредить вас, сообщив об отсутствии такого метода у родительского класса Activity .
Разберём код метода.
Строка super.onCreate(savedInstanceState); – это конструктор родительского класса, выполняющий необходимые операции для работы активности. Эту строчку вам не придётся трогать, оставляйте без изменений.
Вторая строчка setContentView(R.layout.activity_main); представляет больший интерес. Метод setContentView(int) подключает содержимое из файла разметки. В качестве аргумента мы указываем имя файла без расширения из папки res/layout . По умолчанию проект создаёт в нём файл activity_main.xml . Вы можете переименовать файл или создать свой файл с именем cat.xml и подключить его к своей активности. Тогда код будет выглядеть так:
SetContentView(R.layout.cat);
Чтобы ваш код был аккуратным, старайтесь придерживаться стандартов. Если вы создаёте разметку для активности, то используйте префикс activity_ для имени файла. Например, разметка для второй активности может иметь имя activity_second.xml .
Создать новое мобильное приложение — задача далеко не простая. Для этого нужно осваивать языки программирования и писать софт с нуля. Однако можно воспользоваться специальными конструкторами, которые упрощают работу за счет унификации множества задач и интерфейсов. Большинство подобных сервисов требуют оплату за предоставленные возможности, однако среди них есть и полностью бесплатные программы. В данной статье мы подробно рассмотрим, как можно создать свое приложение для Android при помощи нескольких популярных конструкторов.
[ Скрыть ]
Первым конструктором для создания приложений под ОС Андроид рассмотрим TheAppBuilder. Эта программа является десктопным сервисом с некоторыми дополнительными онлайн инструментами. С ее помощью можно самостоятельно создать приложение под такие мобильные ОС как Андроид и iOS.
Для разработки новых программ TheAppBuilder использует конструктор и стандартные шаблоны — для спорта, науки, бизнеса и другие. Также здесь присутствует большой набор инструментов для создания дизайна. Кроме этого за 5 долларов можно полностью отключить назойливую рекламу в созданном приложении. После того как вы закончили свой проект, его желательно раскрутить, что бы он пользовался спросом.
Конструктор TheAppBuilder будет оптимальным решением для программирования новичкам и создания приложений, которые могут быть весьма полезными для пользователей. К основным его достоинствам следует отнести такие пункты:
К слабым сторонам этого сервиса можно отнести то, что интерфейс конструктора не доступен на русском языке. Эта проблема частично решаемая, ведь можно воспользоваться переводчиком.
Из этого видео вы узнаете о создании приложений на Android с помощью приложения The AppBuilder.
Если вы не знаете как создать приложение для Android, то можно воспользоваться этим сервисом. Конструктор AppsGeyser использует в качестве инструмента довольно простой и наглядный мастер шаблонов. Кроме этого, он позволяет создать свое приложение абсолютно бесплатно.
С его помощью можно достаточно просто сконвертировать какой-либо файл с вашего сайта в полезное приложение, а в дальнейшем распространить apk дистрибутив через фирменный магазин Google play. Создаваемые приложения можно просто продавать другим пользователям, которым оно будет полезно, так и размещать в них рекламу для получения прибыли. В качестве контента для создания неограниченного количества мобильных программ можно использовать 3 основных источника, среди которых сайты, обычные html страницы и видео с Ютуб.
Конструктор AppGeyser станет оптимальным выбором для создания приложений под Android для начинающих. Несмотря на это, он обладает достаточно большим набором возможностей. Главные его достоинства можно представить в виде списка:
Из недостатков можно отметить ограниченный контент для создания приложений. Этот конструктор не подойдет для разработки новых игр под Android. Если эти минусы не являются для вас значимыми, то AppGeyser имеет все шансы стать для вас наиболее оптимальным решением.
Еще одним конструктором, позволяющим разрабатывать приложения под мобильные платформы (Android и iOS) и публикационные материалы без опыта программирования, является IbuildApp. С его помощью, пользователи могут в считанные минуты создавать собственные галереи, каталоги, флаеры, отчеты и другие виды документов. Перечисленные материалы можно удобным способом представить в виде программного обеспечения как услуги (SaaS). Приятным бонусом является то, что данная среда разработки доступна в двух языковых версиях: английской и русской.
К сожалению, IbuildApp не относится к категории бесплатных конструкторов. Разработчики предоставляют пользователям на выбор несколько пакетов услуг:
Остальные преимущества полностью повторяют бизнес пакет.
Разработка приложений для Android с помощью IbuildApp — это хороший способ познакомиться с конструкторами для мобильных платформ. Он не требователен к системным ресурсам, хорошо оптимизирует созданные приложения и имеет понятный интерфейс. Выделим его главные плюсы:
К минусам относится отсутствие бесплатной версии конструктора. В результате чего, что бы начать программирование под Android и зарабатывать на этом деньги, потребуется сперва купить один из предлагаемых пакетов.
Как и большинство предыдущих ресурсов, AppsMakerstore для работы использует уже заготовленные шаблоны. Среди них: юридические услуги, рестораны, салоны красоты и много других. Перед началом работы лучше уточнить, сколько стоит нужный вам пакет данного ресурса. В зависимости от того, каким образом вы хотите использовать конструктор, вам могут понадобится разные варианты услуг:
Приобретая любой из вышеописанных планов, пользователь получает право отправлять неограниченное количество push уведомлений, получать и пользоваться обновлениями системы и т.д.
Разработка мобильных приложений под Android с помощью Appsmakerstore будет хорошим решением как для новичков, так и для опытных пользователей. Постоянное обновление системы, следование новейшим тенденциям рекламы и большой выбор готовых шаблонов представляют собой инструмент для создания качественных мобильных программ. К основным плюсам AppsMakerstore можно отнести:
Appsmakerstore имеет один существенный недостаток. Разработка под Android приложений на данном онлайн ресурсе обойдется в некоторую сумму. Поэтому, прежде чем приступать к работе, целесообразно подтянуть свои навыки не бесплатных конструкторах.
Создавать новые приложение для мобильных платформ можно по разным причинам. Кто-то использует их для развития и популяризации своего бизнеса, другие — в качестве повышения навыков программирования, а третьи — сугубо в коммерческих целях. Отметим, что если вам нравится программирование игр, то воспользоваться подобными ресурсами не получиться, так как они имеют другое предназначение.
Каждый из приведенных ресурсов удобен для работы и создания программ под мобильные платформы и не требует от пользователя навыков программирования. Для этого не обязательно создавать приложение на Android с нуля, а можно воспользоваться заготовленными шаблонами, которых в большинстве случаев достаточно. Перед тем как пользоваться любым из приведенных ресурсов, рекомендуется скачать самоучитель и потратить время на ознакомление со всеми возможностями конструктора.
Из этого видео Вы узнаете о том, как создать собственное мобильное приложение с помощью Appsmakerstore.
– это не так сложно как может показаться. Однако без минимальных знаний в программировании и разработке кода все же не обойтись.
В сети есть множество сервисов, предоставляющих готовые шаблоны для написания программ, но создать по-настоящему прибыльное приложение можно только при помощи кода.
Перед тем как начать разрабатывать свое первое приложение самостоятельно пользователю нужно скачать и установить следующие программные продукты .
После окончания инсталляции необходимо открыть приложение и проставить отметки напротив всех неустановленных пакетов и ресурсов.
В следующем этапе необходимо обязательно добавить в интегрированную среду разработки плагин Android SDK. На примере среды Eclipse добавить плагин можно следующим образом:
После установки пользователь введет в своей интегрированной среде новые иконки.
Эмулятор избавляет программистов от необходимости иметь все типы устройств с операционной системой Android для тестирования новых приложений.
Так выглядит Android SDK
Чтобы добавить новое устройство необходимо кликнуть на кнопку «Новый» и создать виртуальное устройство, введя основные данные и его характеристики.
Необходимо ввести имя, которое бы обозначало максимально информативно, что из себя представляет данное устройство.
Здесь нужно выбрать версию Android, на которой будет производиться тестирование.
Совет! Зачастую тестирование проводится на последних версиях операционной системы, однако, если программист решает сделать это на более ранних версиях, то возникает необходимость в установке SDK manager.
Необходимо указать количество дискового пространства, которое будет использоваться в устройстве.
Позволяет создать и изменять внешний вид виртуального устройства.
Добавляет оснащения, которые будут использоваться во время тестирования.
Операционная система Android с каждым годом становится не только годной ОС для обычных пользователей, но и мощной платформой для разработчиков. Что ж поделать: Google всегда идёт навстречу девелоперам, предоставляя широкие возможности и мощный инструментарий, приправленный информативной документацией.
К тому же не стоит выпускать из внимания тот факт, что «зелёный робот» является лидером по популярности среди мобильных операционных систем. Это говорит о том, что, программируя под Android, вы будете иметь широкую аудиторию, которая впоследствии может принести прибыль. В общем, Android - своеобразный «оазис» для разработчиков. Поэтому мы подготовили для вас специальную подборку языков программирования, а также сред разработки для этой ОС.
Внимание, небольшое наставление новичкам
: программирование на Android может поначалу показаться сложным или слишком монотонным. Совет: предварительно рассмотрите ссылки на полезные документации прежде чем браться за дело, и тогда программирование на Android не станет для вас проблемой.
Google на данный момент официально поддерживает достаточно мощную среду разработки Android Studio, которая собрана на основе Intellij IDEA от JetBrains. Также не стоит забывать про очень подробную документацию от Google, в которой разбирается всё: от match_parent и wrap_content до конструкторов, констант и основных методов класса JavaHttpConnection - обязательно стоит почитать.
Кроме того, не стоит забывать о Eclipse - очень популярной среде для Java-программистов. С официальным плагином ADT от Google этот тулкит станет мощным и легковесным оружием в ваших руках. Но ребята из Маунтин-Вью ещё с лета прошлого года перестали поддерживать Eclipse, уступив место свежей Android Studio. Рекомендуется использовать на слабых ПК.
Необходимая документация:
За всё существование Android было создано немало фреймворков и средств разработки для C++. Особенно хочется выделить широко известный Qt и IDE QtCreator, позволяющие разрабатывать кроссплатформенные приложения для Windows, Windows Phone, Windows RT, iOS, SailfishOS и Android (когда-то в этот список входил ещё и Symbian). Кроме того, вы получаете удобную библиотеку контейнеров, алгоритмов и шаблонов Tulip, впитавшую в себя всё лучшее из Java и Android. Ну и, наконец, вы получаете множество различных QT-модулей для высоко- и низкоуровневой работы с системой. Ваш покорный слуга кодит именно в связке C++ и Qt.
В прошлом году на конференции Windows: The Next Champter было уделено широкое внимание достаточно популярной среде разработки Visual Studio 2015. Одним из главных нововведений стала поддержка разработки приложений как под Windows Phone, так и под Android - Microsoft пыталась хоть как-то увеличить количество приложений для своей ОС.
Нельзя также не упомянуть о том, что официальный Android Studio стал поддерживать NDK. С помощью NDK вы сможете использовать при работе с Android графику OpenGL. Если вам нужна быстрота и эффективность - выбирайте NDK! Этот способ разработки отлично подойдёт для игровых движков, требующих большой производительности.
Android разработка на C или C++ может показаться более простой чем на Java, но, несмотря на то, что язык предлагает вам полную свободу производимых действий и не ограничивает вас в ваших шагах, он имеет некоторые специфические особенности, на изучение которых уйдёт немало времени - недаром C++ сравнивают с нунчаками (превосходным оружием, которое, к сожалению требует огромного мастерства). Тем не менее разработка приложений под Android на C и C++ может оказаться занятным делом.
Необходимая документация:
Данный тулкит поможет вам при написании простых 2D-игр, для коих здесь присутствуют библиотеки для 2D=объектов, звуков, сети и игрового движка. Созданные игры работают с OpenGL, что означает высокую эффективность. Отлично подходит для новичков, возможно, именно на нём вы сможете создать своё первое мобильное приложение на Android!
Необходимая документация:
На самом деле готовые приложения из PhoneGap представляют из себя простейшие WebView, оживлённые при помощи JavaScript. При помощи разнообразных API вы сможете использовать различный функционал устройства прямо как на нативных приложениях. Что интересно - приложения компилируются на сервере и затем уже доступны для использования на iOS, Android, Windows Phone, Web OS и BlackBerry OS. С такой широкой кроссплатформенностью разработка приложений может значительно ускориться.
Необходимая документация:
Основная логика Fuse-приложений строится на JavaScript - простом и понятном языке с низким порогом вхождения. Интерфейсный же фундамент представляет UX-разметка - интуитивно понятная каждому. Ну а «плюшки» среды позволят вам применять изменения прямо во время работы приложения на вашем устройстве или эмуляторе - прямо как в Android Studio 2.0 и выше. С помощью Fuse разработка приложений для Android может оказаться несложной и приятной.
Необходимая документация:
Этот урок научит вас основам того как написать приложение для Android используя среду разработки Android Studio. Устройства Андроид становятся всё более распространенными, спрос на новые приложение все время только увеличивается. Android Studio бесплатная, простая в использовании среда разработки.
Для этого урока лучше всего, если у вас есть хотя бы поверхностные знания языка Java так как это язык используемый Android. В уроке не будет слишком много кода так как я исхожу из того что вы немного знакомы с Java или готовы найти то что вы еще не знаете. Создание приложения займет 30-60 минут, зависит от того как быстро вы скачаете и установите все необходимые программы. После знакомства с этим уроком по созданию своего первого приложения для Андроид, возможно вы найдете себе новое веселое хобби или даже начнете карьеру многообещающего разработчика мобильных приложений.
*Типовое название компаний для андроид проектов «example.name.here.com».
добавьте следующую строку
Внимание : Если вы получаете сообщение «HAX kernel module is not installed! », то тут возможны два варианта. Дело в том, что данную виртуализацию поддерживают лишь современные процессоры Intel и вам необходимо лишь включить её в BIOS. Если же у вас процессор, который не поддерживает данную функцию, вам придется протестировать приложение на реальном телефоне или воспользоваться не встроенным, а сторонним эмулятором.
На мой взгляд, этот вопрос хорошо освещен в этой статье, так что не буду повторяться. Наиболее простым для первого урока мне показался Ручной способ .
Когда вы получите файл, то можете скопировать его на свой телефон и установить приложение.
Поздравляю! Вы только что завершили написание своего первого Android-приложения с некоторыми основными функциональными возможностями. Готовое приложение должно иметь страницу приветствия пользователя и кнопку, которая приведет пользователя на вторую страницу.
Вы бегло познакомились с разработкой приложений для андроид и возможно пробудили в себе желание изучить все, что необходимо, чтобы в дальнейшем развиваться по этому направлению.