Скрипт конструктора мобильных приложений

Обновлено: 18.04.2024

Simple UI – это полностью бесплатная платформа для создания мобильных рабочих мест на Android. Конструктор позволяет создавать мобильные клиенты для учетных систем и самостоятельные приложения на телефонах, ТСД (терминалах сбора данных), планшетах, электронных киосках и других устройствах. При этом не нужно разбираться в мобильной разработке, Android SDK ведь основная цель платформы – максимально упростить процесс разработки и поддержки, сделать его визуальным, собирать приложения из готовых блоков с минимумом кода. Причем код обработчиков можно писать на языке учетной системы либо задавать логику обработки событий с помощью команд REST, SQL и визуального конструктора. Проект постоянно развивается изыскивая новые способы упрощения разработки и повышения функционала и является пожалуй самым быстрым способом как создать MVP-проект так и продакшн-систему под конкретное внедрение или тиражный продукт.Тестировалось на 1С: Предприятие 8.3 релиз 8.3.13.1865.

Полезные ссылки:

Само приложение доступно в Google Play и в apk к статье


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

  • Организация экранов со всеми возможными элементами ввода и отображения информации с произвольной разметкой
  • Работа со штрих-кодами аппаратных сканеров или ТСД, в т.ч. подключение Bluetooth-сканеров в режиме SSP
  • Распознавание штрихкодов камерой устройства
  • Распознавание текста (OCR) с камеры с использованием оригинального улучшенного алгоритма
  • Распознавание голоса
  • Синтез речи (воспроизведение текста голосом)
  • Звуковые сигналы
  • Передачу GPS-координат и расшифровку мест
  • Фотографирование и прикрепление из галереи
  • Ввод рукописной подписи
  • Печать из приложения
  • Прием заказов и команд прямо на встроенный веб-сервис(не Push) напрямую, вззаимодействую я с пользователем в ральном времени
  • Переключение экранов напямую с сервера или по теймеру
  • Организация произвольных структур (документов) с прикреплением файлов и мультимедиа

Режимы работы

Приложение на Simple UI может работать в нескольких режимах:

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


Самостоятельный режим, где конфигурация хранится на устройстве и функционирует независимо от бекенда или в гибридном режиме. Обработка событий происходит командами конфигурации на устройстве. При этом приложение может работать как полностью off-line так и обмениваясь информацией с учетной системой через REST-интерфейс, т.е. сочетая различные режимы хранения и передачи данных:


Список релизов и развитие функционала

Обновление 21.11.19:

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

Обновление 11.12.19:

3 режима поиска в списке документов (по распознаванию текста, голосовой ввод, по штрих коду)

таблица в виде списка карточек

отправка оповещения на устройство в виде синтеза речи в фоновом режиме

React App Builder конструктор мобильных приложений
React App Builder 12
React App Builder

React App Builder скрипт конструктор мобильных приложений - при помощи этого скрипта вы сможете делать безграничное число приложений для iOS и Android. Создайте собственное приложение, подобрав один из имеющихся макетов. После этого добавьте, редактируйте, поменяете расположение разделов приложения.

Набор из больше чем 30 отдельных разделов. Заменяем подходящий шаблон приложения, расцветки, макет. Накидываем контент и далее издаём приложение в Google Play и App Store.

Скрипт React App Builder это приложение для тех создателей и (не разработчиков) те, что намереваются производить приложения для iOS и Android тем самым развивая свой бизнес.

Размер: 7.5 МБ

BeDesk скрипт служба поддержки клиентов

BeDesk 1.2.5 скачать скрипт службы поддержки клиентов

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

AdAdmin скрипт рекламной платформы

AdAdmin 3.80 скачать скрипт рекламной платформы

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


PhoneGap — это OpenSource платформа, позволяющая разрабатывать мобильные приложения на HTML, JavaScript и CSS под различные платформы (практически без изменения кода приложения) в их число входят: iOS, Android, Blackberry, WebOS, Symbian и Windows Mobile на подходе. Прелесть его в том, что он не требует навыков разработки под конкретную платформу. Вы пишете свое приложение на JavaScript, используете HTML и CSS для разметки. Вы пишете мобильное приложение как обычный сайт или веб-сервис.
Движок PhoneGap расширяет API браузера и добавляет следующие возможности: доступ к акселометру, доступ к камере (пока только фото), доступ к компасу, доступ к списку контактов, запись и прослушивание аудио файлов, предоставляет доступ к файловой системе, позволяет работать с разными HTML5 хранилищами localStorage, Web SQL и т.п а также позволяет безболезненно обращаться к любому кросс-доменному адресу.
Кроме платформы PhoneGap имеет, пока бесплатный, билдер приложений под все устройства в один клик.

jQuery Mobile

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

Если вы знаете HTML, JavaScript, CSS, jQuery и испытываете проблемы с Java, Objective-C и другими, но желаете попробовать свои силы в мобильной разработке, то эта статья для вас.

Мы будем создавать мобильное приложение под Android (iOS требует значительно больших усилий для тестового приложения: Mac Only, нужен сертификат разработчика) под названием Tumblr Reader (не хотел создавать ещё один хабраридер).

Установка пакета программ для разработки

Если у вас стоит Eclipse + ADT Plugin, то эту часть можно пропустить. Оригинальная статья.
Подробная статья.
1. Скачайте и установите Eclipse Classic
2. Скачайте и установите Java Platform (JDK)
3. Скачайте и установите Android SDK
Запустите SDK Manager, выберете все модули и установите их все (займет минут 20)
4. Установите ADT Plugin
5. Сконфигурируйте ADT Plugin — вам необходимо указать путь до Android SDK иначе ничего не получится
6. Скачайте последнюю версию PhoneGap (на момент написания она была 0.9.4)

Создание эмулятора Android


Откройте SDK Manager (он может открыть различные окна, закройте их) выберите Virtual devices, нажмите New…
Создайте эмулятор как показано на скришноте:

Важно: Необходим именно Android 2.2. Если вы под Windows и в имени пользователя есть не ANSI символы, то вам необходимо после создания виртуалки сделать следующее: переместите c:\Users\ВашИмя\.android\avd\Android-2_2.avd в какую-нибудь другую папку, например в c:\Android\Android-2_2.avd , откройте файл Android-2_2.ini и измените path= на соответствующий.

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


1. Запустите Eclipse в меню File выберите New > Android Project

Скриншот с официального туториала


3. Добавьте phonegap.jar в Build Path для этого нажмите правой кнопкой на корень проекта, выберите Properties, в списке выберите Java Build Path, выберите вкладку Libraries, нажмите Add JARs… и укажите путь до phonegap.jar


4. Откройте файл TumblrReader.java , который лежит в папке src/
4.1. Замените Activity на DroidGap
4.2. Замените setContentView() на super.loadUrl("file:///android_asset/www/index.html");
4.3. Добавьте import com.phonegap.*;

6. Откройте AndroidManifest.xml, допишите следующий код (он дает доступ к определенным ресурсам) нам нужен только android.permission.INTERNET :

Если вы будете экспериментировать с АПИ, то добавьте все опции:


в activity тег добавьте android:configChanges="orientation|keyboardHidden"

7. Запустите ваше приложение в эмуляторе: Run As > Android Application если вы сделали все правильно, то должен открыться эмулятор с вашим приложением.

Создание Tumblr Reader

Далее в статье описывается поэтапное создание приложения. Теперь Eclipse можно свернуть и открыть ваш любимый редактор. Eclipse понадобится для перезапуска приложения в эмуляторе.

Cкелет приложения index.html

Я не останавливаюсь на принципах создания jQuery Mobile страниц. Вы можете прочитать сами.
Создаем index.html в папке /assets/www

Подключаем необходимые скрипты

В body добавляем jQuery Mobile страницу — «Список мелких картинок» aka Dashboard

При клике на мелкую картинку будет открываться страница с большой, добавляем страницу «Большая картинка»

Скелет готов, добавим немного css (файл css/main.css)

Логика приложения js/main.js

Сперва изучим Tumblr API в разделе JSON output немного описан формат JSON: по ссылке нам придет JavaScript вот такого формата:

Жаль, что не чистый JSON(P), но у нас есть jQuery.getScript, которая все разрулит за нас. Больше ничего о формате неизвестно. По исходнику стало понятно, что tumblr_api_read.tumblelog.title это заголовок блога, а tumblr_api_read.posts это массив постов формата:

Мы будем использовать только эти поля, поэтому остальные не описываю.

Рендер для отрисовки списка картинок

Каждая картинка будет вида:

Загрузчик данных с Tumblr API

Загрузчик дергает URL и получает соответствующие данные, используя данные мы отрисовываем список картинок.

Инициализатор приложения

Он инициализирует имя пользователя из localStorage, выполняет предварительную загрузку и делает другие операции по мелочи.

Теперь наше приложение полностью готово и его можно запустить в Эмуляторе Run As > Android Application , если вы сделали мелкую правку и не хотите пересобирать приложение просто откройте index.html в любом WebKit браузере.

Собираем приложение под все платформы в PhoneGap Build

Ссылки

Документация

Я продемонстрировал простое приложение, которое может работать и как веб-страница, вы можете попробовать создать что-то более сложное, использующее API телефона. Предложения, пожелания, критика приветствуется!

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

Какими бывают мобильные приложения

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

  1. Традиционный. Предполагают написание кода, создание макета, оптимизацию, команду и другие этапы.
  2. Зерокодинг. Не требует знания языков программирования. Это похоже на использование Тильды (это тоже, кстати, инструмент зерокодеров) для создания сайтов: не надо знать CSS, HTML, JS — просто расставляешь блоки с контентом, настраиваешь анимацию и получаешь отлчиный сайт.
  3. Low-code — это что-то среднее между зерокодингом и программированием: писать код все-таки приходится, но немного.

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

При этом обычная разработка затянется на 3−6 месяцев и съест до миллиона рублей — если работать с фрилансером или скромной региональной студией.

На курсе «Зерокодер мобильных приложений» ты научишься создавать приложения под iOS и Android. Простые — за 1−2 дня, сложные — за 1−2 недели. Курс состоит из 5-и модулей, 30+ уроков, тренировочных задач и Q&A-сессий с лучшими экспертами в Glide и Adalo.

На чем собирают мобильные приложения без кода

Самые мощные и популярные инструменты мобильной разработки без кода — Adalo, Glide и Bubble. С их помощью можно создать и опубликовать мобильное приложение. Они бывают трех типов:

Мобильная версия сайта — сайт в интернете, адаптированный под экраны смартфонов. Это самый «бесправный» тип приложений: всегда нужен интернет, пуши можно включать только в браузере, постоянно на виду элементы навигации браузера.

PWA (Progressive Web Application) — когда мобильная версия сайта устанавливается на смартфон как приложение. Из плюсов — не надо поддерживать две кодовые базы, под iOS и Android, приложение всегда «обновлено» до последней версии, можно работать с некоторыми нативными функциями смартфонов. Например, отправлять пуши, устанавливать ярлык на экран, элементы навигации браузера не мешают (их просто нет). такие приложения умеют создавать и Bubble, и Adalo, и Glide.

Нативные — когда приложение публикуется в официальных сторах. В Adalo уже встроена такая функция, а приложения на Bubble можно обернуть в специальный контейнер и тоже опубликовать в Google Play и App Store. Нативные приложения позволяют работать со всеми функциями телефона: камерой, микрофоном, GPS, контактами, файлами, акселерометром, push-уведомлениями, памятью девайса, адаптивной версткой — всё, как в обычном коде, только без кода.


Glide

    по макияжу по подписке. аренды жилья в Вене. фотошколы. наставников в Digital.

Glide — платформа для создания мобильных приложений без кода. Лучше всего функции сервиса описывает девиз «Создавайте приложения из Google Sheet за пять минут, бесплатно». Glide-приложения нельзя загрузить в сторы, но можно опубликовать в интернете как PWA. Платформа отлично подходит для создания простых приложений и MVP — много готовых симпатичных шаблонов, понятные интуитивные настройки.

На бесплатном тарифе есть ограничение по объему данных, 10% комиссия со всех платежей и лого Glide, а платные стартуют от $12 в месяц.

Adalo

    для бронирования тренировок и снаряжения в фитнес-клубе
  • Индийский headhunter для педагогов

Adalo — nocode-платформа для создания веб- и мобильных приложений, которые можно публиковать в App Store, Google Play или в интернете как PWA. Новая версия раскатывается в сторы прямо из личного кабинета на платформе, публикуется тоже оттуда (но нужен аккаунт в AppStore и Google Play). Adalo позволяет создавать приложения в интуитивно-понятном интерфейсе методом drag’n’drop из готовых или кастомных дизайн-шаблонов. Эта платформа мощнее Glide и на ней можно собирать более сложные приложения.

На бесплатном тарифе нет ограничений по количеству приложений, а вот количество данных фиксировано — плюс придется «потерпеть» лого платформы. Платные тарифы стартуют от $50 в месяц и дают возможность публиковаться в сторах.

Bubble

    для геймификации карьеры мобильных сайтов для рестораторов

Bubble — одна из самых продвинутых визуальных сред программирования для создания веб-приложений. На нем можно собирать настольные или адаптивные веб-приложения для любого размера экрана.

Bubble позволяет проектировать сложную бизнес-логику — это настоящий комбайн. Приложения на Bubble нельзя выкладывать в сторы напрямую, но есть обходные пути — обернуть их в специальный контейнер и после этого опубликовать в маркетплейсах от Apple и Google.

На бесплатном тарифе тоже есть лого платформы, нельзя привязать приложение к своему домену, количество объектов в базе данных ограничено 200 и закрыт доступ к API. Платные тарифы начинаются от $25 в месяц.

Экспресс-сравнение платформ


Мобильный зерокодинг и традиционная разработка: стоимость и сроки

Разработка приложения «под ключ» — сложный процесс, в котором участвует целая команда специалистов. Программисты пишут бэкенд и фронтенд, дизайнеры создают «человеческий» UX/UI и вкусную картинку, тестировщики ищут ошибки, проджекты управляют всем процессом, лиды — командами, эккаунты общаются с клиентами. И каждый не просто просиживает штаны, а действительно работает и нужен.

Сколько денег возьмет за разработку веб-студия и сколько времени потратит, зависит от сложности проекта и имиджа компании, но в среднем — от 500 тыс. до 5 млн рублей, а средний срок разработки — 4−6 месяцев (по сведениям с Хабра, DTF и Appinventive). Сложные приложения легко могут стоить дороже 10 млн рублей и пилиться больше года — особенно если поджимают сроки или подрядчик входит в какой-то рейтинг вроде Теглайна. И всё это без учёта поддержки, обновлений, продвижения и возможных проблем с масштабированием и доработками.

Nocode-разработка обходится дешевле. Например, Сергей Горелов в одиночку собрал полнофункциональное приложение для фитнес-клуба за пару недель — такое же приложение обычная студия будет разрабатывать около полугода и возьмёт за работу 700−800 тысяч рублей.

А Евгений Спорыхин из nocode Hero вместе с WeLovEnocode запилил карьерный трекер с геймификацией на Bubble. Вместе с детализацией техзадания, доработками, дополнительными функциями и пятью итерациями по дизайну (клиент не совсем понимал, какой он хочет видеть визуальную составляющую) это заняло три месяца и обошлось заказчику примерно в 700 тысяч рублей.

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

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

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

Примеры мобильных приложений без кода на Glide

MAKE. Мобильная методичка по макияжу по подписке на Glide

  • Платформа: Glide
  • Время на разработку: 2 недели (большая часть — наполнение базы данных)
  • Затраты: 12$ (базовый тариф в Glide)

Игорь — профессиональный программист. Как-то раз ему понадобилось выполнить техническую задачу за пару дней — так он вошел в зерокодинг. Сначала автоматизировал на Integromat, потом перешел на Glide. А в пандемию он назерокодил приложение для обучения макияжу MAKE — помогал жене перевести бизнес в онлайн.


Игорь освоил Glide за три дня, еще 4 дня делал структуру приложения. Дольше всего вносил список из 400 продуктов — это заняло 2 недели😂 Приложение интегрировано с ЮKassой, Integromat и GetCourse, можно выбрать свой цветотип, форму лица и глаз, найти инструменты и средства для макияжа, а также получить советы — где их лучше купить, чтобы не попалась подделка.


Цепочка проверки оплаты в Integromat

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


Настройка автооплаты и цепочки уведомлений в GetCourse

WOM. Airbnb для аренды квартир в Вене

  • Платформа: Glide
  • Время на разработку: 70 часов
  • Затраты: 12$ (базовый тариф в Glide)

Путешествуя по Вене, digital-стратег Олег Ширяев обнаружил, что арендовать на короткий срок квартиру в центре города практически невозможно. Если и удавалось найти вариант, то квартира была едва пригодна для жилья. Все объекты контролировались риэлторами и разного рода посредниками.

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

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

Сервис разработан на Glide — платформе мобильной none-code разработки. Через веб-интерфейс разработчик редактирует визуал, а с данными работает в подключенной Google-таблице, которая выполняет роль базы данных. Создатели Glide говорят, что простейшие приложения можно собрать за 7(!) секунд.


Интерфейс Glide

WOM получился полноценной площадкой с каталогом квартир, картой, разделами «Вам может быть интересно» и «Сейчас просматривают». Олегу понадобилась ночь на изучение интерфейса Gilde и 2-3 дня на создание экранов и заполнение базы данных.


Экраны в WOM

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

Проекция. Онлайн-фотошкола с элементами соцсети и админкой

  • Платформа: Glide
  • Время на разработку: 3 недели
  • Затраты: 12$ по базовому тарифу

Еще один пример удачного приложения, собранного без кода — обучающая платформа «Проекция». Ее разработал Илья Ткач для сообщества фотографов «Фотодепартамента».

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

Есть задания в виде тестов (чек-листы) и такие, к которым нужно приложить фото или написать развернутый ответ. Преподаватель видит результаты и выставляет оценки. Учеников, которые сделали задание лучше других, можно хвалить «знаком отличника».

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

Примеры мобильных приложений без кода на Adalo

Kangoo Club Kaluga. Приложение для фитнес-клуба с расписанием, записью и бронированием униформы

  • Платформа: Adalo
  • Время на разработку: 2 недели
  • Затраты: 12$ по базовому тарифу

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


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

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


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

Приложение Kaluga Kangoo можно скачать в App Store и Google Play.

Пример мобильного приложения без кода на Bubble

Ornum. Мобильное приложение для геймификации обучения и личного развития

  • Платформа: Bubble
  • Время на разработку: 3 недели
  • Затраты: бесплатный тариф Bubble

Еще год назад Евгений управлял SMM-агентством и не думал, что скоро будет собирать полноценные мобильные приложения. Вместе с WeLoveNoCode он сделал Ornum — приложение для управления карьерой.


Само приложение Евгений собрал в одиночку — 2−3 недели, после этого его упаковали в специальные контейнеры, чтобы загрузить в App Store и Google Play. На сегодняшний день это самое крутое мобильное приложение на Bubble от российских разработчиков, которое мы встречали.

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


Настройки механик геймификации мобильного приложения в редакторе Bubble

Революция в мобильной разработке

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

В мобильной разработке сейчас происходит то же, что и в создании сайтов в 2014−2015 годах. Технологии быстро развиваются и становятся доступными — это даёт хороший запас маржинальности в коммерческих и личных проектах. Gartner прогнозирует, что к 2024 году 65% разработки всех приложений перейдет на no- и low-code — так что прямо сейчас мы наблюдаем революцию в разработке.

Те, кто поверил в новые технологии, уже сейчас зарабатывают на мобильной разработке без кода от 300 тыс. руб. в месяц на 2−3 проектах. Это золотое время — и оно скоро может закончиться. Сейчас один человек может составить конкуренцию студиям мобильной разработки со штатом программистов и дизайнеров: nocode-разработка занимает меньше времени, а себестоимость проекта снижается до 50 раз.

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

Изучить Adalo и Glide и сделать свое мобильное приложение без кода можно на нашем курсе «Зерокодер мобильных приложений».

Рассказываем, как запустить обычное веб-приложение JavaScript на мобильном устройстве с Android и выложить его в Google Play. Спойлер: это по силам даже начинающим разработчикам.

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Распространение мобильных устройств в наше время достигло невероятных значений. Мобильный телефон есть у 2 из каждых 3 человек на планете. С помощью мобильных люди общаются, делают покупки, получают образование, играют. Это огромный рынок, который нельзя оставлять без внимания.

Однако чтобы разрабатывать приложения для мобильных платформ, нужно владеть определенным языком программирования. Swift – для iOS, Java или Kotlin – для Android. Или JavaScript – для iOS, Android и ряда других ОС!

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Да-да, JavaScript везде, и на мобильных в том числе. На данный момент есть несколько известных и проверенных фреймворков для создания кроссплатформенных мобильных приложений на этом языке, например, React Native и Apache Cordova, а также основанные на ней проекты.

Для разработки на React Native требуется знание библиотеки React и основных паттернов работы с ней. Cordova же может взять обычное веб-приложение и обернуть его нужным кодом так, чтобы оно работало на мобильных ОС. Такие "гибридные" приложения не могут похвастаться высокой нативной производительностью, однако очень просты в разработке.

Cordova отлично подходит для создания простых проектов без сложной графики. Сейчас мы как раз разработаем один из них – классическое Todo App для Android на JavaScript.

Так как мы пишем приложение для Android, нам понадобится JDK (Java Development Kit) и Android SDK – среда разработки для приложений Android. А также собственно Cordova.

Установочник для нужной платформы можно найти на сайте Oracle. Выбирайте версию не выше JDK 8, с более новыми Cordova не будет работать.

Запомните, куда установился пакет, и сохраните этот путь в переменной окружения JAVA_HOME .

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

А также добавьте его в переменную PATH .

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Android Studio

Для разработки под Android также потребуется установить Android Studio.

После установки зайдите в программу и откройте меню SDK Manager (при открытом проекте Tools -> SDK Manager).

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Здесь вы найдете путь к Android SDK (Android SDK Location), сохраните его в переменную окружения ANDROID_SDK_ROOT .

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Добавьте в переменную PATH каталоги tools и platform-tools :

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Затем убедитесь, что установлен пакет Android SDK Build-Tools (во вкладке SDK Tools).

Создание эмулятора

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

Для этого зайдите в меню AVD Manager:

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

И создайте эмулятор с нужными параметрами.

Cordova

Осталось глобально установить npm-пакет Cordova:

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

Вероятно, самый интересный вопрос – как запустить обычную веб-страницу на устройстве Android. Чтобы ответить на него, создадим пустой проект Cordova и разберемся на практике.

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

Команда для создания нового проекта Cordova:

  • Первый аргумент – todo-app – это название новой папки, которую Cordova создаст в текущем каталоге.
  • Второй аргумент – com.furrycat.todo – это идентификатор проекта.
  • Третий аргумент – TodoApp – имя приложения.

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

Внутри находится файл config.xml , которые содержит все мета-данные, а также папка www – именно в ней и расположен код веб-приложения. Сейчас это простейшая страница – index.html – с логотипом Cordova и парой надписей, к ней подключен файл стилей и скрипт. Вы можете открыть эту страницу в браузере:

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Заглянем в файл js/index.js . Здесь очень простой код: установлен слушатель события deviceready , его обработчик просто добавляет класс .ready к одному из html-элементов.

deviceready – это событие, которое вызывает сама Cordova. Нетрудно догадаться, что оно возникает после того, как устройство, на котором запущено приложение будет готово его воспроизводить. Так как мы запустили проект в обход Cordova, это событие не возникает, поэтому надпись Connecting to device не исчезает.

Добавление платформы

Укажем целевые платформы для проекта – у нас это только Android:

Сборка проекта

Команда для сборки проекта для Android-платформы:

В папке platforms/android/app появилась новая директория build . Внутри нее есть файл outputs/apk/app-debug.apk . По сути это уже рабочий apk, который можно запустить на Android-устройстве.

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Загрузите его на смартфон, запустите – и вы увидите ту самую дефолтную веб-страницу. Все работает!

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Как видно, надпись connecting to device сменилась на device is ready. Это значит, что кордова вызвала событие deviceready , а приложение отреагировало на нее.

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

Нет необходимости вручную копировать apk на устройство при каждом изменение приложения.

Чтобы запустить проект на смартфоне, подключите его к компьютеру, разрешите отладку и запустите команду:

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

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Можно обойтись и без реального устройства.

Запустите созданный ранее эмулятор в Android Studio:

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

и снова выполните команду:

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

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Теперь мы умеем запускать обычную веб-страницу как приложение на Android-устройстве.

Теперь заменим дефолтную страницу Cordova на собственное крутое Todo-приложение.

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Это очень простое веб-приложение, написанное с использованием фреймворка Vue. Его исходный код находится в корне проекта в новой папке src . Сборка осуществляется с помощью webpack, собранные файлы помещаются непосредственно в папку www .

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

Откройте приложение в эмуляторе или на подключенном устройстве и убедитесь, что все работает:

Отладка

Запущенное на эмуляторе или реально устройстве приложение Cordova можно отлаживать через браузер Chrome.

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

Для примера реализуем нативные диалоговые окна и оповещения.

Диалоговые окна

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

Теперь в коде приложения нам доступ объект navigator.notification с четырьмя методами:

  1. navigator.notification.alert
  2. navigator.notification.confirm
  3. navigator.notification.prompt
  4. navigator.notification.beep

Нам нужен метод confirm :

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Напоминания о делах

Еще одна очень полезная функциональность – напоминание о делах в установленное время.

Для начала добавим возможность выбрать дату и время – нам понадобится плагин skwas-cordova-plugin-datetimepicker.

Использование в коде:

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

А для планирования оповещений понадобится плагин cordova-plugin-local-notification.

Использование в коде проекта:

Чтобы запланировать оповещение на определенное время, используется параметр trigger.at .

📱Создаем мобильное приложение для Android на JavaScript с помощью Apache Cordova

Публикация проекта в Google Play

Приложение готово, осталось только собрать его для продакшена.

В директории platforms/android/app/build/outputs/apk должна появиться новая папка release, внутри которой вы найдете неподписанный apk-файл.

Чтобы выложить проект в Google Play, его нужно подписать.

Для этого нужно сгенерировать ключ:

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

Теперь скомпилируем проект с ключом:

Важно указать правильное имя ключа и алиас.

Осталось запаковать проект в новый apk. Для этого понадобится утилита zipalign (она находится в папке build-tools в Android SDK):

Этот apk-файл можно добавлять в Google Play через ваш аккаунт разработчика.

Читайте также: