sailfish os магазин приложений

Как мы разрабатывали мобильное приложение на ОС Аврора (Sailfish Mobile OS RUS)

Наша команда разработала и поддерживает корпоративное мобильное приложение по приёму платежей в рамках платёжной системы для крупного заказчика. Теперь оно используется сотрудниками клиента на устройствах под управлением операционной системы Аврора (ранее Sailfish Mobile OS RUS) в тридцати семи российских регионах. В этом посте я коротко расскажу об этом проекте и более подробно – о самой операционке.

image loader

Предыстория

Наша компания НОРБИТ разработала платежную систему для одного крупного заказчика. В состав системы входит серверная часть и несколько клиентов: desktop, web и мобильное приложение на операционной системе Android. Первоначально систему внедрили в нескольких регионах Российской Федерации. В 2016 году заказчик решил расширить региональное присутствие, и на данный момент система внедрена и успешно функционирует в 37 регионах.

В 2017 году заказчик решил использовать устройства на отечественном программном обеспечении и приобрел несколько тысяч устройств INOI R7 с операционной системой ОС Аврора (Sailfish Mobile OS RUS). Перед нашей командой поставили задачу создать ещё один мобильный клиент платёжной системы.

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

a74a747327fcd1b9a446e01f57a6c4b8

Как проходил проект

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

Здесь надо отдать должное самой платформе. Разработка под ОС Аврора ведется с использованием фреймворка Qt. Да и для написания простых приложений можно использовать декларативный язык QML, который в большинстве случаев позволяет не прибегать к низкоуровневому программированию на С++. В итоге задача свелась к поиску толковых разработчиков под Qt, коих на рынке в общем-то хватает.

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

Взаимодействие по Bluetooth с ККМ

В проекте требовалась поддержка контрольно-кассовых машин (ККМ) от АТОЛ и «Штрих». Оба производителя ККМ выпускают продукцию с возможностью подключения через Bluetooth. Примеры работы с Bluetooth можно найти на сайте Qt.

«Штрих» поставляет драйвер для работы с ККМ в виде исходного кода, скачать который можно по ссылке. Там же есть проект-пример использования драйвера.

Драйвер для АТОЛ можно скачать с сайта с ключевыми словами для поиска «Драйверы торгового оборудования». В своём проекте мы использовали восьмую версию драйвера.

В начале проекта были ККМ как с поддержкой 54-ФЗ, так и без. Поэтому требовалась поддержка четырех типов кассовых аппаратов (АТОЛ/«Штрих» с 54-ФЗ/без 54-ФЗ).

Работа с большими обновлениями базы

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

Оптимизация сборки приложения

В начале на проекте были допущены «детские ошибки» – включение заголовочных файлов в заголовочные файлы. Переход к forward declaration позволил существенно сократить время сборки проекта. Также много времени на сборку и установку проекта занимает создание rpm-пакета. Если выбрать тип установки «копирование бинарных файлов», повторная сборка, установка и запуск проекта в отладке пройдут за считанные секунды. Также для более быстрой сборки на эмуляторе можно отключить сборку классов для работы с штрих-кодами и кассовым аппаратом. Вариант установки без сборки rpm потенциально опасен тем, что зависимости не будут подтягиваться.

Автоматизированная сборка приложения

Сборку приложения можно организовать без запуска среды разработки. Если собирать из среды разработки, то в консоли сборки можно увидеть запускающиеся команды. Эти же команды можно запустить через bash или batch.

Но несмотря на все трудности, мы выполнили поставленные заказчиком задачи. 31 декабря 2017 года приложение было успешно запущено, и на нем были приняты первые платежи. В данный момент приложение работает на нескольких тысячах мобильных устройств под управлением ОС Аврора.

ОС Аврора

А теперь поговорим подробнее об операционной системе и ее особенностях.

99be500c64d2c545424296002646d1d3

ОС Аврора (ранее Sailfish Mobile OS RUS) — это доверенная операционная система для мобильных устройств (смартфонов и планшетов). Ее развивает компания «Открытая мобильная платформа». Система основана на платформе Sailfish OS и предназначена для корпоративных пользователей и государственных корпораций.

В 2018 году 75% компании «Открытая мобильная платформа» и контрольный пакет финского проекта приобрел «Ростелеком». В то же время был принято решение заменить название Sailfish Mobile OS Rus на операционную систему Аврора. Это лучше подходит для отечественного рынка и, по задумке авторов, соответствует целям продукта, а также вызывает позитивные ассоциации как в России, так и за рубежом.

Для управления мобильными устройствами используется продукт SF Cloud, также разрабатываемый «Открытой мобильной платформой». Это серверное решение, которое может быть развёрнуто на оборудовании организации-заказчика и позволяет через панель администрирования в любое время отслеживать статус мобильных устройств сотрудников, устанавливать, обновлять и удалять приложения на устройствах, управлять обновлениями ОС, блокировать доступ к устройству, безопасно удалять данные (wipe).

Полный цикл разработки ОС Аврора происходит в России. Это позволило ей войти в Единый реестр российских программ для ЭВМ и БД. На данный момент это единственная мобильная ОС с таким статусом, поэтому совместимость с ней является необходимым условием для мобильных приложений из реестра.

«Под капотом» ОС Аврора находится POSIX-совместимое окружение. То есть это полноценный Linux для мобильных устройств. Например, в отличие от Android, здесь «из коробки» есть systemd, D-Bus, ssh и другие сервисы и утилиты, привычные для «больших» дистрибутивов на ПК. В то же время система включает компонент libhybris, предназначенный для использования драйверов из Bionic-окружения в POSIX-совместимых системах. Это позволяет запускать ОС Аврора на устройствах, изначально спроектированных для Android. В том числе есть официальная поддержка Sony Xperia X и Sony Xperia XA2.

Практически все нужные API обеспечиваются с помощью фреймворка Qt и основанных на нём дополнительных библиотеках, которые используются и для реализации системных приложений и сервисов. Лицензия Qt позволяет писать как открытые приложения, так и проприетарные. Во втором случае существенным требованием является соблюдение правил LGPL, но при использовании библиотек Qt на коммерческой основе и это требование становится необязательным.

Sailfish SDK доступен публично и также ориентирован на работу с Qt. Он включает в себя следующие компоненты.

Qt Creator — IDE, развиваемая проектом Qt и предоставляющая глубокую интеграцию и инструменты для удобной работы с библиотеками Qt. Поддержка Sailfish Mobile OS RUS достигается с помощью плагина, который настраивает соответствующие комплекты сборки для архитектур ARM и x86 и средства управления сборкой и эмуляцией.

image loader

Среда сборки — Linux-окружение с набором инструментов и целей, упакованное в виртуальную машину для VirtualBox. Распространение в таком формате позволяет использовать одинаковые средства сборки, независимо от операционной системы разработчика — поддерживаются Linux, Windows и macOS, но и накладывает ряд ограничений. Например, проекты для ОС Аврора требуется размещать в определённых директориях, которые видны виртуальной машине: домашняя директория пользователя или альтернативная директория, указываемая при установке SDK.

Эмулятор — виртуальная машина для VirtualBox, включающая образ Sailfish OS, собранный для x86. По сути, это полноценная сборка операционной системы, позволяющая проверять многие аспекты работы приложений. Но в то же время удобно использовать физические устройства для проверки, например, использования датчиков.

Qt QML Live — инструмент, который позволяет «на лету» изменять графический интерфейс приложения при внесении правок в QML-файлы проекта без необходимости пересборки установочного пакета. Такой подход позволяет существенно ускорить процессы разработки интерфейса пользователя.

Документация — набор справочных статей, охватывающий как описание API, предоставляемых Qt, так и специфичные для ОС Аврора компоненты: например, документацию по Sailfish Silica. Документация доступна и для отдельного прочтения, и в формате контекстной справки, вызываемой для выделенного в редакторе исходного кода элемента.

Чтобы начать разрабатывать приложения для ОС Аврора, можно не только изучать документацию, но и пройти учебные курсы. Есть публичный вводный курс на платформе Stepik, описывающий первые шаги и основные аспекты разработки. Также сотрудникам партнёров компании «Открытая мобильная платформа» можно по запросу на адрес edu@omprussia.ru получить доступ к более полному учебному курсу, включающему, в том числе, уроки по использованию датчиков, навигации, мультимедиа и т. п.

Результатом разработки приложения является установочный rpm-пакет. Перед тем, как он попадёт на устройства сотрудников компании-заказчика, ему предстоит пройти следующие этапы.

1. Подпись валидным сертификатом разработчика. На самом деле, этот этап является составной частью сборки установочного пакета, поскольку подписывается не только сам rpm-файл, но и файлы, входящие в его состав. Наличие позволяет как проверить происхождение установочного пакета, так и целостность его структуры. Чтобы выполнить подпись, требуется получить инструменты генерации ключей и сертификат разработчика, для этого партнёры компании «Открытая мобильная платформа» могут направить соответствующие запросы по адресу dev-support@omprussia.ru.

2. Передача установочного пакета администратору SF Cloud. В зависимости от организации рабочего процесса этот этап может быть реализован по-разному. Важно, что в результате пакет должен оказаться загруженным в репозиторий SF Cloud и быть доступен для распространения на устройства через панель управления. При этом при загрузке в репозиторий происходит не только проверка подписи пакета, но и корректности структуры rpm-файла, на которую налагается ряд требований (обусловлены как стандартизацией путей размещения компонентов приложения, так и требованиями к безопасности). Например:

ry0 dvhej4iepjegkyqjwgshs48

Для автоматизации проверки таких требований служит скрипт rpm-validator. Аналогичная проверка доступна в SDK и может быть вызвана из IDE в центре управления Build Engine. Важно уточнить, что настройки скрипта rpm-валидатора могут быть обусловлены целевой платформой и требованиями заказчика. Получить rpm-validator для сертифицированных сборок ОС Аврора можно в «Открытой мобильной платформе» по запросу на адрес dev-support@omprussia.ru.

3. Распространение на устройства сотрудников через панель администрирования SF Cloud. Этот этап, как правило, включает техническое и функциональное тестирование на небольшой группе устройств. При установке rpm-файла на устройства с сертифицированной сборкой ОС Аврора также происходит проверка подписи и структуры. Разработчики могут быть привлечены для исправления возникающих ошибок до загрузки на устройства всех сотрудников.

Готовы в комментариях обсудить особенности разработки мобильных приложений на ОС Аврора.

Статья подготовлена при поддержке компании «Открытая Мобильная Платформа»

Источник

Обзор операционной системы Sailfish OS

Содержание

Изучив смартфон Jolla, мы решили подготовить отдельный материал по Sailfish OS — операционной системе, на которой работает этот аппарат. Поскольку по самому смартфону мы сделали обзор, здесь не будем касаться вопросов производительности, работы модулей связи и тому подобных вещей. Кроме того, подчеркнем, что эта статья — результат первого знакомства с операционной системой. Возможно, после длительной эксплуатации смартфона проявятся детали, которые не были описаны здесь. Впрочем, мы будем внимательно следить за развитием новой ОС, и как только появится новая информация — подготовим новый материал.

jolla smartphone

Sailfish OS — это попытка выходцев из Nokia продолжить наработки ОС MeeGo, почившей вскоре после прихода в Nokia Стивена Элопа. Чтобы лучше разобраться в запутанной родословной Sailfish OS, советуем вам освежить в памяти статьи про Nokia N9 и Nokia N950, а также наш репортаж с Mobile World Congress 2013, где впервые была представлена Sailfish OS.

Мы не будем заново пересказывать всю эту историю и лишь упомянем несколько ключевых фактов, необходимых для понимания базовых принципов функционирования ОС. Итак, в основе Sailfish OS — ядро Linux с надстройкой на Qt и Mer, а интерфейс и приложения сделаны на QML и HTML5. Исходный код полностью открыт, что позволяет энтузиастам модифицировать ОС, а также устанавливать ее на другие смартфоны. В частности, уже есть успешные попытки установки Sailfish OS на Nokia N9 и Google Nexus 5. Отметим также, что на MWC 2013 работу Sailfish OS гендиректор Jolla (ныне — руководитель группы разработки) Марк Диллон демонстрировал нам на Nokia N950.

Впрочем, никаких новостей о том, что Jolla планирует лицензировать свою ОС другим производителям, пока нет, так что на данный момент единственным официальным «носителем» Sailfish OS является смартфон Jolla. Давайте же познакомимся с ОС на практике.

Первоначальная настройка и базовые приложения

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

jolla screenshot14jolla screenshot15

Непосредственно перед запуском ОС нам предлагают пройти небольшой тренинг по управлению интерфейсом. Как и MeeGo, Sailfish OS полностью управляется жестами. Кроме того, перед запуском можно выбрать список приложений, которые будут установлены. В отличие от iOS и Android, нас не вынуждают пользоваться предустановленными картами, почтой и прочими сервисами — в «обязательном» пакете идут только Телефон, Сообщения, Браузер, Камера, Контакты, Магазин, Галерея, Настройки, Руководство и Yandex.Store.

jolla screenshot12jolla screenshot13

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

Вкратце расскажем об основных приложениях.

jolla screenshot33jolla screenshot34

Все приложения очень минималистичны. Настроек почти нет, интерфейс не всегда интуитивен. Но внешний вид — приятен. Выше — скриншоты приложения Телефон. Ниже — Сообщения. Обратим внимание на клавиатуру и переключение языков. Чтобы сменить раскладку, надо коснуться и удержать палец на кнопке пробела, после чего, по-прежнему не отрывая палец, нажать в открывшемся меню на нужный вам язык. С одной стороны, такой способ смены раскладки интересен, с другой — он более долгий, чем на iPhone и Android. Если нужно вставить в русскоязычное сообщение одно слово на английском, получается слишком долгая и неудобная процедура.

jolla screenshot37jolla screenshot36

Браузер здесь свой собственный, и, честно говоря, нас он несколько разочаровал. Во-первых, слишком непривычный интерфейс: адресная строка находится только на втором экране, где размещены закладки. И, самое главное, отсутствует смена ориентации с портретной на ландшафтную. Это, например, делает фактически бессмысленным просмотр онлайн-видео. Увы, отсутствие возможности смены ориентации — это беда многих приложений Jolla.

jolla screenshot38jolla screenshot39

Приложение Камера интересно расположением настроек, а заметки — возможностью присваивать записям цветные метки, сортируя их таким образом.

jolla screenshot40jolla screenshot30

Часы, Калькулятор, Контакты, Календарь ничем особенным не выделяются, Медиа, Документы и Галерея предназначены для открытия различных файлов (соответственно аудио, текстов и фото/видео). Что касается приложения Карты, то здесь используются Nokia Here Maps. Местоположение по GPS они определяют корректно, сами карты достаточно подробные (в Москве показывают все, вплоть до отдельных домов), но, увы, в отличие от смартфонов Nokia, здесь нет возможности использовать карты локально, без интернета.

jolla screenshot44jolla screenshot41

Последнее приложение Jolla, о котором мы расскажем — Почта. Главный его недостаток — невозможность открыть вложение прямо в почтовом клиенте: можно только скачать файл и открыть его в Документах. А в качестве плюсов отметим возможность выделять несколько писем и удалять их всех одним нажатием (почему-то у новых ОС не всегда бывает такая возможность), а также возможность работы с несколькими почтовыми ящиками.

jolla screenshot42jolla screenshot43

Внешний вид и управление

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

jolla screenshot16jolla screenshot17

В отличие от Firefox OS, напоминающей ранние версии Android, Sailfish OS получилась действительно красивой. Обратим внимание на иконки приложений: большинство из них разной формы. В этом проявляется философия Jolla, выражаемая английским словом Unlike (иной, отличный от других, непохожий).

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

jolla screenshot8jolla screenshot3

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

jolla screenshot9jolla screenshot5

Смахивание сверху, когда никакое приложение не запущено в активном режиме, приводит к выключению экрана и переходу в спящий режим. Двойной тап по выключенному экрану, наоборот, включает смартфон. Конечно, привыкнуть ко всем этим смахиваниям, оттягиваниям, постукиваниям и прочему не так-то просто. И не факт, что в повседневной жизни это будет действительно удобно (хотя какие-то решения явно удобны). Но, тем не менее, такие эксперименты необходимы для развития индустрии мобильных устройств. Возможно, некоторые войдут в обиход и в других ОС.

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

Отметим, что одна из особенностей интерфейса, которую нам демонстрировал Марк Диллон на Mobile World Congress 2013, все же пока не реализована — это управление приложением прямо в миниатюре. Например, управление воспроизведением музыки: не раскрывая приложение на весь экран, вы нажимаете Play или Pause. Увы, на финальном устройстве мы так и не смогли увидеть эту идею в действии: в ответ на любое прикосновение миниатюра приложения раскрывала его на весь экран. Но во внешнем облике миниатюр остались следы той концепции. Посмотрим, может быть, в будущем ее все-таки реализуют. Впрочем, и без этого работа с многозадачностью у Sailfish OS очень хорошая.

Магазины и поддержка Android-приложений

В Sailfish OS установлены сразу два магазина приложений: собственный магазин Jolla и Яндекс.Store. В магазине Jolla размещены приложения, написанные специально для Sailfish OS. На момент написания данной статьи этих приложений было 152 (включая приложения Jolla, предлагаемые при настройке системы). Конечно, с обилием приложений для более популярных и старых операционных систем это не сравнится, но учитывая, что продажи смартфона начались совсем недавно, старт весьма неплохой.

jolla screenshot19jolla screenshot20

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

jolla screenshot21jolla screenshot22

Большинство из имеющихся на данный момент приложений — простенькие утилитки и казуальные игрушки (змейка, судоку и т. п.). Но есть и крайне полезные вещи, которые мы настоятельно рекомендуем установить вскоре после первого знакомства с ОС. Перечислим их.

File Browser — менеджер файлов. Даже странно, что ничего подобного нет в основном комплекте приложений. Screenshot — инструмент для снятия скриншотов (увы, аппаратная возможность снимать скриншоты, как в Android 4.x и iOS, в Sailfish OS пока не реализована).

jolla screenshot24jolla screenshot23

Flashlight — элементарный фонарик. Friends — симпатичный клиент для Facebook.

jolla screenshot25jolla screenshot27

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

jolla screenshot26

Есть, конечно, в Магазине и не очень удачные приложения. Например, клиент для Dropbox под названием Sailbox нас огорчил (пользоваться им неудобно, функциональность скромная). а Weather так и не смог запуститься нормально. Впрочем, все представленные приложения — бесплатные, так что даже если вы установите что-то посредственное, потом не жалко будет его удалить.

Теперь давайте посмотрим, как работает Яндекс.Store в Sailfish OS и зачем он здесь нужен. На самом деле, наличие Яндекс.Store очень ценно, поскольку из него можно устанавливать Android-приложения. В Sailfish OS заявлена совместимость с Android-приложениями, но Google Play Store здесь нет (компания Google не лицензирует его отдельно от Android). Поэтому приходится довольствоваться альтернативными маркетами, и Яндекс.Store из них как минимум не худший.

jolla screenshot10jolla screenshot11

Среди приложений, которые можно поставить из Яндекс.Store и вполне нормально работать с ними на Jolla — клиенты Вконтакте и Одноклассников, Skype (правда, его можно использовать только как текстовый чат из-за проблем с передачей звука), Viber, Angry Birds, Метро.Яндекс и некоторые другие, без которых нам сейчас сложно представить нашу жизнь.

jolla angry birds

Обратите внимание, что в Android-приложениях доступны кнопки Назад и Меню, которые не используются в Sailfish OS, но черная полоска с ними «съедает» часть пространства экрана.

jolla screenshot28jolla file manager

Ну и, разумеется, интерфейс Android-приложений выполнен не в стиле Sailfish OS. Отметим также, что плееры и менеджеры файлов из Android здесь практически бесполезны, поскольку список папок, которые «видны» из них, совершенно не совпадает с тем, что можно увидеть, подключив Jolla к компьютеру или запустив нативный File Browser. По всей видимости, Android-приложения запускаются в неком подобии виртуальной машины, которая изолирована от основного файлового окружения. То есть работа с файлами из-за этого затруднена. Например, нельзя скинуть фильм с компьютера и открыть его Android-плеером (по крайней мере, у нас это не получилось). Не получилось воспроизвести видео с помощью MX Player, установленного из Яндекс.Store, и с microSD-карты.

Работа с файлами, подключение к ПК, Терминал

Принципиальная особенность Sailfish OS — максимальная открытость, предоставление пользователю максимума свободы (как и полагается Linux-системе). Поэтому работа с файлами здесь не требует никаких дополнительных ухищрений: вы можете переписывать файлы с ПК на смартфон и открывать их с помощью приложений Sailfish OS, можете даже включить режим разработчика и получить в свое распоряжение полнофункциональный Терминал.

jolla terminal

jolla terminal1

Что касается подключения к ПК, то без активированного режима разработчика смартфон при подключении к компьютеру предложит два варианта: передача файлов или только зарядка. В первом случае смартфон отобразится как съемный накопитель, и вы сможете переписывать файлы из внутренней памяти смартфона и в нее. Во втором случае, понятное дело, смартфон просто будет заряжаться от компьютера.

jolla windows

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

Очень важно, что Android-приложения можно установить прямо из APK-файла: просто переписываем APK во внутреннюю память смартфона и устанавливаем. Есть, конечно, вероятность, что не заработает нормально, но такое бывает и на «настоящем» Android.

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

Выводы

И вот мы плавно перешли к недостаткам. Конечно, система совсем юная, и судить ее «по гамбургскому счету», пожалуй, не совсем правильно. Но не сказать о недоработках и нестабильностях тоже нельзя. На первой версии прошивки ситуация была совсем печальной. Во-первых, после установки одного приложения магазин Jolla переставал работать и во всех последующих запусках вылетал. Во-вторых, после начала работы появлялось уведомление о наличии обновления ОС, однако попытка обновить ни к чему не приводила. Такое ощущение, что ОС просто не реагировала на команды начать обновление — так это уведомление о доступном обновлении и продолжало висеть. В-третьих, имели место постоянные зависания различных приложений. Например, Яндекс.Store успешно запускался только через раз. После того, как обновление ОС все-таки удалось установить (текущая версия — 1.0.2.5 Maadajâvri), проблем стало существенно меньше, но некоторые нестабильности и вылеты все же были замечены.

Кроме того, смешанные впечатления оставили предустановленные приложения: они, конечно, все красивые и интересные с точки зрения интерфейса, но как можно было выпустить браузер без возможности смены ориентации на ландшафтную? Почему приложение Медиа играет только музыку, а видео нужно смотреть с помощью Галереи? Почему видеофайл нельзя открыть просто из менеджера файлов — только из Галереи? Подобных мелких и крупных недочетов предостаточно, но.

И все же, несмотря на все эти проблемы и замеченные недоработки, мы считаем Sailfish OS очень перспективной операционной системой. У нее есть свой стиль, своя идеология (правильная, грамотная и искренняя), свои уникальные особенности… Есть, наконец, сообщество разработчиков и энтузиастов, которые еще со времен Maemo следят за судьбой мобильных open source-проектов и поддерживают каждый шаг в этом направлении. Поэтому теперь все будет зависеть от дальнейшей стратегии команды Jolla. Будут ли они лицензировать ОС или планируют использовать ее только на своих смартфонах? В последнем случае планируют ли выпускать дешевые смартфоны или ставка будет исключительно на верхний сегмент? Ответы на какие-то из этих вопросов мы, вероятно, получим уже в ближайшее время (например, после Mobile World Congress 2014). И в любом случае мы будем следить за судьбой Sailfish OS и надеяться, что проклятие Nokia (похоронившей сначала Maemo, а потом и MeeGo) обойдет стороной этот стартап, пусть и зародившийся в недрах корпорации Nokia, но порвавший с ней и отправившийся в вольное плавание на своей рыбацкой шлюпке.

P. S. 31 января, уже после того, как статья была завершена, Jolla выпустила обновление операционной системы 1.0.3.8 (Naamankajarvi), в котором исправлен ряд недостатков и добавлены некоторые возможности, которых ранее очень не хватало. В их числе: ландшафтный режим для браузера, зум двумя пальцами в приложении Камера, поддержка SMS в Android-окружении и другие улучшения.

Источник

Понравилась статья? Поделить с друзьями:
Добавить комментарий
  • Как сделать успешный бизнес на ритуальных услугах
  • Выездной кейтеринг в России
  • Риски бизнеса: без чего не обойтись на пути к успеху
  • sail 3 формы глагола в английском
  • said три формы глагола