Как создать приложение для телефона самому бесплатно пошаговая инструкция

Время на прочтение
5 мин

Количество просмотров 64K

Сегодня я хотел бы поделиться с Вами, как быстро и просто можно создать приложение для Android с базовыми знаниями HTML CSS и JS. По данному примеру код на Java для Android будет минимальным. Благодаря платформе XAMARIN приложения для мобильных телефонов можно делать в Visual Studio.

▍Шаг 1 — Переходим на сайт и Скачиваем бесплатную версию Community.

▍Шаг 2 — Запускаем установку и выбираем параметры. Нас интересует

XAMARIN

. Но Вы также можете выбрать другие параметры.

После успешной установки мы можем создать свой первый проект.

▍Шаг 3 — Запускаем Visual Studio. Создать проект. В фильтре пишем xamarin, платформа Android, язык c# (Если желаете другой язык можете его выбрать)

▍Шаг 4 — Далее. Указываете имя для своего приложения, выбираете каталог где его сохранить. Создать.

▍Шаг 5 — Указываем пустое приложение и выбираем минимальную версию андроида для запуска этого приложения.

▍Шаг 6 — Жмем ок. Visual Studio автоматически создает код для приложения

Мы можем его запустить в эмуляторе, который идет комплекте с Visual Studio нажав клавишу F5.

▍Шаг 7 — Теперь немного модифицируем код. В данном случае мы вообще не будем использовать Java. Так как мы будем кодить на C#.

Приводим код к такому виду. Здесь мы создаем WebView контейнер который будет грузить локальный HTML файл, который находится в проекте в папке Assets.

public class MainActivity : AppCompatActivity
    {
        WebView mWebview; //это контейнер для просмотра HTML
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            Xamarin.Essentials.Platform.Init(this, savedInstanceState);           

            mWebview = new WebView(this);
            mWebview.Settings.JavaScriptEnabled = true; //это разрешение работа JS скриптов
            mWebview.Settings.DomStorageEnabled = true; //это разрешение на запись в память браузера
            mWebview.Settings.BuiltInZoomControls = true; //это разрешение на масштабирование пальцами щипком
            mWebview.Settings.DisplayZoomControls = false; //это запрет вывода кнопок масштаба
            mWebview.Settings.CacheMode = CacheModes.NoCache; //это отключает либо включает кэширование данных 

            mWebview.LoadUrl($"file:///android_asset/Content/login.html"); //это загрузка локального файла из папки Asset/Content
            SetContentView(mWebview); 
        }
        public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Android.Content.PM.Permission[] grantResults)
        {
            Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);

            base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
        }
    }

▍Шаг 8 — Создадим там папку Content.

▍Шаг 9 — Добавим в папку Content файл login.html

▍Шаг 10 — Далее уже пишем на привычном нам HTML CSS JS. Можем нажать на F5 и увидеть результат нашей работы.

По такому принципу можно создать приложение быстро и просто. Файлы html будут выглядеть одинаково на всех устройствах. То есть, Вы можете сделать приложения для Android и iOS с одинаковым интерфейсом. Не надо изучать сложные языки разметки, не надо изучать сложные макеты (сториборды) на iOS. Все можно сделать на HTML.

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

Q: Но как быть с функциями самой платформы? Пуш сообщения? Как взаимодействовать с самой платформой?

Все очень просто! JavaScript можно использовать для вызова функций Android:

▍Шаг 1 — Немного модифицируем наш файл MainActivity

//добавляем интерфейс для javascript
            mWebview.AddJavascriptInterface(new JavaScriptInterface(), "interface");             
 //

▍Шаг 2 — Далее создаем класс JavaScriptInterface на который будет ругаться Visual Studio

  public class JavaScriptInterface : Java.Lang.Object
    {
        [JavascriptInterface]
        [Export("alert")]  //здесь мы указываем название функции вызываемой из html файла interface.alert('сообщение пользователю');
        public void alert(string data)
        {
            Toast.MakeText(Application.Context, data, ToastLength.Short).Show();//здесь Андроид выведет сообщение посредством Toast
        }
    }

Мы видим, что теперь программа ругается на Export так как не знает что это такое.

▍Шаг 3 — Добавим нужную библиотеку

▍Шаг 4 — В фильтре напишем mono

▍Шаг 5 — Найдем Export и поставим галочку

▍Шаг 6 — Жмем ок и видим что ошибка пропала.

Так вы можете подключать библиотеки если вдруг Visual Studio ругается на что то.

Toast.MakeText(Application.Context, data, ToastLength.Short).Show();

Данная функция это показ всплывающей информации на экране. Она выполняется именно на платформе Андроида. То есть мы можем написать в HTML файле вызов функции Андроида. Получается полное дружелюбие двух платформ по JavaScript интерфейсу. Данные можно передавать туда сюда. Вызывать переход от одной активити в другую. Все через HTML + JavaScript.

Немного модифицируем файл login.htm:

<html>
<head>
    <style>
        h1 {
            color: yellowgreen;
        }
    </style>
</head>
<body>
    <h1>Привет мир</h1>

    <button onclick="sendToAndroid();">Нажми меня</button>
    <script>
        function sendToAndroid() {
            //здесь мы запускаем функцию андроида из HTML файла по javacsript интерфейсу

            interface.alert("текст сообщения");

        }
    </script>
</body>
</html>

жмем F5

Теперь при нажатии на кнопку HTML вызывается функция Toast андроида и выводиться сообщение пользователю.

Спасибо за внимание.

P.s. Полный листинг MainActivity

using Android.App;
using Android.OS;
using Android.Runtime;
using Android.Webkit;
using Android.Widget;
using AndroidX.AppCompat.App;
using Java.Interop;

namespace MyFirstApp
{
    [Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)]
    public class MainActivity : AppCompatActivity
    {
        WebView mWebview; //это контейнер для просмотра HTML
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            Xamarin.Essentials.Platform.Init(this, savedInstanceState);

            mWebview = new WebView(this);
            mWebview.Settings.JavaScriptEnabled = true; //это разрешение работа JS скриптов
            mWebview.Settings.DomStorageEnabled = true; //это разрешение на запись в память браузера
            mWebview.Settings.BuiltInZoomControls = true; //это разрешение на масштабирование пальцами щипком
            mWebview.Settings.DisplayZoomControls = false; //это запрет вывода кнопок масштаба
            mWebview.Settings.CacheMode = CacheModes.NoCache; //это отключает либо включает кэширование данных

            //добавляем интерфейс для javascript
            mWebview.AddJavascriptInterface(new JavaScriptInterface(), "interface");             
            //

            mWebview.LoadUrl($"file:///android_asset/Content/login.html"); //это загрузка локального файла из папки Asset/Content
            SetContentView(mWebview);
        }
        public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Android.Content.PM.Permission[] grantResults)
        {
            Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);

            base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
        }
    }
    public class JavaScriptInterface : Java.Lang.Object
    {
        [JavascriptInterface]
        [Export("alert")]
        public void alert(string data)
        {
            Toast.MakeText(Application.Context, data, ToastLength.Short).Show();
        }
    }
}


#Руководства


  • 0

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

 vlada_maestro / shutterstock

Анатолий Ализар

Пишет про разработку в Skillbox Media. Работал главным редактором сайта «Хабрахабр», ведёт корпоративные блоги.

Язык программирования для мобильной разработки на Android очень простой — это Java. Сейчас Google активно продвигает Kotlin как язык, который сможет заменить Java. Приложения пишут и на C++.

Создание простейшего приложения состоит из нескольких этапов:

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

Первым делом установите программу Android Studio. Это официальная среда разработки (IDE) для Android, она работает на Windows, macOS и Linux. Хотя при разработке программ для Android можно использовать и другие среды, кроме Android Studio.

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

Android SDK компилирует код вместе с любыми данными и ресурсами в файл с расширением .apk. Он содержит всё необходимое для установки приложения на Android-устройство.

Полезно установить и эмулятор Android, чтобы запускать и тестировать приложения. Эмулятор поставляется в комплекте с Android Studio.

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

Android-приложение состоит из четырёх компонентов. Каждый компонент — это точка входа, через которую система или пользователь может получить доступ.

  • Активность (activity) — элементы интерактивного пользовательского интерфейса.
    Одна активность задействует другую и передаёт информацию о том, что намерен делать пользователь, через класс Intent (намерения). Активности подобны веб-страницам, а намерения — ссылкам между ними. Запуск приложения — это активность Main.
  • Сервис (service) — универсальная точка входа для поддержания работы приложения в фоновом режиме.
    Этот компонент выполняет длительные операции или работу для удалённых процессов без визуального интерфейса.
  • Широковещательный приемник (broadcast receiver) транслирует нескольким участникам намерения из приложения.
  • Поставщик содержимого (content provider) управляет общим набором данных приложения из файловой системы, базы данных SQLite, интернета или другого хранилища.

Теперь попробуем сделать своё приложение для Android.

Выбираем название приложения, домен компании, путь к проекту и название пакета. Указываем, включить ли поддержку опциональных языков программирования C++ и Kotlin.

Задаём одну или несколько целевых платформ для сборки. Для этого используется SDK и AVD, менеджер виртуальных устройств Android. Инструмент позволяет устанавливать в SDK пакеты, которые поддерживают несколько версий ОС Android и несколько уровней API (интерфейсов программирования приложений).


Справка

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


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

После нескольких минут сборки Android Studio открывает интерфейс IDE. Здесь три основных момента.

Если выбрать в выпадающем меню вид Android, то вы увидите файлы проекта. Например, наша основная активность называется app > java > ru.skillbox.skillboxapp > FullscreenActivity. При создании проекта мы указали вместо активности Main полноэкранную активность.

Далее можно посмотреть файл app > res > layout > activity_fullscreen.xml. Это XML-файл с макетом для UI нашей основной активности.

Наконец, третий важный файл app > manifests > AndroidManifest.xml описывает фундаментальные характеристики приложения и определяет все его компоненты.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="ru.skillbox.skillboxapp">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity
            android:name=".FullscreenActivity"
            android:configChanges="orientation|keyboardHidden|screenSize"
            android:label="@string/app_name"
            android:theme="@style/FullscreenTheme">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

Созданное нами приложение — это одна активность, которая запускается в полноэкранном режиме и не имеет графических элементов.

Запускаем на Android-устройстве или в эмуляторе.

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

Для запуска в эмуляторе нажимаем в Android Studio кнопку Run в меню Run (Shift+F10). Выбираем подходящее устройство и версию ОС, портретную или ландшафтную (альбомную) ориентацию.

Android Studio установит эмулятор и запустит его.

Пользовательский интерфейс Android-приложения создаётся через иерархию макетов (layouts, объекты ViewGroup) и виджетов (объекты View). Макеты управляют расположением дочерних виджетов на экране. Сами виджеты — это непосредственно компоненты UI: кнопки, текстовые поля на экране и т.п.

Интерфейс активностей создаётся в Android Studio в редакторе макетов (Layout Editor) и хранится по большей части в XML-файлах.

  • Открываем файл app > res > layout > activity_fullscreen.xml.
  • Добавляем на экран из палитры (Palette) виджеты перетаскиванием мышью.
  • Например, берём текстовое поле (PlainText). Это виджет EditText, куда пользователь может вводить текст.
  • Добавляем кнопки и другие нужные элементы.

Также на экран можно перетащить кнопки и другие элементы.

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

  • Заходим в код app > java > FullscreenActivity.
  • Добавляем метод SendMessage() в класс FullscreenActivity, чтобы при нажатии на кнопку вызывался этот метод.
  • Создаём намерения (класс Intent) для перехода от одной активности к другой, новые активности, навигацию и всё остальное, что необходимо для приложения.

И, конечно, начинаем мечтать, как монетизировать приложение.

Жизнь можно сделать лучше!
Освойте востребованную профессию, зарабатывайте больше и получайте от работы удовольствие. А мы поможем с трудоустройством и важными для работодателей навыками.

Посмотреть курсы

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

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

Брюс Тогнаццини,

Usability consultant and designer,

a partner in the Nielsen Norman Group

Профессии будущего — запишись на курс прямо сейчас

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

Профессии будущего - запишись на курс прямо сейчас

Этапы разработки мобильных приложений

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

  1. Идея.

  2. Разработка прототипа.

  3. Разработка (написание кода).

  4. Тест и отладка.

  5. Релиз.

Теперь немного поговорим о каждом из них по очереди.

Идея

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

В этой статье мы вместе попробуем создать приложение-раскраску. Его идея — помочь отвлечься и занять человека чем-то интересным в свободное время. Это значит, что оно подойдет всем: и взрослым, и детям.

Разработка прототипа

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

Зачастую прототип разрабатывает UX/UI-дизайнер. Такой специалист может заранее представить, как будет выглядеть макет приложения, где будут располагаться кнопки и виджеты, а также какие функции они будут выполнять. Дизайнер создает главный экран программы и остальные страницы. При этом он указывает логическую связь и переходы между ними. Обычно это происходит с помощью специальных сервисов для создания прототипов, таких как: Marvel, InVision, Proto.io, Pixate, Framer и других.

Написание кода

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

Тест и отладка

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

Релиз

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

  • Google Play;

  • App Store;

  • Appland;

  • Samsung Apps;

  • Huawei App Store.

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

Стартуй в программировании прямо сейчас

Реши свою первую настоящую задачу на JavaScript и поделись крутым результатом с друзьями

Стартуй в программировании прямо сейчас

Гайд: как создать мобильное приложение для Android

Этап 0. Знакомимся с сервисом App Inventor

Давайте почувствуем себя разработчиками и попробуем создать свое мобильное приложение с нуля! Как мы уже говорили выше, в качестве идеи проекта возьмем раскраску для детей и взрослых.Создавать ее мы будем в известной среде визуальной разработки App Inventor.

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

1. Перейдем по ссылке на главную страницу сайта App Inventor. Чтобы начать создание мобильного приложения, нажмем на кнопку Create Apps! После этого сайт попросит вас зарегистрироваться через аккаунт Google. Делаем это и принимаем лицензионное соглашение.

Главная страница App Inventor

2. Во вкладке, которая откроется далее, укажем, что хотим создать новый проект. Проекты создаются либо через кнопку меню «Проекты» – «Начать новый проект», либо через кнопку приветственного окна Start a blank project.

Страница выбора проектов

3. Что нужно для создания приложения в первую очередь? Дать ему имя! Сделаем это в следующем окне. Так как наше приложение создает графические эскизы, назовем его SkyPaint.

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

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

Рабочий стол сервиса App Inventor «Дизайнер»

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

Интерфейс App Inventor

Давайте более подробно разберем рабочий стол Designer и поймем, что нужно для создания приложения.

Рабочий стол сервиса App Inventor «Блоки»

Это пространство сервиса, где вы можете разрабатывать программную часть продукта. Для того чтобы создать свое приложение, разработчику необходимо знать функционал, а для этого он должен понимать базовые принципы программирования. И в этом нам поможет App Inventor. В нем можно программа создается с помощью блоков. Это позволяет понять, как создать мобильное приложение самостоятельно, и при этом не написать ни одной строчки кода самому!

Блочное программирование в AppInventor

На скриншоте выше можно увидеть все инструменты этого рабочего стола. С каждым из них мы поработаем на разных этапах разработки нашей раскраски в конструкторе App Inventor.

Этап 1. Добавляем необходимые компоненты на экран

Теперь, когда вы познакомились с возможностями App Inventor, пора начинать проект! Ниже мы составили пошаговую инструкцию, как создать свое приложение «Раскраска» с разными уровнями сложности. Путь к нашему проекту начнется с отрисовки на экране. Как и художники, мы будем рисовать на холсте. Чтобы сделать это, следуйте инструкции:

  1. В меню программы «Рисование и анимация» находим компонент «Холст» и перетягиваем его на экран.

  2. В настройках указываем размеры «Наполнить родительский». Эти настройки позволят растянуть холст на весь экран конструктора.

  3. Далее выбираем в свойствах холста ширину линии и цвет будущей отрисовки.

Настройка холста в App Inventor

Этап 2. Добавляем кнопки для смены фона холста

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

  1. Заходим в компоненты «Расположение». Эта область позволяет располагать те или иные элементы интерфейса в горизонтальном либо вертикальном положении. Выбираем горизонтальное положение (далее — ГР).

  2. В свойстве ГР выбираем размер ширины по «Родительскому наполнению». Теперь наша область готова для расположения различных компонентов. Мы будем размещать кнопки.

    Настройка расположения элементов в App Inventor

  3. Перетащим 3 кнопки из вкладки сервиса «Интерфейс пользователя» внутрь области горизонтального положения и убедимся, что они появились в списке компонентов.

    Размещение кнопок в App Inventor

  4. В свойствах каждой кнопки изменим ее имя, которое будет отображаться на экране. Название важно дать каждой кнопке. Всего их у нас 3, поэтому и имени будет 3: Lite, Middle, Hard. Это будут уровни сложности нашей раскраски.

  5. Чтобы красиво разместить кнопки, установим в программе ширину каждого элемента по «Родительскому наполнению».

    Расположение кнопок по ширине холста в App Inventor

  6. Через окно конструктора «Медиа» добавим 3 рисунка для раскраски. Можете взять наш материал — Lite, Middle и Hard — или использовать свои.

  7. Проверим, отображаются ли картинки на «Холсте». Для этого в окне компонентов найдем «Холст» и зайдем в его свойства. В этой вкладке есть параметр «Фоновый рисунок». Если мы правильно перенесли медиафайлы в программу, то при нажатии на этот параметр выпадет список раскрасок, которые были подгружены. Выберем одну из них, и она появится на экране телефона.

    Добавление картинок в приложение

Проверка работоспособности

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

  1. Для начала скачаем приложение «MIT App Inventor» с официального сайта.

    Официальный сайт приложения MIT App Inventor

  2. Вернемся к сервису App Inventor. В меню программы выберем вкладку «Подключиться». В выпавшем меню выберем пункт «Помощник AI».

    Подключение приложения к MIT App Inventor

  3. Если мы все сделали правильно, на экране появится QR-код. Его можно открыть помощью мобильного приложения «MIT App Inventor», а именно кнопки Scan QR code.

    QR-код для проверки приложения в App Inventor

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

  5. Этап 3. Добавляем кнопки для смены цвета и толщину кисти

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

1. Добавляем новое горизонтальное расположение внизу экрана, чтобы разместить внутри новые кнопки с цветом.

Важно

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

2. Убираем имена кнопок, чтобы отображались только цвета.

3. В свойствах каждой кнопки выбираем цвет фона.

Важно

Цвет фона кнопки в дальнейшем будет отображать цвет кисти, которой мы разрисовываем раскраску.

4. Применяем к каждой кнопке ширину всех элементов по «Родительскому наполнению».

Настройка кнопок для смены цветов в App Inventor

Теперь нам нужно добавить инструмент, который поможет увеличивать ширину кисти. Он пригодится, когда мы будем разрисовывать нашу раскраску. Чтобы это сделать, воспользуемся инструментом «Бегунок» в конструкторе мобильных приложений. Он находится в палитре инструментов, во вкладке «Интерфейс пользователя».

1. Перетаскиваем «Бегунок» вниз экрана сервиса, желательно над кнопками выбора цвета.

2. В свойствах «Бегунка» выбираем минимальное значение – 10 и максимальное значение – 100. Это и будет диапазоном ширины кисти.

Настройка инструмента для увеличения кисти в App Inventor

После этого переименуем названия кнопок так, как называются соответствующие им цвета. Готово! Мы закончили этап прототипирования в конструкторе App Inventor. Пора программировать наши кнопки, чтобы они выполняли действия, которые нам нужны. Об этом — в следующем разделе.

Этап 4. Программирование приложения

Как мы уже говорили, в App Inventor можно закодировать компоненты, даже не зная языков программирования. Делать это мы будем на Рабочем столе App Inventor «Блоки», с которым познакомились в самом начале статьи.

Рабочий стол «Blocks» в App Inventor

Начнем с того, что запрограммируем ширину кисти через инструмент «Бегунок».

1. В списке блоков нажимаем «Бегунок». В открывшимся списке блоков для этого элемента выбираем «когда Бегунок 1. Положение Изменено» и вытаскиваем на рабочую область программы.

2. В списке блоков конструктора выбираем «Холст». В открывшемся списке блоков для этого элемента выбираем «присвоить Холст 1. Ширина Линии» и вкладываем блок внутрь блока «когда Бегунок 1. Положение Изменено».

В блоке «когда Бегунок 1. Положение Изменено» нажимаем на кнопку «получить положение Указателя» и перетаскиваем этот блок в конец линии «присвоить Холст 1. Ширина Линии».

Инструкция, как запрограммировать ширину кисти в App Inventor

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

1. В списке блоков выбираем цвет. Допустим, это будет синий. В открывшимся списке блоков для этого элемента выбираем «когда Синий. Щелчок» и вытаскиваем на рабочую область конструктора.

2. В списке блоков программы выбираем «Холст». В открывшемся списке блоков для этого элемента выбираем «присвоить Холст 1. Цвет краски» и вкладываем блок внутрь блока «когда Синий. Щелчок».

3. В списке блоков вновь выбираем синий цвет. В открывшемся списке блоков для этого элемента выбираем «Синий. Цвет Фона» и перетаскиваем в конец линии блока «присвоить Холст 1. Цвет краски».

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

Инструкция, как запрограммировать кнопки для выбора цвета в App Inventor

Готово! Мы закодировали ширину кисти через инструмент «Бегунок» и цветовую палитру. Пора приступить к программированию события отрисовки. Наша задача — сделать так, чтобы программа воспринимала наш палец как кисть, т. е. при нажатии на экран пальцем, мы могли рисовать цветом.

Отрисовка происходит на холсте, поэтому целесообразно программировать в конструкторе мобильных приложений сам холст под касания к нему. Любая точка (касание) имеет свои координаты по осям X и Y. Таким образом программа понимает, что точка находится по определенному адресу.

1. В списке блоков выбираем «Холст». В открывшимся списке блоков для этого элемента выбираем «когда Холст 1. Перетащенный» и вытаскиваем на рабочую область. Этот блок укажет программе, что наш палец — это кисть.

2. В списке блоков программы выбираем «Холст». В открывшимся списке блоков для этого элемента выбираем «вызов Холст 1. Рисовать Круг» и вкладываем блок внутрь блока «когда Холст 1. Перетащенный».

3. В блоке «вызов Холст 1. Рисовать Круг» нажимаем на кнопку «получить текущий X» и перетаскиваем в сектор centerX блока «вызов Холст 1. Рисовать Круг».

4. В блоке «вызов Холст 1. Рисовать Круг» нажимаем на кнопку «получить текущий Y» и перетаскиваем в сектор centerY блока «вызов Холст 1. Рисовать Круг».

5. В списке блоков выбираем «Холст». В открывшемся списке блоков для этого элемента выбираем «Холст 1. Ширина Линии» и перетаскиваем в сектор radius блока «вызов Холст 1. Рисовать Круг».

Инструкция, как запрограммировать кнопки для выбора цвета в App Inventor

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

1. В списке блоков выбираем «Горизонтальное Расположение» кнопок выбора фона раскраски. Если ваши кнопки названы как «Кнопка 1», «Кнопка 2» и «Кнопка 3», советуем их переименовать в Lite, Middle и Hard.

2. Нажимаем на кнопку Lite, в открывшемся списке блоков для этого элемента выбираем «когда Lite. Щелчок» и вытаскиваем на рабочую область программы.

3. В списке блоков нажимаем на «Холст». В открывшемся списке блоков для этого элемента выбираем «присвоить Холст. Фоновый рисунок. Lite.png» и переносим внутрь блока «когда Lite. Щелчок». Если вы используете другую картинку, название может отличаться.

4. Проделываем то же самое с кнопками Middle и Hard.

Инструкция, как запрограммировать кнопки для выбора цвета в App Inventor

Раскраска готова! У нас есть приложение, где можно рисовать и менять различные картинки. Не хватает лишь одной функции – стирательной резинки. Давайте добавим ее в том же конструкторе.

1. Зайдем в режим «Дизайнер» сервиса App Inventor и добавим новую кнопку. «Очистка».

Добавление инструмента

2. Далее мы переходим на рабочий стол «Блоки».

3. В списке блоков выбираем «Очистка». Если вы не переименовали кнопку, то она будет называться «Кнопка 1». В открывшемся списке блоков для этого элемента выбираем «когда Очистка. Щелчок».

В списке блоков выбираем «Холст». В открывшемся списке блоков для этого элемента выбираем «вызов Холст 1. Очистить» и переносим внутрь блока «когда Очистка. Щелчок».

Инструкция, как запрограммировать кнопки для выбора цвета в App Inventor

Выберите идеального наставника по программированию

15 000+ проверенных преподавателей со средним рейтингом 4,8. Учтём ваш график и цель обучения

Выберите идеального наставника по программированию

Как сохранить приложение

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

  1. Зайдите в пункт меню Android App.

  2. Выберите формат apk.

  3. Сохраните файл. Теперь его можно опубликовать и передать всем друзьям.

Сохранение приложения в App Inventor

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

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

This work «MIT App Inventor» is licensed undera a Creative Commons Attribution-ShareAlike 4.0 International License.
Google и логотип Google являются товарными знаками Google LLC.

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

Мобильное приложение: зачем оно нужно

Мобильное приложение служит разным целям. Оно может быть основным продуктом бизнеса или дополнительным каналом привлечения клиентов. Например, мессенджер Telegram — это самостоятельное приложение-сервис, которое закрывает потребность пользователей в общении. А у супермаркета «Перекрёсток» другая ситуация: их приложение доставки второстепенно, потому что основной продукт — это розничные офлайн магазины. Однако при любой стратегии мобильное приложение приносит пользу: помогает развивать бизнес и увеличивать продажи.

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

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

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

Есть два основных способа создания мобильных приложений — кастомная разработка и при помощи конструкторов. Оба варианта имеют свои плюсы и минусы и достойны изучения.

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

Сборка на конструкторе

Это сервисы для создания мобильных приложений без разработки. Конструктор представляет собой библиотеку шаблонов, откуда можно выбрать готовые блоки и частично видоизменить их. Например, есть элемент «Меню», вы добавляете его в свое приложение, меняя названия самих пунктов и цвет шрифта. Алгоритм понятен, результат видно сразу, и никакого взаимодействия с кодом. Такие конструкторы называются no code.

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

Сравнение low-code и no-code разработки

Сравнение low-code и no-code разработки

Главное преимущество конструкторов — скорость. Можно сделать приложение за 3-4 часа, если у него простая функциональность. Другой плюс — простота использования: в конструкторе есть готовые блоки, остается их выбрать и поменять доступные параметры.

Стоимость no code разработки — это палка о двух концах. С одной стороны, дешево, а с другой, вовсе нет. Создать мобильное приложение на конструкторе — это верхушка айсберга. Вскоре туда нужно будет вносить дополнительные элементы, а значит, привлекать разработчика и платить ему. Поэтому видимая дешевизна в начале пути обманчива. Это как с ремонтом в новостройке: можно сразу сделать качественный и дорогой, чтобы хватило на 10 лет, а можно дешево и на скорую руку, а через 2 года переделать. И не факт, что во втором случае получится сэкономить.

Создать приложение самостоятельно через конструктор недорого. Обычно конструкторы работают по системе подписки (в среднем 1000 рублей в месяц), а также предоставляют бесплатные ограниченные функции. Чаще всего это маленький набор шаблонов, при помощи которого почти невозможно сделать даже очень простое приложение. Или это бесплатный доступ ко всем шаблонам, но нельзя разместить приложение в магазине и управлять им.

Примеры сервисов для создания мобильных приложений

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

Логотип и дашборд из приложения Apps Global

Логотип и дашборд из приложения Apps Global

Apps Global. Российский сервис для создания мобильных приложений для малого и среднего бизнеса.

💰: 650-2 500₽в месяц.

📱: iOS и Android.

Функции: удобный модуль управления приложениями и сбора аналитики, можно подключить платежные системы Сбербанк, Яндекс, QIWI.

Логоти и скриншот компании Appypie

Категории мобильных приложений, которые можно создать в конструкторе Appypie и логотип компании

Appy Pie. Американский универсальный конструктор no-code для приложений, сайтов и чат-ботов.

💰: 999-2 999₽в месяц.

📱: iOS и Android.

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

Логотип иэкраны конструктора приложений iBuild App

Логотип и экраны конструктора приложений iBuild App

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

💰: $23-$59 (~1 400-3 600₽) в месяц.

📱: iOS и Android.

Функции: удобная разбивка виджетов по категориям, имитация экрана телефона и встроенная опция тестирования приложения в процессе разработки.

Кастомная разработка

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

Сравнение приложений, созданных в конструкторе и разработанных кастомно

Конструктор 🥊 кастомная разработка

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

К минусам индивидуальной разработки относят длительность. Создать мобильное приложение с нуля — дело не одного дня и не одной недели. На MVP в среднем закладывают 4 месяца, и даже этот срок примерный. Длительность связана со сложностью процесса: приложение на каждом этапе прорабатывается до мелочей, по ходу реализации у заказчика могут меняться требования к проекту, да и про тестирование не стоит забывать.

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

Какие функции можно сделать с кастомной разработкой

Кастомная разработка дает волю фантазии и позволяет создавать нестандартные фичи. Вот пример трех таких функций, которые мы в Purrweb разработали для заказчиков:

  1. Омниканальный чат для Grecha.pro. Приложение для общения рестораторов с поставщиками. Мы разработали нестандартный чат и настроили интеграцию с Телеграм. В чат можно сразу подключить представителя от ресторана и поставщика, а также приемщика и управляющего. Поставщик пишет в Телеграм, а сотрудники ресторана видят сообщения и отвечают в приложении Grecha.
  2. Соединение со станцией пауэрбанков для Energo. Приложение для аренды зарядных устройств. Настраивали связь между приложением и зарядной станцией с пауэрбанками, которую нам прислали для работы.
  3. Иерархия ролей пользователей для iZюматор. Образовательная платформа. Разграничивали набор функций для 5 пересекающихся ролей пользователей — студент, наставник, ассистент, админ, супервайзер.

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

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

Кастомная разработка MVP В конструкторе
Функциональность Любая, можно реализовать самые новаторские идеи Ограниченная, можно использовать только готовые блоки
Дизайн Индивидуальный, с элементами корпоративного стиля Собственный, но в рамках изменяемых характеристик
Команда Разработчики, тестировщик, дизайнеры, проджект-менеджер Только фаундер
Время 3-5 месяцев 3-5 часов
Стоимость 1 800 000₽ Бесплатно с минимальным набором функций или подписка на сервис (~1 500₽ в месяц)

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

Инструкция по кастомной разработке мобильного приложения

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

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

Шаг 1. Структурирование идеи

В IT тоже работает правило «семь раз отмерь и один раз отрежь». Перед поиском команды разработчиков распишите идею максимально подробно. Никто не сможет реализовать то, чего не знает сам фаундер. Зачем нужно мобильное приложение? Какие задачи будут решать пользователи при помощи приложения? Основные и второстепенные функции, способы монетизации, бюджет, партнеры, каналы распространения и другие параметры должны быть четко сформулированы.

Хороший инструмент, который помогает стартаперам оценить жизнеспособность проекта на ранних стадиях, — Business Model Canvas. Это таблица, в которой собраны основные вопросы бизнеса, на которые надо дать конкретные ответы. При составлении канвы предстоит и сегментировать клиентов, и структурировать расходы, и конкретизировать имеющиеся ресурсов. Полезный инструмент, который рассеет часть неопределенности и позже будет выступать опорой при разработке.

Незаполненная схема Business Model Canvas

Схема Business Model Canvas

Шаг 2. Выбор способа создания приложения

Перед поиском разработчиков определитесь, где будет работать мобильное приложение: на iOS, Android или на обеих платформах.

Можно пойти к фрилансерам, можно взять программиста в штат, а можно обратиться сразу к команде, внутри которой уже отлажены процессы. Мы в Purrweb разрабатываем кроссплатформенные приложения на фреймворке React Native. Если вы решите обратиться к нам, над вашим проектом будут работать разработчики, UI/UX-дизайнеры, тестировщик и проджект-менеджер. Менеджер будет координировать команду, следить за процессами и общаться с заказчиком.

Шаг 3. Составление плана работы

До начала работ пропишите план действий с дедлайнами. Согласуйте его со всеми участниками, чтобы сроки были адекватными и выполнимыми.

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

Договоритесь с исполнителями и зафиксируйте бюджет.

Скриншот из Asana c расписанием проекта

Расписание проекта в Asana

Шаг 4. Дизайн

Дизайн мобильного приложения состоит из двух этапов — UX и UI. UX (user experience) отвечает за логику действий пользователя. UI (user interface) — за внешний облик приложения: корпоративный стиль, цвета, шрифты.

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

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

Сравнительная схема UX и UI мобильного приложения

Сравнение UX и UI дизайна

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

Пример UI-кита мобильного приложения

Пример UI-кита мобильного приложения

Шаг 5. Разработка

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

Мы делим разработку на спринты — двухнедельные отрезки. После каждого спринта показываем заказчику результаты и смотрим, как приложение работает на реальных устройствах.

Шаг 6. Тестирование

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

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

Смешная картинка про важность тестирования мобильного приложения

Тестирование – это важно

Шаг 7. Продвижение

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

Шаг 8. Релиз

Когда разработка окончена, приложение публикуют в магазинах приложений. Самые популярные — App Store и Google Play.

За размещение мобильного приложения на маркетах нужно платить. App Store просит 99$ ежегодно, а Google Play — 25$ единоразово. Эти расходы также стоит учесть на этапе планирования бюджета. А также траты на случай, если не получится с первого раза опубликовать приложение. Везде есть свои нюансы. Мы хорошо их знаем, потому что всегда доводим проекты до релиза и размещения на маркетах.

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

Шаг 9. Техподдержка

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

Как оценить стоимость индивидуальной разработки

Написать нам, а мы посчитаем 🙂

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

Подробнее о стоимости мобильного приложения.

Саммари

Мобильное приложение — мастхэв в настоящее время. На них приходится половина всего интернет-трафика.

Мобильное приложение можно сделать в конструкторе или разработать индивидуально с командой.

Конструктор — это сервис с набором готовых блоков, при помощи которых можно легко делать шаблонные приложения. Быстро и недорого, но с минимальными возможностями.

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

Процесс кастомной разработки мобильного приложения:

9-шаговый алгоритм создания мобильного приложения

Алгоритм создания мобильного приложения

Purrweb — это команда профессионалов, которая 8 лет занимается созданием мобильных приложений. Посмотреть наше портфолио можно здесь. Оставьте контакты в форме ниже, и наш менеджер рассчитает стоимость вашего проекта.

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

4.7K
показов

1.8K
открытий

Привет! Меня зовут Глеб Федоренко, я основатель Galt Agency – мы создаём мобильные приложения под ключ для других бизнесов (в портфолио разные проекты: от e-com и fashion до логистики в Европе).

До агентства я делал несколько своих проектов, связанных с мобильными приложениями.

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

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

Процесс разработки приложения

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

Идея, анализ рынка, бизнес-модель

Первое, о чём стоит задуматься, — нужно ли это приложение вообще. Точно ли нельзя обойтись мобильной версией сайта?

Ваши действия зависят от стадии бизнеса. Если вы делаете приложение для работающего бизнеса, и оно поможет вам масштабироваться – вопрос отпадает.

Если делаете стартап, перед стартом работ нужно сделать три шага:

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

Разберём на банальном примере. Все люди периодически хотят есть, а значит есть вечная проблема — где взять еду. Её решают несколько типов приложений: доставки продуктов из нескольких магазинов, собственные приложения доставки крупных супермаркетов, доставки готовой еды из ряда заведений и собственные приложения у крупных кафе и ресторанов. Ещё недавно на этом рынке была проблема — всё везли слишком долго, от 45 минут. Её решило известное приложение доставки продуктов за 15 минут с названием двухколёсного транспорта. И это выстрелило!

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

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

Требования к продукту

Идея есть, осталось продумать реализацию. На этом этапе стоит задать себе пять важных вопросов:

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

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

Создание прототипа

Прототип — это визуализация будущего приложения: от схем и набросков к интерактивной модели. На этом этапе нужно чётко понимать:

  • кто будет пользоваться приложением — примерный портрет клиента, чтобы понимать вкусы и предпочтения;
  • в какой ситуации — на бегу в метро или лёжа в постели в выходной;
  • для чего — развлечься и занять время, сделать рабочие задачи, пообщаться с друзьями или что-то купить.

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

В прототипировании есть три важных этапа:

UX дизайн/wireframe’инг — это создание прототипа приложения в виде схем и набросков экранов.

Сначала нужно продумать путь пользователя: он скачал приложение, а что дальше?

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

Каждый шаг пользователя — это отдельный экран или wireframe.

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

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

Продумывая дополнительные возможности, снова стоит вспомнить о пользователях: когда они будут использовать приложение? Как сделать это комфортнее? Например, добавить в приложение для чтения книг тёмную тему, так как люди часто читают вечером. Или убирать товары из корзины жестом, ведь доставку многие оформляют на бегу.

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

Интерактивный прототип — важная часть, которую многие пропускают, по сути – анимированные макеты.

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

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

Разработка

На этапе разработки важно разделить два понятия — frontend и backend. Запомнить легко:

  • frontend — то, что спереди, то есть взаимодействует с пользователем;
  • backend — то, что сзади, изнутри, то есть серверная часть приложения.

Многие концентрируются только на первом и недооценивают важность второго. На самом деле, архитектура приложения важна не меньше, а то и больше оболочки:

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

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

Разработка архитектуры приложения включает выбор используемых технологий, построение базы данных, API (через него приложение взаимодействует с сервером), интеграции CRM, CMS и много других технических нюансов. Если вы это не знаете — лучше даже не пытаться разобраться самому, а довериться профессионалу. И надеяться, что он выберет современные и надёжные инструменты, а иначе — проблемы в работе приложения заставят вас начать разработку с нуля или отдать его на доработку. Научить вас разбираться в архитектуре приложений за одну статью мы не можем. А вот создать для вас приложение — можем.

Помимо архитектуры, необходимо разработать оболочку приложения. Варианта два:

  • кроссплатформенное решение — один код, который работает на разных операционных системах (iOS, Android, MacOS, Windows);
  • нативное приложение — разрабатывается под конкретную операционную систему.

Первый вариант — универсальный, современный, позволяет сэкономить около 35% ресурсов на разработке (если вы запускаете iOS и Android), а также предоставить одинаковый пользовательский опыт на всех платформах.

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

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

Для 99% бизнесов, кроссплатформенное решение – оптимальный по всем параметрам вариант.

Запуск

Приложение готово, пора запускать! Так думают многие, но работает это по-другому. Сначала его нужно протестировать.

Тестирование проводится в два этапа:

Пользовательское тестирование

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

Нагрузочное тестирование

  • выдерживает ли приложение имитацию большого потока пользователей;
  • выдерживает ли приложение имитацию атаки;

Эту работу обычно выполняют QA-специалисты (quality assurance, контроль качества).

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

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

Куда идти за помощью

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

Фриланс

Фрилансеры – самый недорогой и самый проблемный вариант.

С фрилансерами всегда есть риски:

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

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

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

Своя команда

Ещё один вариант — собрать свою команду в штат. Понадобится хотя бы 2 разработчика (frontend и backend), дизайнер и менеджер проекта. Здесь есть свои подводные камни:

  • Придётся провести не одно собеседование самому и всё равно разобраться в разработке или нанять рекрутера.
  • Подбор людей займёт немало времени.
  • Стоит сразу подумать, что потом делать с командой. Ведь им придётся платить зарплату и придумывать задачи.
  • Это дороже, чем команда фрилансеров.

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

Аутсорс

Оптимальный вариант — обратиться в агентство, где разработку приложения полностью возьмут на себя. Все этапы — от анализа рынка до запуска, проведут специалисты. А ещё будут сопровождать проект после релиза, научат вас администрировать приложение и не сорвут сроки. По крайне мере, в агентстве Galt мы делаем именно так.

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

Сколько стоит приложение

Цена зависит от того, какая команда будет работать над приложением. Есть три варианта:

  • Фриланс – самый доступный, хоть и проблемный вариант (нюансы работы описали выше). В любом случае придется отдать минимум несколько сотен тысяч.
  • Своя команда — по самым скромным подсчетам, от 600 тыс. в месяц (минимум два разработчика, дизайнер, менеджер) и несколько месяцев работы. По опыту, реальные расходы будут выше.
  • Агентство — золотая середина. Относительно недешево, но выгоднее содержания своей команды, комплексно, в срок и голова ни о чём не болит: проект сделают под ключ и помогут с дальнейшей поддержкой.

От чтения статьи до готового приложения всего один шаг — заполните бриф, мы составим для вас смету и оперативно начнём работу.

Кто уже имел опыт с разработкой собственного приложения — удачный или нет, пишите в комментариях, обсудим 👇

Понравилась статья? Поделить с друзьями:
  • Как создать киви кошелек инструкция
  • Как создать курс в moodle пошаговая инструкция
  • Как создать канал на ютубе с телефона андроид пошаговая инструкция
  • Как создать презентацию в либре офис пошаговая инструкция
  • Как создать лагерь в life after инструкция