Программируем back-end
Как?

Ничего нового - все по старому*

• Компоненты
• Шаблоны

* - но есть особенности
2
Начинаем

1. Отдельный шаблон
2. Папка приложения
• config.php (настройка приложения)
• settings.php (настройка внешнего вида)
• меню
Отдельный сайт не нужен!
Пример:
http://dev.1c-bitrix.ru/community/blogs/carter/bitrix-mobile-config.php
3
Особенности

1. Открытие ссылок
2. Кеширование
3. Связь между окнами
4. Новые возможности (bitrix mobile api)

4
Ссылки

Как открывать?
• app.loadPageBlank({url: ‘/path/to/page.html’}) - добавляет в стек
• app.loadPageStart({url: ‘/path/to/page.html’}) - начинает новый

Встроенный браузер
• app.openUrl(‘http://1c-bitrix.ru/’)

Просмотр документов
• app.openDocument({url: ’/upload/file.doc’})

5
Кеширование

Содержимое окон кешируется.
Выключить кеш - просто не указывать data-pageid в меню

6
Кеширование - формы

Помните про формы и другой интерактив
Поменяли содержимое страницы - не забудьте восстановить status
quo

7
События

Восстанавливаем содержимое страницы - onOpenPageBefore:
1. Показать форму
2. Сбросить значения полей

Все доступные события:
http://dev.1c-bitrix.ru/api_help/bitrixmobile/events/index.php
8
Пользовательские события

Свои события - легко!
•Генерируем:
app.onCustomEvent('onSomeEvent', {/* event data */});

•Ловим:
BX.addCustomEvent('onFeedbackThemeSelect', function(data){ /*
some actions */ });

Обработчики могут быть вложенными

9
Пользовательские события - Пример

Возврат на 2 страницы назад
При выборе темы генерируем событие

И обрабатываем его в предыдущем окне

10
Топбар и кнопки

Стандартные иконки:
• plus
• back
• refresh
• users
• cart
Можно свои
11
Топбар и кнопки

Как:
• Добавляем тип в settings.php
• Используем его в addButtons

12
Фото

Параметры:
• source: 0 - выбрать из альбома, 1 - сделать фото
• saveToPhotoAlbum: сохранить альбом (актуально для source = 1)
• targetWidth и targetHeight: макс. размеры
• quality: качество фото (не ставьте больше 40)
• callback: обработка фотографии (отправка на сервер и пр.)

Как отправить фото?
Используйте FileTransfer (есть в Bitrix Mobile)
13
Автобусы Кирова
Мобильное приложение с информацией о
работе общественного транспорта в г.
Киров
•

Расписание автобусов/троллейбусов,
маршруты, остановки, расчетное время
прибытия.

•

Правила пользования, обратная связь.
Что использовали?
• Геолокация - определяем местоположение пользователя, показываем его на карте,
находим ближайшие остановки.
• Google Maps Javascript API - работа с картой: отображение машин, маршрутов движения,
остановок.
• Доступ к камере - возможность вложить фото в сообщение обратной связи.
Ближайшие остановки / поиск
Ближайшие остановки / поиск
Машины на карте (ГЛОНАСС)
Расписание движения
Обратная связь / фото

21
Доки, мануалы

Что почитать?
• http://dev.1c-bitrix.ru/api_help/bitrixmobile/index.php официальная документация 1С-Битрикс
• /bitrix/modules/mobileapp/install/js/mobileapp/bitrix_mobile.js неофицальная документация :)
• Любой КП, папка /mobile/, модуль eshopapp для БУС - примеры
использования API
• http://docs.phonegap.com/en/3.1.0/index.html - официальная
документация phoneGAP
• http://dev.1c-bitrix.ru/community/blogs/carter/ - блог Евгения
Петриченко

22
Константин Лихачев
Медиа-Сервис
г. Киров, ул. Московская, 25-г
e-mail: likhachev@smedia.ru
+7 (8332) 35-18-86
http://smedia.ru
http://bxmobile.ru

23

Программируем back-end: функции, события, особенности мобильного приложения

Editor's Notes

  • #17 Сматрфоны и планшеты становятся все более популярными инструментами для получения и потребления информации По данным IDC, рынок ПК сокращается в два раза быстрее, чем ожидалось.
  • #21 Информирование граждан о государственных услугах и местах их предоставления Обеспечение доступа к наиболее востребованным услугам (на примере штрафов ГИБДД) Участие граждан в улучшении жизни города, края, области Мобильный справочник городских объектов и телефонов доверия Решение ориентировано на администрации города, края, области Мобильное приложение для сайта государственной организации – это не только возможность получать популярные электронные услуги в любой точке планеты, где есть доступ к сети Internet, но и активно участвовать в диалоге с властями, быть в курсе важных событий и легко планировать свой досуг.