К основному контенту

Подождите … Осталось 3 ч. 59 мин…


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

Для нас этот вопрос особенно важен, потому что мы ориентированы на кастомизированные проекты. Причем мы не просто берем конструктор, собираем, меняем настройки – вуаля, новый проект. Наши проекты новые без дураков, у каждого куча собственных фишек и индивидуальных особенностей. Соответственно, обновляются они тоже по одному, и не регулярно, а по мере пользовательской необходимости, так что, например, для OS Android нас Google Play как механизм обновления не устроит.

Проще говоря, обновления чего-нибудь для кого-нибудь – это то, чем мы занимаемся постоянно, проектов-то много. Придем с утра в офис и давай обновлять…

Не подумайте, что мы жалуемся. Вовсе нет! Курс на кастомизацию мы взяли сознательно и точно знали, на что идем. А проблему обновлений мы решили. Как? Секрет, но вам скажем.

Давным-давно, во времена Palm OS, мы решали ее очень просто. Удаленного обновления тогда не существовало, и все делалось одним-единственным способом – через программу HotSync.

Когда мы выпустили версию 3.0, мы в числе прочего поменяли и способ обновления. Сделали  в программе «Наполеон – Администратор» закладку «Обновления». Сейчас мы таким способом только лицензии подгружаем (о чем, кстати, в прошлый раз писали), а тогда эта закладочка много для чего использовалась.


Так вот. Формировали пакет со всеми данными, которые в программе поменялись, передавали, а на месте они аккуратно раскладывались. Не подменой программы, а именно обновлением самого кода программы. Сам файл весил немного, килобайт сто. Тогда еще 3G практически не было и вообще не так-то просто было что-то передать, так что маленький размер был существенным плюсом.

Мы очень собой гордились – филигранное же дело! Но потом от этого варианта пришлось отказаться, потому что Windows Mobile начал стремительно устаревать, меняться, производители его все время дорабатывали, о чем не всегда сообщали. Это создавало кучу неудобств и пользователям, и нам, всячески нарушало стройность и красоту нашей системы.

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

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

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

Выглядит так: идем в раздел меню «О программе»…
…и нажимаем кнопку «Проверить обновления».
Если обновления есть, программа ими займется, а по окончании процесса отчитается.
Если обновлений нет, она вам об этом скажет.

Плюсы этого подхода:

- не надо иметь в виду какие-то отдельные устройства с их особенностями, загрузить файл сможет любой «Андроид»;
- файл обычно в пределах полумегабайта, в самых исключительных случаях (при очень больших обновлениях) – до мегабайта. Редко, но бывает. Но редко. Словом, при современном уровне связи вполне симпатичный размер файла;
- он отлично дополняет наш сервис баг-репорта (о котором мы писали тут). Случается ошибка (ой, не говорите про мифические программы, с которыми ошибок не случается никогда), программа отправляет нам сообщение, мы его получаем, чиним, что надо, отправляем им – и все это без участия ИТ-представителей и вообще без лишних переписок и растолковываний.

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

Гоняться надо за надежностью.

Комментарии

Популярные сообщения из этого блога

Резервное копирование данных в "Наполеон"

Коллеги, доброго дня! К нам периодически обращаются технические специалисты, обслуживающие на стороне заказчика АСМТ «Наполеон», с  просьбой реализовать технологию бэкапа базы приложения внутри нашей системы. Конечно же, бэкап доступен каждому сторонними средствами. Но почему бы не заложить эту возможность уже в само решение? Мы тоже так подумали, и сделали это. Теперь во всех проектах начиная с июня 2020 года, эта технология уже встроена в наш сервер. Как это выглядит? В настройках сервера появилась кнопка «Резервное копирование». Выбрав эти настройки, можно задать каталог для копирования базы, количество копий, а также настроить расписание для копирования. В итоге никаких действий по остановке службы сервера комплекса «Наполеон» не требуется, и все происходит в автоматическом режиме. Технология протестирована и выходит в тираж.

Fake GPS

"Все врут"- постоянно повторял  знаменитый сериальный доктор. И, к сожалению, торговые представители не исключение. Сегодня поговорим о том, как они могут это делать. Это картинка с нашего блога. Запросы  на тему" как обмануть gps " в мобильной торговле. Сегодня мы покажем, как можно это сделать. Как обмануть GPS в мобильной торговле, краткая инструкция: 1. Идём на Google Play и вбиваем в строку поиска, что-то типа « fake GPS » Посмотрите, какое изобилие. Очень  много вариантов бесплатных программ, которые помогают указать на карте местонахождение мобильного устройства не там, где оно есть на самом деле. 2. Выбираем любое приложение. Ставим его на наш смартфон. 3. Выключаем приложение мобильной торговли. Запускаем Fake GPS . В настройках устройства выбираем режим  "для разработчика" (некоторые приложения сами открывают этот пункт в настройках).  В этом меню выбираем приложение, которое будет сообщать устройств

Фиксация перемещения торговых представителей.

Эта статья уже порядком устарела, вот актуальный вариант . Достаточно часто слышу от клиентов вопросы типа: "я смогу видеть на карте, где был торговый представитель"? Эти вопросы меня уже давно не удивляют, последние несколько лет вопросы слежения за торговыми агентами стали весьма актуальны, и в первую очередь благодаря развитию аппаратной части (коммуникаторы, КПК), встретить сейчас коммуникатор без GPS-приёмника реально сложно. Иными словами, если в коммуникаторе есть такая возможность, то почему её не использовать для слежения? И эта возможность стала использоваться в подавляющем числе проектов мобильной торговли, все разработчики софта стали предлагать "свои уникальные" технологии слежения и отображения. Получил ли заказчик надёжный инструмент контроля полевых сотрудников? Не думаю. Как работает технология GPS (Global Positioning System)? Система GPS функционирует на основе орбитальных спутников, передающих на приёмники находящиеся в устройствах радио си

Кнопка Меню в Android.

Когда то давно, лет 5 назад стремительно набирали популярность аппараты с операционной системой Android. Хорошее было время, мир выходил из кризиса, впереди было много интересного и на каждом аппарате была кнопка Меню.  Спустя 2 года парни из Android сообщили о том, что кнопка "меню" на корпусе аппарата теперь уже не модно и можно без неё. С тех пор каждый из нас ( Гильдии разработчиков ) знает, как вызвать меню на подавляющем большинстве андроид девайсов.  Кому то это покажется страшным баяном, пусть так, но на прошлой неделе мы потратили 2 часа своей жизни на то, чтобы это объяснить пользователю. Мириться с этим было нельзя, поэтому ниже привожу описание того, как вызвать функцию меню на андроид аппаратах.  Вот так выглядят механические кнопки меню на большинстве распространённых устройств: Причём в большинстве случаев для вызова функции меню достаточно одного короткого касания. Однако, часто вызов меню может быть добавлен к кнопке выбора запущенных приложений. Вы

Локализация мобильных приложений.

  Привет, мы все еще с вами! Не смотря на странную организацию «Роскомнадзор», которая без разбора банит сервера Google, включая и те, где расположен контент этого блога, и за чего иногда не все картинки видны в тексте. А в этот раз мы не сможем обойтись без картинок. Идея локализации мобильного приложения Наполеон не нова, за последнее десятилетие мы выполнили ряд локальных проектов в которых использовались мобильные приложения, имевшие интерфейс на локальных для стран заказчиков языках, а базовой функции для выбора локали не было! До недавнего времени. Еще недавно было так Теперь, при выборе отличного от русского системного языка интерфейс автоматически переключается на английский. Наша трушная демо-база от 2008 года не в счет, конечно.  Вообще весь интерфейс Можно считать это первым шагом, ведь для подключения нового языка интерфейса мобильной торговли Наполеон нужно две вещи: желание и носитель языка, знающий английский (ну или Google в самом крайнем случае). Есть идеи, на какой ещ