Как сделать приложение для андроид самому. Создание первого Android-приложения - все, что вам нужно знать

Как создать мобильное приложение в Android Studio

Android Studio - интегрированная среда разработки (IDE) на базе IntelliJ IDEA , которую Google называет официальной IDE для приложений Android.

В этом руководстве описана разработка приложений для android :

  • Навигация между файлами с помощью проводника
  • Установка файла AndroidManifest.xml
  • Импорт файлов в проект
  • Расширенный редактор макетов с функцией динамического превью
  • Использование Logcat и Android Monitor для отладки приложений

Начало работы в Android Studio

Запустите Android Studio, в окне Android Studio Setup Wizard выберите Start a new Android Studio project (начать новый проект).

В окне Create New Project выберите Application Name (название приложения) как Fortune ball («Шар фортуны»), введите домен компании; в поле Project location выберите место в котором приложение будет сохранено. Кликните Next .

Перед вами окно Target Android Devices . Выберите Phone and Tablet . В поле Minimum SDK укажите API 15 . Нажмите Next .

В окне Add an activity to Mobile выберите Basic Activity . Оцените все опции, в этом окне представлен обзор доступных макетов.

Кликните Next .

В окне Customize the Activity , скриншот которого размещен ниже, вы сможете изменить Activity Name (название активности), Layout Name (название макета), Title (общее название) и Menu Resource Name (название меню ресурсов). Оставьте значения по умолчанию и кликните Finish .

Через несколько секунд появится следующее окно:

На вашем устройстве или эмуляторе высветится такое же окно. Эмулятор функционирует как устройство, загрузка займет определенное время.

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

Структура проекта и файла

Окно показывает файлы проекта.

В выпадающем меню (скриншот ниже) есть несколько фильтров для файлов. Основные - Project и Android.

Фильтр Project покажет все модули приложения - в каждом проекте присутствует как минимум один модуль. Среди модулей других типов есть модули из библиотек сторонних разработчиков, или модули других приложений Android (такие как приложения для Android Wear, Android TV). У каждого из модулей имеется свой набор характеристик, в т. ч. файл gradle, ресурсы и исходные файлы (java-файлы).

Примечание. Если проект не открыт, кликните вкладку Project на левой стороне панели, как показано на скриншоте. По умолчанию установлен фильтр Android, который группирует файлы по определенному типу. На верхнем уровне вы увидите следующие папки:

  • manifests
  • Gradle Scripts

В последующих разделах подробно описаны все эти папки, начиная с manifests.

Обзор AndroidManifest.xml

У каждого приложения под Android есть файл AndroidManifest.xml, который находится в папке manifests. Этот XML-файл сообщает вашей системе о требованиях приложения. Присутствие этого файла обязательно, т. к. именно он позволяет системе Android создать приложение.

Откройте папку manifests и AndroidManifest.xml. Двойной клик откроет файл.

Теги manifest и application нужны для manifest, появляются только один раз.

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

android:icon, android:label и android:theme

Среди прочего в manifest может появиться:

  • uses-permission: запрашивает специальное разрешение, которое выдается приложению для корректной работы. К примеру, приложение должно запрашивать разрешение у пользователя, чтобы получить доступ к сети - в случае, если вы добавите разрешение android.permission.INTERNET.
  • activity: сообщает об активности, которая частично отвечает за визуальный UI и логику. Любая активность, которая предусмотрена в приложении, должна добавляться в manifest - неотмеченную активность система не заметит, и она не будет отображаться в приложении.
  • service: добавляет сервис, который вы собираетесь использовать, чтобы реализовать продолжительные операции или расширенные коммуникации API с другими приложениями. Примером в данном случае может служить сетевой вызов, с помощью которого приложение получает данные. В отличие от активностей, у сервисов нет пользовательских интерфейсов.
  • receiver: благодаря приемнику широковещательных сообщений приложение получает сигналы о системных сообщениях или сообщениях других приложений, даже когда другие компоненты приложения не запущены. Пример такой ситуации - батарея с низким уровнем заряда и уведомление об этом операционной системы.

Полный список тегов можно найти в manifest-файле на сайте Android Developer.

Настройки файла Manifest

В activity добавьте следующий атрибут:

android:screenOrientation=”portrait”. чтобы ограничить экран только портретным режимом. Если этого не сделать, экран, в зависимости от расположения устройства, будет либо в ландшафтном, либо в портретном режиме. После добавления атрибута файл manifest будет выглядеть как на скриншоте.

Создайте и запустите приложение. Если вы тестируете на своем устройстве, переверните его, удостоверьтесь, что экран не перемещается в ландшафтный режим, если вы ограничили эту возможность в файле AndroidManifest.

Обзор Gradle

Перейдем к Gradle. Gradle превращает Android-проект в инсталируемый APK, который можно устанавливать на устройства. Файл build.gradle присутствует в Gradle scripts, на двух уровнях: модульном и проектном.

Откройте файл build.gradle (Module:app). Вы увидите установку gradle по умолчанию:

apply plugin: "com.android.application" android {compileSdkVersion 25buildToolsVersion "25.0.2"defaultConfig {applicationId "com.raywenderlich.fortuneball"minSdkVersion 15targetSdkVersion 25versionCode 1versionName "1.0"testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"}}} dependencies {compile fileTree(dir: "libs", include: ["*.jar"])androidTestCompile("com.android.support.test.espresso:espresso-core:2.2.2", {exclude group: "com.android.support", module: "support-annotations"})compile "com.android.support:appcompat-v7:25.1.0"compile "com.android.support:design:25.1.0"testCompile "junit:junit:4.12"}

Разберем основные компоненты:

  • apply plugin: ‘com.android.application’ применяет плагин Android на родительском уровне и обеспечивает доступность задач верхнего уровня, которые нужны для создания приложения.
  • Рядом с разделом android{…} находятся опции настроек, такие как targetSdkVersion. Целевой SDK для вашего приложения должен располагаться на новейшем уровне API. Еще один важный компонент - minSDKVersion (определяет минимальную версию SDK, которая должна быть установлена на устройстве, чтобы приложение можно было запустить). К примеру, если версия SDK 14, тогда приложение будет невозможно запустить на этом устройстве, поскольку в данном конкретном случае минимальная поддерживаемая версия 15.
  • Последний компонент - dependencies{…}. Необходимо отметить compile ‘com.android.support:appcompat-v7:VERSION’ и compile ‘com.android.support:design:VERSION’. Они обеспечивают поддержку и совместимость особенностей новых и старых API.

Кроме библиотек совместимости Android, вы можете добавить библиотеки сторонних разработчиков в компонент dependencies{…} Библиотека анимаций, например, содержит эффекты пользовательского интерфейса. Найдите dependencies, затем добавьте вниз две следующие линии:

dependencies { ... compile "com.daimajia.easing:library:2.0@aar"compile "com.daimajia.androidanimations:library:2.2@aar"}

Здесь можно добавить dependencies сторонних разработчиков. Библиотеки автоматически загружаются и интегрируются в Android Studio. Кликните Sync Now, чтобы интегрировать эти зависимости в свое приложение.

Синхронизация длится несколько секунд. Обновления Gradle появляются во вкладке Messages нижней панели.

Это все настройки, которые вам пока будут нужны в Gradle. Такие манипуляции добавят анимацию в приложении.

Импорт файлов

В разработке приложения под Android важна интеграция с другими ресурсами: изображения, кастомные шрифты, звуки, видео и пр. Эти ресурсы импортируются в Android Studio и помещаются в соответствующие папки, что позволяет операционной системе подбирать корректные ресурсы для приложения. Для нашего приложения Fortune Ball понадобится импорт изображений в папки drawable. В этих папках могут содержаться изображения или специальные файлы XML drawables (т. е. вы можете рисовать формы с помощью XML-кода и использовать их в своих макетах).

В Android Studio перейдите из Android в Project

Откройте папку res (app > src > main). Клик правой кнопки мыши по папке res, выберите New > Android resource directory.

Появится окно под названием New Resource Directory.

Из выпадающего списка Resource type выберите опцию drawable. В списке Available qualifiers выберите Density, затем кликните кнопку, которая выделена на скриншоте.

В следующем окне выберите XX-High Density из списка Density. Кликните OK.

Повторите все, чтобы создать папки drawable-xhdpi, drawable-hdpi и drawable-mdpi. Выберите X-High, high (высокую) и medium (среднюю) плотность соответственно из списка Density.

Каждая папка, у которой есть определитель плотности (i.e. xxhdpi, xhdpi, hdpi), содержит изображения, которые соотносятся с определенной плотностью или разрешением. К примеру, папка drawable-xxhdpi содержит изображение высокой плотности, это означает, что Android-устройство с экраном высокого разрешения извлечет изображение из этой папки. Изображение будет хорошо смотреться на всех устройствах Android, независимо от качества экрана. Больше информации о плотности экранов содержится в документации Android.

Создав все «рисованные» папки, вы можете вернуться к нераспакованному контенту в папке и скопировать (cmd + C) изображение из каждой папки и поместить (cmd + V) в соответствующую папку Android Studio.

Поместив файлы, вы увидите окно Copy. Выберите OK.

XML View и Dynamic Layout Previews

Создание макета, с которым пользователи могут взаимодействовать, - важная часть процесса. В Android Studio это можно сделать в редакторе макета. Откройте content_main.xml из res/layout. Во вкладке Design вы можете переносить элементы интерфейса (кнопки, текстовые поля).

Справа от Design есть вкладка Text, которая позволяет редактировать XML непосредственно в макете.

Перед созданием внешнего вида, необходимо определить некоторые значения. Откройте strings.xml во вкладке res/values и добавьте следующее:

Suggest the question, which you can answer “yes” or “no”, then click on the magic ball.

strings.xml содержит все строки, которые появляются в приложении. Разделение этих строк в отдельные файлы упрощает интернационализацию, т.к. нужен только файл строк для каждого языка, который требуется в приложении. Даже если вы не собираетесь переводить приложение на другие языки, использовать файл строк всегда рекомендуется.

Откройте dimens.xml в res/values и добавьте следующее:

15sp20sp

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

Вернитесь в content_main.xml и замените все содержимое файла следующим кодом:

Этот довольно большой код создает макет приложения под названием FortuneBall. На верхнем уровне вы добавили RelativeLayout (относительная разметка определяет позицию дочерних компонентов относительно родительского компонента). RelativeLayout можно растянуть, подогнать под размер родительского компонента.

В относительной разметке добавляются две части текста, изображение и кнопка. Все эти детали будут видны в порядке добавления. Их содержимое можно будет прочитать в strings.xml (текст) и в drawable (изображения).

Обновляя content_main.xml, обратите внимание на окно Preview обновляет UI:

Примечание: если не видно окно предпросмотра, во вкладке Text кликните на кнопку Preview на панели редактора разметки справа.

Создайте и запустите.

И вот вы создали макет приложения. Но на данном этапе это только красивое изображение - клик по кнопке ни к чему не приведет.

Объединяем Activity и View

Вы можете использовать java-файлы, размещенные в app / src / main / java чтобы установить логические связи в приложении.

Откройте MainActivity.java и добавьте эти данные под уже существующие:

Import java.util.Random;import android.view.View;import android.widget.Button;import android.widget.ImageView;import android.widget.TextView; import com.daimajia.androidanimations.library.Techniques;import com.daimajia.androidanimations.library.YoYo;

Первые пять импортов указывают на соответствующие классы в вашем коде: Random, View, Button, ImageView и TextView. Следующие два импорта указывают на то, что вы будете использовать два класса из библиотек, в т.ч. build.gradle для анимаций. В MainActivity.java в класс MainActivity добавьте:

String fortuneList = {"Don’t count on it","Ask again later","You may rely on it","Without a doubt","Outlook not so good","It"s decidedly so","Signs point to yes","Yes definitely","Yes","My sources say NO"}; TextView mFortuneText;Button mGenerateFortuneButton;ImageView mFortuneBallImage;

В этом небольшом отрезке кода вы установили 4 переменных для активности. Первая - строки, которые определяют возможные состояния, другие три - элементы UI, которые вы создали в макете/разметке.

Теперь замените содержимое метода onCreate() следующими данными:

// 1:super.onCreate(savedInstanceState);// 2:setContentView(R.layout.activity_main);Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);setSupportActionBar(toolbar);// 3:mFortuneText = (TextView) findViewById(R.id.fortuneText);mFortuneBallImage = (ImageView) findViewById(R.id.fortunateImage);mGenerateFortuneButton = (Button) findViewById(R.id.fortuneButton); // 4:mGenerateFortuneButton.setOnClickListener(new View .OnClickListener() {@Overridepublic void onClick(View view) {// 5:int index = new Random ().nextInt(fortuneList.length);mFortuneText.setText(fortuneList);// 6:YoYo.with(Techniques.Swing).duration(500).playOn(mFortuneBallImage);}});

  • Проверьте, что активность готова (реализация суперкласса).
  • Укажите, что макет для данной активности представлен макетом, который вы создали ранее, проверьте панель инструментов.
  • Заполните значения трех переменных, которые вы создали прежде в компонентах views макета с помощью метода findViewById. Значение id то же, что и в макете XML.
  • Добавьте OnClickListener на кнопке. Это простой класс, который инкапсулирует (упаковывает) функциональность, которую, в свою очередь, вызывает нажатие кнопки.
  • Выберите произвольный вариант из набора fortuneList для данного приложения, и обновите текст fortune text, чтобы это показать.
  • Используйте библиотеку сторонних разработчиков, чтобы добавить зависимость в файл gradle, и таким образом добавить анимацию в приложение.

Уже почти готово. Но нужно убрать плавающую кнопку. Перейдите в res / layout и откройте activity_main.xml.

В этом файле макета содержится ссылка на content_main.xml, который вы прежде редактировали. Он по умолчанию определяет контент (тулбар и плавающая кнопка действия). Однако в данном конкретном приложении (Fortune Ball) плавающая кнопка не нужна. Поэтому уберите следующий блок кода из xml-файла:

Теперь в правом нижнем углу нет плавающей кнопки.

Задайте вопрос (What’s my fortune?) - нажмите кнопку. Проверьте работу приложения.

Android Monitor

В Android Studio содержится широкое множество инструментов. Откройте вкладку Android Monitor в нижней части окна Android Studio.

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

  • Камера и кнопка play слева позволяют делать скриншоты и записывать видео.
  • Увеличительное стекло открывает ряд дополнительных опций, например анализ памяти приложения.
  • Layout Inspector предоставляет визуальный интерфейс, который определяет, почему интерфейс приложения выглядит определенным образом.

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

Проверьте, что вы выбрали Show only selected application в правом верхнем углу, как было показано на скриншоте выше. Теперь будут видны только сообщения вашего приложения.

В MainActivity.java добавьте к списку импортов следующее:

Import android.util.Log;

В конце onCreate() в MainActivity.java добавьте следующую линию:

Log.v("FORTUNE APP TAG","onCreateCalled");

Log.v вызывает два параметра - тег и сообщение. В данном случае тег определен как “FORTUNE APP TAG”, а сообщение как “onCreateCalled”.

Запустите приложение, чтобы видеть сообщение лога на панели Logcat.

Отфильтруйте содержимое LogCat, впишите onCreateCalled в поисковую строку над консолью:

Затем удалите поисковый текст, чтобы увидеть снова все сообщения лога.

Еще одна полезная функция - logcat, это возможность просматривать сообщения об ошибке. Добавьте баг в свое вполне функциональное приложение, чтобы посмотреть, как все устроено.

Перейдите к MainActivity.java и измените следующую линию в onCreate():

//mFortuneText = (TextView) findViewById(R.id.fortuneText);

Запустите приложение. Кликните кнопку What’s My Fortune? Не работает!

Как бы вы исправили ошибку, если бы не знали о наличии бага? В этом поможет Logcat.

Перейдите к панели Logcat - она выглядит примерно так:

Здесь много красного текста. В данном случае проблема в линии 50 в файле MainActivity.java. LogCat превратил эту ссылку в гиперссылку синего цвета. Если ее нажать, можно узнать, в чем проблема.

Изменив mFortuneText = (TextView) findViewById(R.id.fortuneText), вы тем самым создали переменную, но не указали ее значение - отсюда исключение нулевого указателя. Вернитесь обратно и измените код, запустите приложение. В этот раз все работает гладко. Logcat - полезный инструмент для поиска ошибок.

Share this article:

Related Articles

Как создать приложение для Android или iPhone? — таким вопросам все чаще задаются не только веб-разработчики, но и обычные владельцы небольших бизнес-сайтов, блоггеры.

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

Таким образом, все рассмотренные в обзоре для разработки приложений можно объединить под лозунгом: просто, быстро и без программирования!

бесплатный веб-сервис, который позволяет сконвертировать контент вашего сайта в Android приложение и распространить его через Google Play. Кроме того, созданные приложения можно как продавать, так и размещать в них рекламу.
Можно создать неограниченное количество Android приложений из трех типов контента: сайта, просто html-страницы и YouTube видео. Для создания Android приложения AppsGeyser использует простой и наглядный мастер шаблонов.

Сайты AppsGeyser: http://www.appsgeyser.com, http://www.appsgeyser.ru

бесплатный онлайн-сервис для быстрого создания мобильных приложений. TheAppBuilder создает приложения с помощью конструктора и типовых шаблонов — для бизнеса, событий, образования, музыки, спорта и др. Созадние приложения бесплатно, а за 5 у.е. в мес. можно отключить показ посторонней рекламы в созданном приложении. TheAppBuilder позволяет создавать Android приложение, и Windows Mobile.

Сайт TheAppBuilder: http://www.theappbuilder.com

— это онлайн-сервис, который позволяет пользователям создавать и публиковать свои собственные мобильные приложения в несколько кликов в интернете. Платформа Appsmakerstore создает мобильные приложения, поддерживаемые HTML5, iTunes, Android Market, Blackberry Marketplace, Windows Marketplace и Facebook без каких-либо глубоких технологических навыков. Это всего 1 приложение для 6 разных платформ . Appsmakerstore предлагается в 23 языках, в том числе на русском и украинском.

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

  • «Сделай сам» — $9.78 в месяц.
  • «Мы делаем приложение для Вас» — $249
  • «Reseller»- специальная цена, которую нужно узнавать на сайте отдельно.

Всегда включено во все планы:

  • Неограниченное количество изменений контента и обновлений приложения.
  • Обновление контента приложения на iTunes и Google Play без необходимости повторной публикации.
  • Отправлять неограниченное количество push уведомлений пользователям.
  • Автоматически получать и пользоваться всеми обновлениями системы.
  • Безопасный хостинг на наших серверах.
Сайт Appsmakerstore: http://appsmakerstore.com

— платный онлайн-конструктор мобильных приложений (iPad, Android , HTML5) для небольшого бизнеса. Среди возможностей - геолокация, получение и отправка сообщений, корзина для товаров, уведомления, интеграция с соцсетями, размещение информации о меню, наборе услуг, предстоящих событиях и др. Есть шаблоны для ресторанов, риелторов, гимнастических залов и др.

Данный сервис представлен такими планами:

  • «Мобильный сайт» — $29 в месяц.
  • «Мобильное приложение» — $59 в месяц
  • « White Label Partner» создание приложений для Ваших клиентов — специальная цена, которую нужно узнавать на сайте отдельно.
Сайт Biznessapps: http://www.biznessapps.com

5. AppGlobus

AppGlobus — платный, один из российских онлайн конструкторов мобильных приложений, позволяющий пользователям самостоятельно создать и опубликовать своё приложение в App Store и Google Play.

Использует новый дизайн и возможности Ionic Framework, что значительно улучшает качество разработки, и даёт возможность создавать мобильные приложения на HTML5, iOS, Android даже без навыков программирования.

На данный момент AppGlobus предлагается на 8 языках, в том числе на русском.

AppGlobus.com предлагает следующие пакеты:

  • STARTAP - 900 руб./мес.
    • Приложения: HTML5/Android, админ панель, магазин, нет ограничений на Push, нет ограничений на установки, нет рекламы.
  • BASIC - 1500 руб./мес
    • Приложения и для Android и для iOS, админ панель, магазин, нет ограничений на Push, нет ограничений на установки, нет рекламы.
  • STUDIO - 2000 руб./мес
    • Приложения: Windows/Android/ iOS, админ панель, магазин, нет ограничений на Push, нет ограничений на установки, нет рекламы.
  • PRO - 45000 руб./единоразово
    • Приложения: Windows/Android/ iOS, разработка на заказ, сами разместим в App Store и Google Play, отдадим исходный код
Сайт AppGlobus: http://appglobus.com/

— платный онлайн-сервис для создания своего мобильного приложение для бизнеса или личного пользования. Никаких специальных умений не требуется. Хорошо подходит для небольшого бизнеса, например, интернет-магазинов. Чтобы создать свое приложение, понадобится всего 5 минут – нужно всего лишь выбрать необходимые модули и дизайн. Есть английская и русская версии.

My-apps.com предлагает такие пакеты:

  • Старт — 599 руб. /мес.
    • приложения только для Android, доступ к конструктору, бесплатные шаблоны и иконки приложений, обновления контента каждые 48 часов, обновления исходника приложения в сторах самостоятельно не чаще 1 раза в 2 месяца.
  • Лайт — 990 руб. /мес
    • приложения и для и для iOS, доступ к конструктору, бесплатные шаблоны и иконки приложений, базовые скриншоты приложения, Push уведомления — 1 в месяц, обновления контента каждые 24 часа, обновления исходника приложения в сторах 1 раза в 2 месяца.
  • Стандарт — 2490 руб. /мес
    • приложения и для Android и для iOS, доступ к конструктору, бесплатные шаблоны и иконки приложений, базовые скриншоты приложения, поддержка по Skype, Push уведомления — 10 в месяц, обновления контента каждые 12 часов, обновления исходника приложения в сторах 1 раза в месяц.
  • Бизнес — 9890 руб. /мес
    • приложения и для Android и для iOS, доступ к конструктору, бесплатные шаблоны и иконки приложений, базовые скриншоты приложения, поддержка по Skype и е-мейл, персональный менеджер, Push уведомления — 50 в месяц, обновления контента -мгновенно, обновления исходника приложения в сторах — без ограничений.
  • VIP — 3999 руб. /мес + 150 000 руб. инсталляционный платеж

    • приложения и для Android и для iOS, доступ к конструктору, бесплатные шаблоны и иконки приложений, базовые скриншоты приложения, поддержка по Skype и е-мейл, персональный менеджер, Push уведомления — неограничено, обновления контента -мгновенно, обновления исходника приложения в сторах — без ограничений.
Сайт My-apps.com: http://my-apps.com

предоставляет платформу “сделай сам ” для создания iPhone/ приложений , которая так же не требует навыков программирования. Данный сервис предоставляет для каждой организации простой способ создания мобильных (iPhone, iPad, Android) приложений и публикационных материалов. Клиенты могут создать собственные каталоги, флайеры, брошюры, отчеты, резюме и пр. и предоставлять их с помощью SaaS-решения. Есть английская и русская версии.

iBuildApp предоставляется в таких пакетах:

  • Бизнес (2400 рублей в месяц) — 3000 установок, неограниченное количество просмотров мобильного сайта, отсутствие встроенной рекламы, публикация приложения на iTunes и Google Play.
Сайт iBuildApp: http://ibuildapp.com

— онлайн-сервис для разработки приложений (iPhone , iPad, Android). Позволяет создавать приложение на основе одного из множества шаблонов приложений. Элементы создаваемого пользовательского интерфейса приложения могут быть связаны с такими функциями, как отправка электронной почты, SMS-сообщения, отправка на сервисы Facebook и Twitter.

  • Developer — $33 в месяц . (можно создать только 1 приложение)
  • Professional — $79 в месяц .
  • Premiun- $129 в месяц .
  • Enterprise — Цену нужно узнавать отдельно .

Все пакеты поддерживают такие платформы: IOS (iPhone/iPad) & Android (Phone/Tablet)

Сайт Viziapps: http://www.viziapps.com

- онлайн-редактор, позволяющий создавать приложения для iOS, Android и Windows Phone. Пользоваться ей очень просто: собственную программу можно собрать из уже готовый частей. Несмотря на то что AppsBuilder старается быть более простым и понятным для неопытных пользователей, в него добавлены и некоторые возможности для программистов: к примеру, можно дополнять созданные приложения собственными Java-скриптами.

Есть три платных пакета, в которых есть везде 30 дней — бесплатная пробная версия:

  • Starter (49 евро в мес.) -1 приложение.
  • Regular (199 евро в мес.) -до 5 приложений.
  • Scalable (от 249 евро в мес.) — более 5 приложений.
Сайт AppsBuilder: http://www.apps-builder.com

Рынок мобильных приложений находится на подъеме, так что самое время стать его частью. Приложения сейчас используются повсеместно и выполняют безграничное количество функций. Несколько лет назад создание приложения подразумевало изучение сложных языков программирования, когда начинать приходилось практически с нуля. С развитием технологии приложений появились новые инструменты, позволяющие любому человеку создать полнофункциональное приложение всего за несколько минут. Чтобы узнать, как это сделать, читайте далее.

Шаги

Часть 1

Проектирование приложения

    Определить цель приложения. Хорошее приложение фокусируется на одной цели и совершенствует ее. Определить потребность, которую ваше приложение будет удовлетворять. Это поможет вам определить целевую аудиторию, а также требуемый функционал.

    • Например, если вы создаете приложение для своего бизнеса, определите, каким его аспектам должно быть обращено внимание в приложении. Возможно, вам стоит предоставить пользователю возможность быстрой связи со службой технической поддержки или посетить ближайший офис вашей фирмы.
    • Если ваше приложение станет слишком сложным, скорее всего, функционала программ для создания приложений вам будет не достаточно. Комплексные приложения, как правило, требуют индивидуального кодирования и дизайна.
  1. Сделайте несколько набросков. Жизнь и смерть приложения зависят от его дизайна и практичности. Потратьте какое-то время на создание парочки эскизов того, что будет собой представлять каждое окно вашего приложения. Используйте стрелки, чтобы показать переходы от одного окна к следующему.

    • Совсем не обязательно, чтобы эскизы были подробными, но они, как минимум, должны включать в себя всю информацию, которую вы хотите представить на каждом окне.
    • Постарайтесь сохранить единый дизайн во всех частях приложения. Одинаковые элементы, как правило, должны располагаться в том же месте в каждом окне. Таким образом, приложение будет более понятно для пользователя.
  2. Взгляните на другие аналогичные приложения. Зайдите на Google Play Store и поищите приложения, схожие с тем, что вы пытаетесь достичь. Попытайтесь разобраться в нем и узнать, что работает, а что – нет. Не бойтесь перенимать дизайнерские идеи и вдохновение из успешных приложений.

    Часть 2

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

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

    Часть 3

    Создание собственного приложения

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

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

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

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

      • Разные программы для создания приложений предоставляют разные уровни контроля над планировкой. Некоторые приложения позволяют добавлять лишь полностью готовые функции, в то время как в других вы сможете перемещать и изменять каждый элемент на экране.
    1. Выберите иконки для своих функций. Вы можете назначить иконки для каждой из функций вашего приложения. Вы можете выбрать что-нибудь из библиотеки иконок, которая имеется во многих программах, или спроектировать и загрузить собственную иконку. Хорошие иконки помогут выделить ваше приложение и внести свой вклад в общую атмосферу приложения.

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

Программирование - это интересно

Чтобы создать хорошее приложение, нужно разбираться и в той платформе, для которой оно предназначается, и в ресурсах, которые необходимо реализовать в проекте. Конечно же, нужно в совершенстве обладать всеми инструментами в выбранной сфере программирования, чтобы код был качественным, чистым, без ошибок, недочетов и «букашек». Зачастую новички спрашивают: «Что нужно для разработки приложений под Android?». В первую очередь - общие представления о правилах программирования, а также особенностях выбранной операционной системы.

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

Начинаем правильно

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

Высокое значение языка программирования - базовая способность для разработки приложений под Android. В совершенстве владея техническим языком, можно включиться в сложный проект, взять на себя задачи тим-лидера и (закономерно!) получать большое финансовое вознаграждение за труды. А вот человеку, только-только начинающему с ООП, рассчитывать на существенные деньги не приходится. Впрочем, и ответственность на него обычно возложена несерьезная.

Читать - не перечитать!

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

Следующий шаг - это более глубокое погружение в среду. В магазинах можно найти большое разнообразие книг а-ля «Разработка мобильных приложений под Android: уровень 2», «Программирование для продолжающих» и «Как начать писать свои приложения?». Чем больше литературы удастся изучить, освоить, понять, тем эффективнее получится работать.

На чем пишем?

С чего начать разработку приложений под Android? Как говорят опытные программисты, для начала нужно понять, с каким языком программирования проще и легче работать, что больше подходит для воплощения в жизнь поставленных перед новичком задач. В настоящее время активно используются Java, C++, Visual C#. Преимущественно останавливаются на «Джаве» как оптимальном варианте для создания разнообразного софта - вплоть до довольно интересных игр. Важное преимущество этого языка - возможность реализации кроссплатформенных приложений, то есть таких, которые одновременно могут функционировать под разными ОС. Да и, как известно, зарабатывают на разработке приложений под Android больше всех те, чьи приложения на этапе публикации подходят не только для этой ОС, но и iOS, Windows Phone. С другой стороны, воплотить в жизнь такой проект будет посложнее, чем под одну платформу.

Если через книги разработку приложений под Android Eclips было решено осваивать с использованием языка программирования Visual C#, тогда можно рассчитывать на поддержку мирового сообщества программистов. Дело в том, что специалистами были созданы огромные базы данных, библиотеки, содержащие дополнительное программное обеспечение. Это означает, что программист пишет код так, как ему удобнее, а специальные алгоритмы перевода позволяют перекодировать результат в инструкции конкретной операционной системы.

С чего начать?

Три первичных условия, обладание которыми позволяет ответить на все вопросы о том, как создать разработку приложений под Android:

  • Среда разработки.
  • Эмулятор ОС.
  • Сборщик кода.

Планируя, как начать разработку приложений под Android, необходимо заранее продумать в будущем возможности улучшения, усовершенствования, развития приложения. Обычно пользователи ждут от полюбившегося, полезного приложения регулярных обновлений, меняющих не только дизайн, но и функциональные возможности. Все качественные продукты регулярно совершенствуются (между прочим, сама ОС "Андроид" тоже). В то же время обновления должны сопровождаться сохранением высокого уровня стабильности, то есть качество приложения по умолчанию поддерживается высоким.

Новейшие технологии для нового проекта

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

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

Инструментарий - первая необходимость

Невозможно представить себе плотника без молотка, строителя без мастерка и водителя без машины. Точно так же и программист не может работать без среды разработки. Есть несколько вариантов, нет универсального рецепта по выбору оптимального для себя. Чаще всего прибегают к вариантам «Эклипс» (разработка «Нетбинс») и «Визуал Студио» (авторство «Майкрософт»). Есть и пакеты помельче, имеющие свои положительные и отрицательные стороны. Чтобы понять, где работать легче, а процесс получается более продуктивным, стоит попробовать сначала два самых известных варианта, а затем - другие, более экзотические, если первые два не подходят.

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

А нужно ли мне это?

Уже из описанного (а это лишь верхушка айсберга под названием «Разработка мобильных приложений») у многих новичков может возникнуть впечатление, что «овчинка выделки не стоит», проще говоря, слишком много усилий нужно приложить, да и сама работа слишком сложна, поэтому не стоит даже и браться за нее. Но на самом деле все совсем не так. Действительно, начать писать хорошие приложения непросто, зато результат того стоит.

В настоящее время спрос на профессионалов в области программирования мобильных приложений растет изо дня в день. Это связано и с распространением смартфонов, и с политикой крупных компаний («Гугл», «Майкрософт»), поощряющих лучших разработчиков. Став действительно высококлассным профессионалом, можно попытаться попасть в штат даже этих всемирно известных фирм! Но для этого нужно приложить усилия и начинать нужно уже сейчас. Впрочем, если говорить о реальных перспективах, то тут лучше вспомнить о тенденции последних лет - почти каждая более-менее крупная фирма хочет иметь собственное мобильное приложение, так как считается, что это позволяет удержать клиента. Должен же кто-то разрабатывать эти приложения! А потом обновлять их, поддерживать, улучшать. Словом, работы непочатый край, если уметь делать свое дело.

Задачи специфические, требования общие

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

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

Стабильность и развитие

Как показывают проведённые исследования, преимущественно разработчики выбирают наиболее удобную для себя среду программирования и в будущем все время работают в ней, отслеживая все новейшие тенденции, методики и инструменты, словом, не распыляются. Во многом, из-за такого подхода многие считают, будто бы слова Android и Eclipse являются синонимами, ведь чаще всего именно к «Эклипс» прибегают, когда пишут приложения для "Андроид". Студия «Нетбинс» создала уникальный программный инструмент, подходящий для совсем небольших и очень крупных, масштабных проектов. Его универсальность и спровоцировала такую популярность.

Привет, мир!

Разработка программного обеспечения для смартфонов, управляемых ОС "Андроид", - это не просто создание заглавной странички с приветствием. Это довольно большой объем работ по проектированию, оформлению, программированию, продвижению и сопровождению объекта. При этом надежный исполнитель всегда заранее оговаривает сроки, к которым работу нужно завершить, и тщательно их придерживается. Конечно, если предупредить, что фирма-заказчик имеет дело с новичком, возможно, просрочки будут прощены, но это губит репутацию.

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

Через тернии - к звездам!

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

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

Учтите, что студия постоянно обновляется, поэтому внешний вид окон и другие детали могут отличаться от данного примера. Большинство уроков на сайте сейчас используют версию 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

Папка java содержит три подпапки - рабочую и для тестов. Рабочая папка имеет название вашего пакета и содержит файлы классов. Сейчас там один класс MainActivity . Папки для тестов можете не трогать. Если вы знаете, как работают пакеты в Java, то можете создавать новые папки и подпапки.

res

Папка res содержит файлы ресурсов, разбитых на отдельные подпапки.

  • drawable - в этих папках хранят графические ресурсы - картинки и xml-файлы, описывающие цвет и фигуры.
  • layout - в данной папке содержатся xml-файлы, описывающие внешний вид форм и различных элементов форм. После создания проекта там уже имеется файл activity_main.xml , который отвечает за внешний вид главного окна приложения.
  • mipmap - здесь хранят значки приложения под разные разрешения экрана
  • values - тут размещаются строковые ресурсы, ресурсы цветов, тем, стилей и измерений, которые мы можем использовать в нашем проекте. Здесь вы можете видеть файлы colors.xml , strings.xml , styles.xml . В старых проектах был ещё файл dimens.xml , сейчас от него отказались

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

Работа с проектом - Здравствуй, Мир!

Как уже говорилось, программа 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 .

Статьи по теме: