Лучшие статьи и кейсы стартапов
Включить уведомления
Дадим сигнал, когда появится
что-то суперстоящее.
Спасибо, не надо
Вопросы Проекты Вакансии
Разработка мобильных приложений iOS и Android
Рекомендуем
Продвинуть свой проект
Лучшие проекты за неделю
31
Эбиа

Эбиа

www.ebia.ru

23
Enlite

Enlite

enlited.ru

22
YAGLA

YAGLA

yagla.ru

15
likearea

likearea

smm.li

15
SE Ranking

SE Ranking

seranking.ru

14
Cookiezz

Cookiezz

cookiezz.com.ua

13
Venyoo

Venyoo

venyoo.ru

12
Perezvoni.com

Perezvoni.com

perezvoni.com

12
Reader

Reader

Интернет-журнал о современных технологиях.

Показать следующие
Рейтинг проектов
Подписывайтесь на Спарк во ВКонтакте

Проба гибридных технологий ​HTML5/JS в нативных приложениях для iOS/Android

66 0 В избранное Сохранено
Авторизуйтесь
Вход с паролем
Мы почти четыре года занимаемся разработкой нативных мобильных приложений на Objective-C и Java. И Нам часто предлагают партнерские отношения, отдавать на субподряд разработку мобильных приложений.

Но на самом деле у студий разработчиков мобильных приложений нет проблем с объемом заказов. Существует огромный дефицит программистов на Objective-C и Java. А если прибавить к этому работу проект-менеджера и тестировщика в двойном объеме, получается печальная картина. Впрочем Мы долгое время противились истории гибридных приложений, так как они были откровенно не потребные. Но время шло... технологии менялись и учитывая отсекание древних устройств со столь же древними операционными системами, осталась iOS 8+ и Android 4+ у которых с отображением HTML/JS все на очень высоком уровне.

Что же это за «зверь» гибридное приложение? Это нативное мобильное приложение с набором определенных функций и использованиям в качестве верстки окно браузера, который отображает сверстанную страницу. Нативное приложение обеспечивает доставку web-страниц, написанных на HTML5/JS, а также их хранение. В случае, если данные на сервере не изменялись, приложение отобразит сохраненную версию, та же логика и при отображении при отсутствии интернета. Можно называть это гибридным приложением, можно нативным, но главное это ощущение от пользования приложением. По большому счету это нативное приложение с версткой на HTML/JS. Прибавьте к этому знания гайдов верстки Apple и Google и опыт нативной разработки мобильных приложений и результат будет отличный.

С чего все началось.

Первым проектом на базе полуфабриката нативных приложений был интернет-магазин «Артлавка», старт был легким, но Нам пришлось голопом доделывать все фишки 1С-Битрикс редакции бизнес в нативном виде и в офф-лайн. О трудностях переписывания php/js на Objective-C/Java рассказывать не буду, это очень тернистый путь, но Нам казалось в этом будет изюминка. Отрезвев от гордости за написанное, осознали что появились две очень существенные проблемы: дальнейшее развитие и офф-лайн.

Развитие проекта по всем канонам необходимо было организовать двумя программистами на Objective-C и Java, но с партнерами-студиями разработчиков мобильных приложений все оказалось не так радужно и откровенно говоря почти невозможно.

Оффлайн работа приложения с локальной базой данных с товаром свыше 20 тысяч тоже проявила себя на старте приложения не так как Мы планировали. Все дело в том что при выгрузке остатков товаров из 1С в 1С-Битрикс база данных фактически стирается и загружается заново, что мешало Нашим механизмам определить на самом деле измененные данные и отправить в приложение только изменения. Таким образом сейчас при старте приложения обновляется вся база целиком, что отражается на длительной загрузке.

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

Анализируя все трудности реализации проекта, Мы приняли решение что крайне необходимо подключить к процессу модернизации и совершенствованию Нашего полуфабриката именно 1С-Битрикс программистов, которых очень много.

Естественно Мы рассматривали новомодные технологии React Native и Xamarin, но с ними та же проблема, малое количество специалистов. Да и при реализации на подобных инструментах, опять же нет совместимости с наработками 1С-Битрикс специалистов.

Главное преимущество на котором Мы сконцентрировались, это возможность одним специалистом развивать сайт и мобильное приложение на 1С-Битрикс. Естественно стоимость такой работы сконцентрированной на одном типе специалистов положительно сказывается на стоимости.

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

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

Какие же проблемы на сегодняшний день с гибридными приложениями?

Первая и ключевая. Создатели гибридных приложений относятся к таким приложениям как к чему-то очень дешевому, соответственно и результат какой-то тяп-ляпный. Отсутсвие понимания что на смену страницам и ссылкам пришли окна и кнопки, а также отстраненность от гайдов Apple и Google по дизайну приложений, получаются какие-то мобильные сайты запущенные внутри приложения. Про Push-уведомления отдельная история, т.к. для web-разработчиков, это всего лишь СМС в телефон, а не инструмент для нотификации обновления конкретных данных например. Вебщик проще сделает оттягивалку или кнопку обновить и перезагрузит всю страницу, как он это привык делать с сайтом на компьютере.

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

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

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

Перейдем к практике

Хочу познакомить Вас с третьей версией Нашего полуфабриката для интернет-магазина на 1С-Битрикс, чтобы уже понимать о чем же вообще речь, Мы выкатили промежуточную версию. Есть еще временные недоработки: отсутствует фильтр товаров и возможность заказать товар не на физ. лицо и так по мелочи.

Сервер у Нас сейчас самый минимальный и даже не на SSD, чего требует 1С-Битрикс. И в запасе есть возможности по ускорению приложений, но может данной скорости будет достаточно, чтобы не жертвовать возможностями по сопровождению и развитию мобильных проектов партнерами 1С-Битрикс.

Демонстрация полуфабриката мобильного интернет-магазина

Для Android: https://play.google.com/store/apps/details?id=net.malahovsky.appforsale

iOS еще не опубликован, для тестирования напишите мне на evgeny@malahovsky.net

Буду очень признателен за заполнение простенького опроса: https://goo.gl/forms/u02YZpl84hgVAEj02

Позже можно будет развернуть на своем действующем или тестовом интернет-магазине 1С-Битрикс демо версию.

Решение располагаться будет по адресу: http://marketplace.1c-bitrix.ru/solutions/mlab.appforsale/

Промосайт: http://promo.malahovsky.net/mobileappshop/

0
Комментариев еще не оставлено
Выбрать файл
Читайте далее
Загружаем…
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать