Создаем приложение для ANDROID быстро и просто
После успешной установки мы можем создать свой первый проект.
Мы можем его запустить в эмуляторе, который идет комплекте с Visual Studio нажав клавишу F5.
Приводим код к такому виду. Здесь мы создаем WebView контейнер который будет грузить локальный HTML файл, который находится в проекте в папке Assets.
По такому принципу можно создать приложение быстро и просто. Файлы html будут выглядеть одинаково на всех устройствах. То есть, Вы можете сделать приложения для Android и iOS с одинаковым интерфейсом. Не надо изучать сложные языки разметки, не надо изучать сложные макеты (сториборды) на iOS. Все можно сделать на HTML.
В идеале, вместо локальных файлов можно сделать загрузку со стороннего сайта. В этом случае Вы можете менять контент приложения без его обновления в AppStore и Google Play.
Q: Но как быть с функциями самой платформы? Пуш сообщения? Как взаимодействовать с самой платформой?
Все очень просто! JavaScript можно использовать для вызова функций Android:
Мы видим, что теперь программа ругается на Export так как не знает что это такое.
Так вы можете подключать библиотеки если вдруг Visual Studio ругается на что то.
Данная функция это показ всплывающей информации на экране. Она выполняется именно на платформе Андроида. То есть мы можем написать в HTML файле вызов функции Андроида. Получается полное дружелюбие двух платформ по JavaScript интерфейсу. Данные можно передавать туда сюда. Вызывать переход от одной активити в другую. Все через HTML + JavaScript.
Немного модифицируем файл login.htm:
Теперь при нажатии на кнопку HTML вызывается функция Toast андроида и выводиться сообщение пользователю.
Как сделать приложение для Android самостоятельно
Платформа Android открытая, поэтому каждый может написать своё приложение и распространять его через каталоги программ. Все инструменты бесплатны.
Язык программирования для мобильной разработки на Android очень простой — это Java. Сейчас Google активно продвигает Kotlin как язык, который сможет заменить Java. Приложения пишут и на C++.
Создание простейшего приложения состоит из нескольких этапов:
А пока мы описываем азы, студенты курса «Профессия Мобильный разработчик» уже получают деньги за свои приложения.
Пишет про разработку в Skillbox. Работал главным редактором сайта «Хабрахабр», ведет корпоративные блоги.
Необходимые инструменты
Первым делом установите программу Android Studio. Это официальная среда разработки (IDE) для Android, она работает на Windows, macOS и Linux. Хотя при разработке программ для Android можно использовать и другие среды, кроме Android Studio.
Если на компьютере не установлены Android SDK и другие компоненты, то Android Studio автоматически скачает их. Android SDK — это среда программирования, в которую входят библиотеки, исполняемые файлы, скрипты, документация и т.д.
Полезно установить и эмулятор Android, чтобы запускать и тестировать приложения. Эмулятор поставляется в комплекте с Android Studio.
Когда все инструменты установлены, можно создать первый проект. Но сначала нужно разобраться с основными понятиями.
Из чего состоит приложение
на Android
Android-приложение состоит из четырёх компонентов. Каждый компонент — это точка входа, через которую система или пользователь может получить доступ.
Теперь попробуем сделать своё приложение для Android.
Создаём Android-приложение
в Android Studio
Шаг 1
Выбираем название приложения, домен компании, путь к проекту и название пакета. Указываем, включить ли поддержку опциональных языков программирования C++ и Kotlin.
Шаг 2
Задаём одну или несколько целевых платформ для сборки. Для этого используется SDK и AVD, менеджер виртуальных устройств Android. Инструмент позволяет устанавливать в SDK пакеты, которые поддерживают несколько версий ОС Android и несколько уровней API (интерфейсов программирования приложений).
Чем ниже версия Android, тем больше устройств, на которых приложение запустится. Чем выше версия, тем богаче функциональность API.
Шаг 3
Выбираем основную активность, которая будет запускаться при нажатии на иконку приложения, и даём ей имя.
Шаг 4
После нескольких минут сборки Android Studio открывает интерфейс IDE. Здесь три основных момента.
Запускаем Android приложения в полноэкранном режиме с доступом к уведомлениям и навигации
full!screen потребует от вашего девайса root-доступа!
Установив приложение, вы получите две прозрачные кнопки, на которые можно назначить различные функции в зависимости от вашего взаимодействия с ними. Существует три типа действий, которые вы можете осуществить: просто нажать на кнопку, нажать и удерживать или же сделать свайп.
Приложение никаким образом не вмешивается в запущенные процессы, особенно важно это в случае с видео или играми. Никаких побочных эффектов.
Что касается кнопок, то лучше сразу переходить к расширенным настройкам. Там вы сможете изменить такие параметры как цвет, время нажатия, ответные действия и многое другое. Все просто и понятно.
Каждую кнопку можно настроить отдельно. Вы сможете задать им следующие параметры: отображение последних приложений, уведомлений, возврат на предыдущий экран, возврат на хоумскрин, восстановление строки состояния и вызов дополнительного меню в виде кольцевой диаграммы (которое тоже можно настроить).
full!screen можно скачать совершенно бесплатно с Гугл Плей, но также существует и улучшенная версия, за которую придется заплатить немного денег. Основное ее преимущество в том, что она позволяет выбрать приложения, с которыми full!screen будет запускаться автоматически.
Пишем своё первое приложение на Android
Предисловие
Подготовка к разработке
Установка среды разработки Eclipse
Тут всё просто. Идём в раздел Downloads на официальном сайте и качаем версию Classic. Далее просто распакуйте архив, куда вам хочется, я же решил это сделать в почетную директорию C:\Eclipse
Установка ADT плагина к Eclipse
Запускаем Eclipse, и открываем диалог установки плагина через меню Help → Install new software. В поле Work with вписываем адрес загрузки плагина dl-ssl.google.com/android/eclipse (если не получилось, то плагин можно скачать и установить вручную по ссылке http://developer.android.com/sdk/eclipse-adt.html), далее в таблице ниже появится Developer Tools, отмечаем его и идем далее.
После успешной установки, можно перезапустить среду Eclipse.
Установка среды для Java: JDK и JRE
Если у вас еще не установлены Java Development Kit (JDK) и Java Runtime Environment (JRE), то их необходимо установить. Сделать это можно на сайте Oracle. Скачайте и установите JDK и JRE.
Установка Android SDK
Дело осталось за малым — это скачать и установить свежий Android SDK. Это делается на сайте для Android разработчиков. Я лично установил SDK опять-таки в почётную директорию C:\Android. После этого необходимо добавить платформы и прочие дополнительные элементы SDK. Я добавил все доступные версии, так как планирую делать приложения и для ранних платформ, а также USB-драйвер и примеры приложений.
Подготовка к разработке завершена. Теперь следующий этап — создание приложения.
Создание Android-приложения
Перед тем как создать своё первое приложение, можно создать виртуальное Android-устройство, чтобы быстро тестировать на нём свой свеженаписанный софт. Вначале я хочу сказать вам несколько слов по поводу Android Virtual Device (AVD). Это виртуальный смартфон с ОС Android, на котором вы с легкостью сможете запускать созданную вами программу. Как можно заметить, преимущество Android Virtual Device состоит в том, что наглядно можно увидеть как будет работать Ваша программа на разных смартфонах с Android, а не покупать весь модельный ряд и тестировать приложение на каждом из них.
Приступим к созданию виртуального устройства Android. Следуем в меню по пути Window → Android SDK and AVD Manager.
Выбираем New в правой части окна, в появившемся окне вписываем имя виртуального устройства, платформу (допустим Android 2.1), размер карты памяти (допустим 512 Mb), тип дисплея (допустим HVGA). Затем жмем внизу на кнопку Create AVD.
Теперь создадим проект. Для этого идем по пути в меню File → New → Other, в появившемся списке Android → Android Project.
В качестве примера расскажу о разработке одной моей простейшей программы UfaTermometr, показывающей текущую температуру с датчиков, расположенных на одном из объектов местной энерго-компании.
Подробно останавливаться на разметке элементов управления не буду, так как это всё достаточно подробно описано в мануале и вообще интуитивно понятно, особенно тому, кто имел дело с html/css-вёрсткой и/или разработкой в какой-либо визуальной среде (например, Delphi). Единственное, обратите внимание как я загрузил произвольное изображение в ImageView. В поле src указывается путь, начинающийся с символа @ и далее указываете адрес по дереву. В папке res я заблаговременно создал подпапку drawable и «закинул» туда логотип, а затем просто указал ImageView путь. Легко? По мне так очень.
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import android.widget.Button;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.util.regex.*;
public class UfaTermometr extends Activity
<
@Override
public void onCreate(Bundle savedInstanceState)
<
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Button button = (Button) findViewById(R.id.refrbutton);
button.setOnClickListener( new Button.OnClickListener() <
public void onClick(View v) // клик на кнопку
<
RefreshTemper();
>
>);
RefreshTemper(); // при запуске грузим температуру сразу
>;
//—————————————————————-
public String GetTemper(String urlsite) // фукция загрузки температуры
<
String matchtemper = «» ;
try
<
// загрузка страницы
URL url = new URL(urlsite);
URLConnection conn = url.openConnection();
InputStreamReader rd = new InputStreamReader(conn.getInputStream());
StringBuilder allpage = new StringBuilder();
int n = 0;
char [] buffer = new char [40000];
while (n >= 0)
<
n = rd.read(buffer, 0, buffer.length);
if (n > 0)
<
allpage.append(buffer, 0, n);
>
>
// работаем с регулярками
final Pattern pattern = Pattern.compile
( » [^-+0]+([-+0-9]+)[^ [^(а-яА-ЯёЁa-zA-Z0-9)]+([а-яА-ЯёЁa-zA-Z ]+)» );
Matcher matcher = pattern.matcher(allpage.toString());
if (matcher.find())
<
matchtemper = matcher.group(1);
>
return matchtemper;
>
catch (Exception e)
<
>
return matchtemper;
>;
//—————————————————————-
public void RefreshTemper()
<
final TextView tTemper = (TextView) findViewById(R.id.temper);
String bashtemp = «» ;
bashtemp = GetTemper( «be.bashkirenergo.ru/weather/ufa» );
tTemper.setText(bashtemp.concat( «°» )); // отображение температуры
>;
>
После того как приложение написано, можно уже его отлаживать и тестировать.
Запуск и тестирование приложения
Вспоминаем про нашу виртуальную машину и запускаем привычной кнопкой или менюшкой Run → Run
Вот такую картину мы можем затем созерцать:
Заключение
В заключении хотелось бы сказать, что безусловно разработка приложений для Android приятна, достаточно проста и интересна. Конечно, мы рассмотрели лишь верхушку айсберга, но я надеюсь, что в умах тех из вас, кто раньше не пробовал делать ничего подобного «загорелась лампочка» и вполне возможно, что когда-то вашим приложением будут пользоваться миллионы.
Источники, ссылки
UPD: Устранение возможных ошибок
ERROR: Unable to open class file C:\workspace\Test\gen\com\example\test\R.java: No such file or directory
emulator: ERROR: no search paths found in this AVD’s configuration. Weird, the AVD’s config.ini file is malformed. Try re-creating it
— это следствие того, что у Вас кириллица в имени пользователя. Решается: идем в Компьютер → Свойства системы → Дополнительные параметры системы → Переменные среды. Создаем новую переменную с именем ANDROID_SDK_HOME и значением – путем, где находится папка AVD (например, C:\Android\). Создаем, далее ищем там же переменную Path, открываем и в поле значений через точку с запятой добавляем путь до папки tools Android SDK (например, C:\Android\tools). Сохраняем. Запускаем Eclipse, запускаем программу.
UPD 05.10.2011, во что превратилось данное приложение можно лицезреть на следующих скринах:
Это результат развития той самой болванки, которая выше дана в качестве примера.
Разработка и создание Android-приложений
Создание сайтов
Основы разработки приложений для Android
ОС Android дает пользователям возможность разрабатывать собственные приложения, бесплатно размещать их в каталогах, и даже продвигать.
Для работы с Android-архитектурой не потребуется большого багажа языков программирования, базово хватит и Java. Альтернативой могут послужить, продвигаемый Google, язык Kotlin или C++.
Этапы разработки можно условно разделить на:
Создание проекта в Android Studio;
Наполнение функционалом: навигация, реакция на действия пользователей и прочее;
Тестирование работоспособности при помощи эмулятора.
Инструменты разработки
В первую очередь вам потребуется то, где выполнять саму разработку. Android Studio — это официальная утилита, которая позволяет создавать, тестировать и компилировать приложения для Android. Она может быть установлена на Windows, Linux и MacOS. Кроме того есть и другие программы, которые существенно и не очень отличаются от Android Studio, но о них в другой раз.
В утилите имеется встроенный эмулятор, на котором вы можете выбрать виртуальный гаджет и его версию ОС для тестового запуска.
Если все необходимое установлено и готово к разработке, то пора приступать. Но прежде, давайте рассмотрим основные понятия.
Составляющие приложений Android
Независимо от сложности приложения выделяются четыре компонента:
Активность (activity) — это элементы интерфейса, предназначенные для взаимодействия с пользователями. Также они коммуницируют между собой, а затем передают данные о намерениях пользователя с помощью класса Intent. Простая аналогия, активности — это страницы сайта, а намерения — ссылки для перехода по этим страницам. У запуска приложения есть своя активность — Main.
Сервис (service) — отвечает за выполнение действий, которые не имеют интерфейса, а также за выполнение задач в фоновом режиме.
Широковещательный приемник (broadcast receiver) — аналог CRM-системы. Сообщает участникам намерения пользователей, то есть передает информацию о совершенных активностях.
Поставщик содержимого (content provider) — отвечает за подгрузку информации с FTP сервера, баз данных SQLite и прочих хранилищ.
Теперь мы точно знаем все необходимое для создания первого приложения на Android.
Этапы разработки в Android Studio
Первый этап
Здесь мы задаем имя будущего приложения, домен, место хранения проекта и название пакета. Также на этом этапе можно включить поддержку C++ или Kotlin.
Второй этап
На этом этапе выбираем на каких платформах будет работать наше приложение. Это выполняется в SDK и AVD (эмулятор устройств Android). При помощи SDK manager мы можем установить SDK пакеты разных версий ОС Android и уровней API.
Здесь мы задаем имя будущего приложения, домен, место хранения проекта и название пакета. Также на этом этапе можно включить поддержку C++ или Kotlin.
Третий этап
Тут мы указываем и называем основную активность, которая будет включаться при запуске приложения.
Четвертый этап
На сборку интерфейса IDE уйдет несколько минут. После того, как она выполнилась, нужно разобраться в трех основных моментах.
В панели обозревателя проектов есть несколько пунктов. При выборе Android будут отображены файлы приложения и путь к ним. Так, например, мы можем найти основную активность нашего приложения, которую мы выбрали вместо Main — app > java > my.app > FullAcitve.
Здесь же можно ознакомиться с файлом app > res > layout > active_full.xml, который описывает функционал и имеет в себе макет нашей активности.
Третий момент — app > manifests > AndroidManifest.xml. Этот файл отвечает за основные параметры приложения и его компоненты.
Первый запуск
Описанное выше приложение выполняет одну активность — открытие в полноэкранном режиме.
Тестовый запуск можно на подходящем устройстве Android или в эмуляторе.
Для теста на смартфоне или планшете необходимо подключить их в режиме USB-отладки. Это делается в «Настройках» устройства в пункте «Настройки разработчика».
Запуск в эмуляторе производится из Android Studio в меню Run > Run, или сочетанием клавиш Shift+F10. Далее из списка выбирайте нужное устройство, версию Android и ориентацию запуска: портретная или альбомная.
Разработка интерфейса приложения
Создание интерфейсов выполняется при помощи макетов (layouts, ViewGroup), которые определяют расположение виджетов (View) на экране. Виджеты — это всевозможные кнопки, поля форм и прочее, с чем могут взаимодействовать пользователи.
Создание и настройка интерфейсов выполняется при помощи редактора макетов (Layout Editor). Он в большинстве случаев создает XML-файлы, которые и содержат информацию об активностях.
Выбираем наш файл активности app > res > layout > active_full.xml.
Из палитры (Palette) выбираем подходящие виджеты при помощи перетаскивания.
Для примера возьмем текстовое поле (PlainText).
Перетаскиваем прочие элементы интерфейса: кнопки, текстовые поля и так далее.
Логика работы и последовательность активностей
Итак, для примера мы сделали текстовое поле и кнопку «Отправить», которая должна что-то делать. Ее действия можно описать так:
Открываем app > java > FullAcitve.
В класс FullAcitve добавляем метод SendMessege(), который будет запускать метод при нажатии на нужную нам кнопку.
Прописываем намерения в класс Intent, которые будут осуществлять последовательный запуск активностей.
Основные правила Android-приложений
Проекты находятся к собственной «песочнице», каждая из которых работает по правилам безопасности Linux:
Базово для каждого пользователя присваивается собственный уникальный идентификатор, который отвечает за доступ к файлам именно этого проекта;
Каждый пользовательский процесс изолированно выполняется на виртуальной машине;
Стандартно для конкретного пользователя включается собственный процесс.
Также существуют и исключения:
Для двух пользователей-приложений может быть задан один идентификатор, который позволяет им обмениваться файлами между собой;
Для корректной работы и выполнения проектных задач приложения могут отправлять запрос на доступ к телефонной книге, сообщениям, хранилищу, фотографиям и так далее.
Заключение
Разработка приложений для Android — это долгий путь, который каждый раз предлагает индивидуальный подход. Чем больше вы будете практиковаться и изучать возможности, тем более качественные приложения сможете предложить пользователям. А там уже можно задуматься и о монетизации.
м. Кутузовская, Кутузовский проспект, 36 строение 2, Москва, курсы в Компьютерной Академии ШАГ