Как создать Android-приложения. Пять бесплатных конструкторов

Есть четыре стандартных блока приложения Android:

Структура платформы Android

Платформа Android представляет собой программный стек операционной системы на основе Linux, предназначенный для управления устройством (аппаратурой), памятью и процессами. Различные компоненты этого стека представляют собой несколько уровней иерархии и, в целом, обеспечивают функционирование мобильного устройства. Одни из этих компонентов необходимы для работы непосредственно с оборудованием устройства, другие обеспечивают функции связанные с телефонией, позиционированием, мультимедиа и так далее, а третьи предоставляют приложениям фреймворк для реализации многочисленных возможностей мобильного устройства. Другими словами, платформа Android включает в себя непосредственно операционную систему, программное обеспечение промежуточного уровня (middleware) и набор приложений (как встроенных, так и сторонних)[1].

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

- Аппаратура — набор элементов, обеспечивающих функционирование устройства.

- Linux Kernel (+Drivers) — ядро операционной системы Linux и набор драйверов, которые обеспечивают базовые механизмы управления оборудованием и распределения памяти, управления задачами, обеспечения безопасности и так далее.

- Библиотеки (C/C++), используемые различными компонентами операционной системы.

- Dalvik Virtual Machine (DVM) — виртуальная машина Dalvik, которая обеспечивает среду выполнения Android приложений и компонентов операционной системы (ОС).

- Core Library — основные Android библиотеки, содержат большинство функций доступных в ядре библиотеки языка Java (Java API), а так же специальные функции операционной системы Android.

- Application Framework (каркас приложений) — набор Java классов (API), предоставляющий приложениям интерфейс к функциям операционной системы и библиотекам.

- Встроенные и пользовательские приложения.

Установка JDK

Перед тем как создать приложение для Android, нужно установить Android Studio или любой другой компилятор. Однако ни один такой продукт не будет правильно работать без предварительной инсталляции JDK (Java Development Kit). Распространяется этот компонент совершенно бесплатно и может быть скачан с официального сайта компании Oracle. Будьте внимательны при выборе разрядности: программа для 64-битной ОС не может работать в 32-разрядной Windows.

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

Читайте также:  GBoard — отличная клавиатура от Google

Чтиво

Наличие русскоязычной литературы по разработке под Android, лично я, пока не наблюдал. Поэтому сразу перейдем к англоязычному контенту… Итак, для меня стали Библией Android: Apress Beginning Android и Apress Pro Android.

В этих книгах достаточно популярно и доступно описывается что, зачем и почему, а так же приводятся достаточно понятные примеры… Стоит отметить, что обе книги в качестве базы рассматривают платформу Android 1.5, версии книг под 2.0 (Apress Beginning Android 2 и Apress Pro Android 2, соответственно) хоть и присутствуют на сайте издателя, для загрузки мне еще не попадались.

Много справочного материала (правда с частично неработающими примерами;-)) есть на основном сайте проекта (), полезным будет не только почитать реферы и DevGuide но и посмотреть видео уроки.

Appsbar

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

Appsbar

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

Appsbar

Gamesalad

Плат­фор­мы: Android, iOS, HTML5, Windows (+Phone)

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

Gamesalad

Мину­сы: мы не уве­ре­ны, что это минус для тако­го про­дук­та, но на вся­кий слу­чай — сер­вис про­сит от 17 дол­ла­ров в год. Судя по резуль­та­ту, это того стоит.

Как создать приложение для андроид и продвинуть его?

Лучше всего выставлять рекламу на личных страницах в социальных сетях или в блоге.

Для наиболее быстрого распространения следует:

  1. Использовать перекрестные ссылки с другими владельцами соцсетей и блогов.
  2. Выкладывать ссылки в собственном блоге.
  3. Рассказывать друзьям о созданной программе.

На видео ниже представлен процесс создания приложения с помощью сервиса Appsgeyser:

Многие не знают, как создать приложение для андроид, и боятся фразы «язык программирования».

Однако ничего страшного и сложного в разработке программ нет.

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

  • Твиттер
  • Facebook
  • Google+
  • Вконтакте

Шаг третий. Инициализация

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

Читайте также:  7 лучших сайтов для скачивания APK-файлов на Android

Каждый блок определяет стадию загрузки или, выражаясь языком разработчиков Android, действие. Блоки отделены друг от друга директивой on, за которой следует имя действия, например on early-init или on post-fs. Блок команд будет выполнен только в том случае, если сработает одноименный триггер. По мере загрузки init будет по очереди активировать триггеры early-init, init, early-fs, fs, post-fs, early-boot и boot, запуская таким образом соответствующие блоки команд.

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

Шаг третий. Инициализация

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

Mount_all ./_устройства

Она означает, что теперь init должен подключить все файловые системы, перечисленные в файле./_устройства, который имеет следующую структуру:

Имя_устройства_(раздела) точка_монтирования файловая_система опции_фс прочие опции

Обычно в нем содержатся инструкции по подключению файловых систем из внутренних NAND-разделов к каталогам /system (ОС), /data (настройки приложений) и /cache (кешированные данные). Однако слегка изменив этот файл, мы можем заставить init загрузить систему с карты памяти. Для этого достаточно разбить карту памяти на три 4 раздела: 1 Гб / ext4, 2 Гб / ext4, 1 Гб / ext4 и оставшееся пространство fat32. Далее необходимо определить имена разделов карты памяти в каталоге /dev (для разных устройств они отличаются) и заменить ими оригинальные имена устройств в файле fstab.

Шаг третий. Инициализация

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

Читайте также:  Как посмотреть статистику приложений в андроид

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

Какой нужен бриф?

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

В бриф на разработку мобильного приложения нужно включить:

  1. Личную информацию о заказчике и его контакты, естественно (имя, страна\город, компания, как связаться).
  2. Далее нужно рассказать о проекте — описать идею и бизнес-задачи, и это самая важная часть брифа. Опишите кратко, но четко суть проекта, что можно будет делать с помощью приложения, кто ваша ЦА, каких результатов хотите добиться.
  3. После нужно дать разработчику понять что вы хотите реализовать с технической точки зрения, то есть уточнить тип и функциональность приложения (web-приложение и мобильное, для iOS или Android, доработка\поддержка существующего проекта или создание с нуля, онлайн и офлайн приложение и т.д).
  4. Предоставьте примеры, если такие есть, желательно описать, что именно может быть схожим, а что должно отличаться.
  5. По возможности добавьте больше деталей (Если есть понимание, из каких экранов должно состоять приложение, опишите состав экранов и их функциональность. Или приложите ссылки на ТЗ, прототип, документацию).
  6. Состав работ. Здесь опишите какие части проекта уже есть и какая у них степень готовности, нужна ли вам помощь с проектировкой и написанием ТЗ, нужна ли серверная часть, админка, дизайн, последующая техподдержка (и на какой срок), продвижение.
  7. Сроки и бюджет. Укажите к какой дате нужна оценка, что хотите видеть в ней по структуре (оценка на почту в виде вилки, или смета, или КП с презентацией). Далее — к какой дате ожидается увидеть проект готовым (есть ли строгая дата сдачи проекта? Когда вы хотите получить бета-версию? А когда финально законченный проект?). И, конечно же, предполагаемый бюджет, в который вы хотите уложиться (знание ограничений бюджета поможет сразу предложить вам правильное решение задачи, вписывающееся в ваши рамки). Если вы затрудняетесь назвать бюджет, назовите хотя бы, на какой порядок сумм вы рассчитываете.
  8. Этот пункт необязателен, но если вы проводите тендер и у вас есть какие-то особые пожелания, также укажите это в брифе.

Перейдя по ссылке вы можете посмотреть шаблон брифа на разработку мобильного приложения от студии разработки Live Typing.