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

Обновлено: 19.05.2024

Для расширения функциональности Bitrix24 удобно использовать приложения. В данной статье описано создание с нуля локального serverless приложения.

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

Если такого портала нет — создать его можно здесь.

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

Заполняем следующие поля: Название поля Значение
Название приложения* exampleApp Или любое другое
Russian (ru) Пример приложения Также можно заполнить значения для других нужных языков
Пользователи (user) отмечаем галочкой Сейчас нам понадобится только это разрешения, но в дальнейшем разрешения для приложения можно будет корректировать

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

Официальная javascript-библиотека

Создадим папку с произвольным названием и в ней единственный пока файл index.html со следующим содержанием (исходный код):

Помещаем файл index.html в zip-архив и указываем этот архив в качестве значения поля Загрузите архив с вашим приложением (zip)* в диалоге создания приложения.
Затем нажимаем кнопку "Сохранить"


Посмотрим, что у нас получилось.


Кликаем по Перейти к приложению и видим… пустое место на месте нашего приложения.

Все необходимое для нас на данном этапе находится сейчас в консоли разработчика.

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

Официальная javascript-библиотека c promise

Использование callback-функций имеет свои преимущества, но не всем нравится или не всегда подходит к ситуации.
Поэтому попробуем получить тот же результат в promise-стиле. Для этого изменим наш index.html (исходный код)


Неофициальная библиотека BX24

Если вы планируете писать приложение на typescript (можно использовать и с javascript) и/или обладаете умеренным авантюризмом, то можно попробовать использовать сторонние библиотеки для авторизации.
Например эту.
В этом случае наш index.html нужно будет изменить следующим образом (исходный код):

Опять архивируем, опять обновляем наше приложение, опять смотрим, опять все работает.

Инструменты разработки

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

В папке нашего проекта инициализируем npm:

Установим необходимые пакеты:

Можно аналогично создать проект с помощью create-react-ap или angular-cli .

Состояние проекта после всех изменений можно посмотреть здесь.

Создадим в корне нашего проекта файл server.js

Создадим папки src и public
В папку public перенесем index.html и изменим его содержимое на:

В папке src создадим файлы

Добавим скрипты в package.json :

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

Перейдите к просмотру вашего приложения:
Вы должны увидеть приветствие с именем текущего пользователя:


Если использовать официальную библиотеку, то отличаться будут только два файла:

Итоговый код проекта для использования официальной библиотеки здесь.

Ознакомиться со всеми возможными методами и возможностями API можно здесь.

Исходный код можно увидеть здесь.

И последнее замечание. Описанные выше способы и методы не являются набором лучших практик. Это скорее предложение к конструктивному обсуждению.

UPD: желающих высказаться о 1С-Битрикс или Битрикс24 прошу сделать небольшое интеллектуальное усилие и осознать, что статья не о Битрикс24 и совсем не о 1С-Битрикс.
Это если в Питере прохожий объясняет другому, как пройти к Петропавловской крепости и тут третий вмешивается с репликой:
"Да тиран был ваш Петр I. Тиран и деспот. И усы у него дурацкие".

Если есть конструктивные замечания к коду в СТАТЬЕ или к подходам или к используемым паттернам — добро пожаловать.

Гибридные мобильные приложения имеют доступ к функциям смартфона:

  • GPS;
  • Информация об устройстве;
  • Акселерометр;
  • Файловая структура;
  • Адресная книга.

BitrixMobile прибавляет к этим возможностям широкий набор нативных интерфейсов, чтобы приложение работало быстрее и выглядело привычнее для пользователя. Разработка ведется полностью на HTML5/Javascript/CSS. Взаимодействие с функциями телефона и нативным интерфейсом осуществляется через функции специальной JS-библиотеки - BXMobileApp.

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

Баллы опыта

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


уроке.

Периодически мы заново оцениваем сложность уроков, увеличивая/уменьшая число баллов, поэтому итоговое количество набранных Вами баллов может отличаться от максимально возможного. Не переживайте! Отличный результат - это если общее число набранных Вами баллов отличается от максимального на 1-2%.

Для изучения оффлайн

iPhone:
FBReader
CoolReader
iBook
Bookmate

Windows:
Calibre
FBReader
Icecream Ebook Reader
Плагины для браузеров:
EpuBReader – для Firefox
Readium – для Google Chrome

iOS
Marvin for iOS
ShortBook
обновляются периодически, поэтому возможно некоторое отставание их от онлайновой версии курса. Версия файла - от 15.12.2020.

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.

Гибридные мобильные приложения имеют доступ к функциям смартфона:

  • GPS;
  • Информация об устройстве;
  • Акселерометр;
  • Файловая структура;
  • Адресная книга.

BitrixMobile прибавляет к этим возможностям широкий набор нативных интерфейсов, чтобы приложение работало быстрее и выглядело привычнее для пользователя. Разработка ведется полностью на HTML5/Javascript/CSS. Взаимодействие с функциями телефона и нативным интерфейсом осуществляется через функции специальной JS-библиотеки - BXMobileApp.

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

Баллы опыта

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


уроке.

Периодически мы заново оцениваем сложность уроков, увеличивая/уменьшая число баллов, поэтому итоговое количество набранных Вами баллов может отличаться от максимально возможного. Не переживайте! Отличный результат - это если общее число набранных Вами баллов отличается от максимального на 1-2%.

Для изучения оффлайн

iPhone:
FBReader
CoolReader
iBook
Bookmate

Windows:
Calibre
FBReader
Icecream Ebook Reader
Плагины для браузеров:
EpuBReader – для Firefox
Readium – для Google Chrome

iOS
Marvin for iOS
ShortBook
обновляются периодически, поэтому возможно некоторое отставание их от онлайновой версии курса. Версия файла - от 15.12.2020.

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.

Гибридные мобильные приложения имеют доступ к функциям смартфона:

  • GPS;
  • Информация об устройстве;
  • Акселерометр;
  • Файловая структура;
  • Адресная книга.

BitrixMobile прибавляет к этим возможностям широкий набор нативных интерфейсов, чтобы приложение работало быстрее и выглядело привычнее для пользователя. Разработка ведется полностью на HTML5/Javascript/CSS. Взаимодействие с функциями телефона и нативным интерфейсом осуществляется через функции специальной JS-библиотеки - BXMobileApp.

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

Баллы опыта

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


уроке.

Периодически мы заново оцениваем сложность уроков, увеличивая/уменьшая число баллов, поэтому итоговое количество набранных Вами баллов может отличаться от максимально возможного. Не переживайте! Отличный результат - это если общее число набранных Вами баллов отличается от максимального на 1-2%.

Для изучения оффлайн

iPhone:
FBReader
CoolReader
iBook
Bookmate

Windows:
Calibre
FBReader
Icecream Ebook Reader
Плагины для браузеров:
EpuBReader – для Firefox
Readium – для Google Chrome

iOS
Marvin for iOS
ShortBook
обновляются периодически, поэтому возможно некоторое отставание их от онлайновой версии курса. Версия файла - от 15.12.2020.

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.

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

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

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

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

У программистов простая логика:

  • если iOS, то значит необходимо использовать objective-c или swift
  • Для веба и сервера - php или python, в особых случаях оба сразу.

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

Все программисты для создания приложения должны «подружиться» друг с другом и работать в команде. Объективно, это практически невозможно, поэтому возникает необходимость в проект менеджере, если знаний хватает, то им становится сам клиент. Если в какой-то момент клиента достанет разбираться в багах, то нужен будет ещё и тестировщик.

В общем, необходимо три - шесть человек, чтобы сделать более-менее среднее приложение для многопользовательского сервиса. Не забываем про зарплату и сроки. Во сколько миллионов вам это выйдет, можете посчитать сами по актуальным зарплатам. Если вы готовы оплачивать такую сумму за разработку, то тогда конечно, можно пойти по такой схеме. Но если есть задача сэкономить или просто протестировать идею, тогда даже считая по минимуму 30 000 в мес х 3 х 6 = 540 000 (а скорее всего 800 - 1000) – это абсурдная сумма для тестирования идеи. Вы можете рискнуть такой суммой? Не знаю, но предполагаю, что нет. Для тех, кто к нам обращается, это неадекватная сумма. Именно поэтому мы выбираем webview на базе 1С-Битрикс.

Чаще всего разговор с программистами заканчивается на том, что программист говорит, надо сделать приложение отдельно под iOS и Android. Тогда встает вопрос: «конечно, все это круто, но кто платить за это будет?». Наступает немое молчание, потому что вопрос адресован не напрямую программисту, а клиенту.

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

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

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

Доработка и обновления – это очень важная часть процесса создания приложений, и в этом нам так же помогает подход webview. Если необходимо что-то добавить или доработать, в таком случае вам нужно один раз доработать темплейт экрана. За счет этой технологии не нужно перевыпускать обновления приложения, заставляя всех пользователей его устанавливать. Приложение будет по сути браузером, воспроизводящим контент с сервера. Обновили на сервере и у всех пользователей автоматически показывается актуальная версия. При подобном подходе это стоит в несколько раз дешевле, чем нативно по «хардкору» или даже в режиме компилируемого гибрида.

Ключевые преимущества использования гибридной технологии webview и Битрикс:

Мы можем обновлять приложение в реальном времени и не заставлять пользователей постоянно обновляться

В Битриксе есть поддержка организаций, т.к. компания коммерческая. Поэтому можно говорить о некой двойной гарантии

Имеется большое количество разработчиков, которые работают на Битриксе и смогут развивать ваш проект, даже если мы закроемся :)

  • Экономия по сравнению с чисто нативной в 3-4 раза

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

Перечитал написанное и получилось так сладко, что аж самому захотелось заказать такое приложение :) Естественно, встаёт очевидный вопрос — в чём подвох? Я вижу подвох в двух пунктах. На webview не получится слелать качественный AR/VR проект, игру, либо проект, где подключение к интернету не обязательно (шагомеры, пульсомеры и тд). Но если у вас многопользовательское приложение с бизнес-логикой и статичными экранами, то такой вариант наиболее выгоден для стартапов.

Готов обсудить проекты и рассказать детально как можно реализовать и сколько будет стоить ваш проект при разработке на web-view.

Вы тоже можете рассказать о своём проекте, как автор этого материала. Соберите побольше информации — и публикуйте материал в подсайте «Трибуна».

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