Что такое Sailfish OS и зачем она нужна. Неочевидные фишки Sailfish OS

14.05.2019 Программы и сервисы

Здравствуй, читатель!

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

А знали ли Вы, что:

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

2. Двойное нажатие на хардверную кнопку блокировки разблокирует Ваше устройство и Вы сразу попадете на Домашний Экран (Home), минуя Экран Блокировки (Lock screen).
Следует учитывать, что двойное нажатие не работает, если у вас стоит пароль при разблокировке.

3. С версии 2.0.2 в Sailfish OS появилась функция записи звонков.
Чтобы активировать ее зайдите в Настройки (Settings) - Приложения (Apps) - «Запись звонков» (Call Recording).

Примечание:
Вообще, в Настройках (Settings) - раздел Приложения (Apps) можно настроить многие приложения за авторством самой Jolla, а также произвести некоторые действия над Android-приложениями (очистить кеш, остановить программу и так далее).

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

5. Из приложения Tutorial можно выйти сразу, для этого в самом начале по часовой прокликайте углы, начиная с верхнего левого.

6. С версии 2.0.2 появился простенький файловый браузер «из коробки», чтобы его найти отправляйтесь в Настройки (Settings) - Хранилище (Storage) - Внешняя память/Карта памяти (User data) - свайп сверху вниз - опция Файловый менеджер (File manager).

7. С версии 2.0.2 появляется возможность делать скриншоты, для этого выполните полусекундное нажатие на обе кнопки громкости.

8. Для ценителей Semantic Web : в Sailfish OS используются некоторые технологии Семантической паутины:

$ tracker- tracker-control tracker-info tracker-sparql tracker-tag tracker-import tracker-search tracker-stats

Tracker-sparql!
В частности, трекер используется медиапроигрывателем.

Пара относительно очевидных штук, но почему-то некоторые о них не знают:


-в приложении Камера (Camera) можно делать фотографии просто нажимая на каретку громкости (правда перед фотографией приложение не обновит фокус);

В приложении Камера (Camera) можно регулировать зум, приближая два пальца друг к другу на экране и отдаляя друг от друга; :)

В Настройках (Settings) во вкладке Жесты (Gestures) неплохо включить «Быстрое закрытие приложения» (Quick app closing), чтобы свайпом сверху вниз сразу закрывать программу;

Там же, в жестах можно включить свайп слева направо, чтобы попадать в Ленту Событий (Events), вместо Домашнего Экрана (Home);

Если телефон заблокирован, то при двойном нажатии на экран Вы попадете в Экран Блокировки (Lock Screen);

Сменить обои на свою собственную картинку можно только из галереи. Для этого откройте картинку в галерее (Gallery), свайп сверху вниз, затем выберите опцию «Создать атмосферу» («Create ambience»). Вы попадете на страницу настройки атмосферы, там можно подогнать цвета на свой вкус или просто оставить как есть и радоваться;

В Настройках (Settings) в разделе «Ввод текста» (Text input) можно разрешить разделение клавиатуры в альбомном режиме;

Советую поставить Warehouse - клиент для Openrepos. Сначала разрешите установку приложений из ненадежных источников: Настройки (Settings) - «Непроверенные программы» (Untrusted Software), затем скачайте.rpm файл по выше указанной ссылке и установите его из консоли или с помощью приложения File Browser. Openrepos является репозиторием, в котором есть большое количество приложений, которых нет в Jolla Store по различным причинам (к примеру, Jolla Store запрещает использование демонов, смотрите FAQ). В Openrepos нет QA, что несет некоторые риски, но в то же время дает полную свободу разработчику.

Бонус

Несколько приложений, которые могут показаться Вам полезными (на мой взгляд):
-SearchNemo - поиск файлов / конкретного текста в текстовых файлах по всей файловой системе;

-LLs vPlayer (только в Openrepos) - всеядный видеоплеер с приличным количеством плюшек, которых нет в обычном плеере;

-Screen-message - выводит набранный текст на экран (к примеру, можно использовать для записок);

-Sidudict - неплохой офлайн словарь на основе QStarDict. Минус: если добавить большое количество словарей, то приложение вылетает, либо запускается слишком долго, так как при каждом запуске выполняется реиндексация словарей с нуля;

-File Browser - отличный файловый браузер для Sailfish OS;

-Lists - ToDo-органайзер. На мой взгляд, автор очень интересно обыграл функциональность Обложки (Cover);

-Lighthouse - системный монитор для Sailfish OS;

-Battery Log - приложение, чтобы следить за расходом батарейки, умеет строить график;

-Unplayer (только в Openrepos) - отличный музыкальный плеер с возможностью проигрывания музыки прямо из директорий;

-Kat - активно развивающийся VK-клиент;

-Battery Overlay - если Вам непривычно, что индикатора заряда находится только на Домашнем Экране (Home), то это приложение решит проблему;

-Recorder - диктофон;

-Textractor - OCR;

-TAO Translator - клиент для Google, Yandex, Bing словарей;

-WiFi Analyzer - просмотр количества и мощности WiFi сетей;

-TinyEdit - текстовый редактор с минимумом функционала;

-Papocchio - дает возможность рисовать на экране.

В написании данной статьи очень помогло русское сообщество Sailfish OS, обитающее в

  • Разработка мобильных приложений ,
  • Разработка под Sailfish OS ,
  • Разработка под iOS
  • Привет, Хабр!

    На днях в офис e-Legion попал очаровательный смартфон, цвета #F9403E. По опознавательным знакам удалось установить его модель - Jolla C и операционку - Sailfish OS. Сайт производителя снабдил нас данными о характеристиках устройства и предоставил информацию о том, с чего начинать разработку.

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

    Характеристики для смартфона 2016 не выдающиеся, но ведь дело не только в железе, но и в том, как реализован софт.

    Для ОС заявлена поддержка Android-приложений, но зачем заниматься портированием, если можно написать «шедевр», используя нативные средства для разработки.

    Среда разработки

    Когда я начинал разработку для iOS, пришлось столкнуться с некоторыми сложностями. Наличие устройства под управлением Mac OS X - обязательное условие для XCode. У меня его не было. Варианта было два: хакинтош или виртуальная машина.
    Теперь же macOS является моей основной операционной системой, поэтому наличие на сайте Jolla SDK, протестированного под Mac OS X, меня приятно удивило. А флешка с установщиком Windows так и осталась пылиться в столе.

    Также заявлена поддержка и других платформ:

    • Ubuntu 14.04 32/64 bit
    • Windows 8 32/64 bit
    • OS X 10.9.2

    Также он служит для оформления приложения в цветах, соответствующих основной выбранной для смартфона теме.

    Label { text: "Hello habrahabr!" color: Theme.highlightColor x: Theme.horizontalPageMargin width: parent.width - x*2 font.pixelSize: Theme.fontSizeSmall wrapMode: Text.Wrap }

    Концепция чем-то напоминает использование UIAppearance из iOS, только настройки не ограничены рамками приложения.

    Создавать интерфейс из стандартных элементов иногда даже проще, чем в iOS. Создаем кнопку, указываем положение и смещение относительно других элементов. Готово. Пожалуй, с той же легкостью мне удалось работать с интерфейсом только начиная с iOS 9, когда был добавлен класс NSLayoutAnchor .

    К сожалению, не всё так хорошо с кастомизацией - в некоторых случаях придётся создавать элемент самостоятельно. Также нарекания вызвала реализация SilicaWebView , который так и не удалось использовать в приложении, компонент постоянно падал при попытке отображения информации. Вместо этого я использовал стандартный WebView , входящий в состав QtWebKit .

    При работе с web возникли и другие проблемы. Я запустил приложение на следующий день после начала разработки и вместо списка новостей увидел пустой экран. Несколько часов ушло на поиски решения проблемы. Как оказалось, приложение и встроенный в ОС браузер перестали загружать данные по HTTPS. Пару минуты меня мучила совесть, после чего HTTPS превратился в HTTP.

    Function requestUrl(source) { var url = "http://newsapi.org/v1/articles?" url += "source=" + source url += "&apiKey=" + apiKey return url } if (status === XMLHttpRequest.DONE) { var objectArray = JSON.parse(req.responseText); if (objectArray.errors !== undefined) { console.log("Error fetching tweets: " + objectArray.errors.message) } else { for (var key in objectArray.statuses) { var jsonObject = objectArray.statuses; news.append(jsonObject); } } if (wasLoading == true) { newsObject.isLoaded() } }

    Что касается остальных модулей приложения, их реализация не вызвала особых сложностей. Берём зарекомендовавший себя паттерн MVC, добавляем немного биндинга, щепотку делегирования, обильно посыпаем анимацией, перемешиваем… Получаем на выходе новостное приложение, написанное за пару ночей в попытках попробовать себя в разработке под новую платформу.

    Эмулятор и реальный смартфон

    Как я писал ранее, процесс запуска приложения практически не вызвал проблем. Перед установкой SDK размещаем на компьютере поддерживаемую версию VirtualBox, а установщик позаботится обо всём остальном.
    Далее выбираем платформу для запуска, жмём кнопку Start и запускаем приложение.

    Работа эмулятора не вызывает нареканий: всё происходит стабильно и быстро. В своё время мне выпал шанс поработать с одной из первых версий эмуляторов Android, 5-минутный запуск которого вызывал боль и приступы паники. Да, сейчас дела у него обстоят гораздо лучше, но осадок остался.
    Небольшие проблемы, правда, возникли при многократном запуске приложения. Старые инстансы приложения не завершаются, в результате чего у вас оказывается 5-9 одновременно запущенных экземпляров программы. После достижения некоторого максимального числа новая версия не стартует, приходится завершать старые экземпляры вручную.

    Запуск отладки на устройстве занял чуть больше времени. Без изучения документации процесс оказался интуитивно понятным. Побродив по настройкам и понажимав все подходящие, кнопки, я обнаружил возможность запуска приложения на устройстве с указанным IP-адресом. Подключил телефон к WiFi-сети, ввёл адрес и снова нажал на Start. Две минуты ожидания, и моя программа запустилась на Jolla C. Apple услышала наши молитвы и связка Xcode 9 + High Sierra + iOS 11 позволит нам творить такие же чудеса.

    Впечатления

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

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

    Компания Jolla, занимающаяся разработкой Sailfish OS, неожиданно для многих анонсировала третью версию своей операционной системы. Презентацию провели в Барселоне в рамках MWC 2018.

    В связи с этим мероприятием мы решили продолжать рассказывать про альтернативные Android и iOS мобильные операционные системы. Ранее мы рассмотрели Теперь очередь дошла и до Sailfish.

    Причём тут Nokia и Intel?

    Это долгая история. Началась она 13 лет назад. Тогда, в 2005 году, старая-добрая Nokia славилась своими , а модель ещё не славилась своей неубиваемостью. В те майские дни середины нулевых финский производитель презентует свой карманный компьютер Nokia 770. Это было революционное устройство: по Wi-Fi оно ловило интернеты! Тут были VoIP и сервисы Google Talk.

    Планшет поддерживал протокол Jabber! Боже, сколько в этих словах ностальгии! В продажу планшет поступил в ноябре 2005 года. 770-й работал на первой версии Maemo - 2005OS. Позже вышли Nokia N800, N810, а затем и N900. Все они были под управлением Maemo.

    Интерфейс Maemo на Nokia N900

    Из Финляндии перемещаемся в США. В 2007 году выходят нетбуки с процессорами Intel Atom. Компания хочет продвигать эти устройства, для чего необходима не очень требовательная к ресурсам операционная система. Windows не подходит - Microsoft тупо неинтересен Atom. Тогда возникает проект Moblin. Название является сокращением от Mobile Linux. Как нетрудно догадаться, новая операционная система была рассчитана на мобильные устройства. Она базировалась на открытом исходном коде Linux.


    Интерфейс Moblin

    Восемь лет назад, в феврале 2010 года, Nokia и Intel объявили об объединении усилий. Совместно разрабатываемая операционная система получила название MeeGo. Тогда было объявлено, что Nokia N8 станет последним смартфоном на Symbian OS (другая операционная система Nokia, которая была установлена на большее количество устройств), а N9 выйдет уже под управлением MeeGo.


    Nokia N9 на MeeGo

    Это было очень круто: пользователи могли выбрать между устройствами на iOS, Android, Windows Phone, MeeGo или вообще купить BlackBerry! Но, к сожалению, такая идиллия длилась недолго.

    В 2011 году Nokia неожиданно закрыла MeeGo. Проект перестали развивать, несмотря на популярность Nokia N9. Таким образом, первый смартфон на этой версии ОС стал и последним.

    Часть команды, занимавшаяся разработкой MeeGo, покинула Nokia для создания собственной компании. Её назвали Jolla. Команде не удалось получить в своё ведение большинство патентов на операционную систему, так что многие её элементы пришлось разрабатывать заново. Например, дизайн.

    На чём Jolla пыталась выехать?

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


    На интерфейсе также делали особый акцент. Так, Марк Диллон, сооснователь компании, говорил следующее: «Интерфейс Sailfish OS уникален тем, что использование устройства возможно только при помощи жестов». Из любого приложения проводите свайп вправо - откроется центр уведомлений. Снизу вверх - открывается список установленных приложений. Жестов было очень много. Все они заменяли привычные кнопки. К этому сейчас пытаются прийти производители Android-смартфонов, и отказаться от наэкранных кнопок, «съедающих» значительную часть экрана.

    В 2012 году компания анонсировала свой смартфон Jolla. Он поступил в продажу через год. Аппарат отличался необычным внешним видом. Казалось, что он склеен из двух разных смартфонов. Чуть позже был анонсирован планшет Jolla Tablet, но тут у компании случились финансовые трудности. Планшет выпущен не был.


    Чем живёт Jolla сейчас?

    С тех пор компания решила сосредоточиться на своей операционной системе Sailfish OS. Например, непосредственно внутри Jolla велась разработка прошивки для смартфонов Nexus 4 и OnePlus One.

    В 2016 году компания лицензировала Sailfish OS для российской «Открытой мобильной платформы». Совместными усилиями была выпущена Sailfish Mobile OS RUS. В списке поддерживаемых устройств - смартфон для госслужащих и корпоративных клиентов «Ермак ОМП», а также российский смартфон INOI R7. Подобные российской лицензионной ОС операционные системы существуют в Бразилии, Китае и других странах.


    Ермак ОМП

    Третья версия Sailfish будет рассчитана на большее количество устройств. На MWC анонсировали её появление осенью на упомянутом выше INOI R7, Sony Xperia XA2, КПК Gemini PDA, а также на неназванных кнопочных телефонах с поддержкой 4G. В Sailfish OS 3 сделают акцент на безопасности. Например, в случае потери или кражи устройства пользователь сможет дистанционно стереть все данные.

    Операционная система поддерживает Android-приложения, но только в том случае, если пользователь заплатил за Sailfish OS 50 долларов.


    Sony Xperia XA2 с установленной Sailfish OS

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

    21 ноября в Хельсинки, Финляндия, компания Jolla в рамках двухдневной конференции стартапов SLUSH 2012 провела презентацию своих разработок: операционной системы Sailfish OS, интерфейса Sailfish UI и инструментов для разработчиков Sailfish SDK. Началась презентация Jolla в довольно оригинальной форме, на сцену были приглашены участники команды в черных футболках со слоганами вроде «Do. Unlike», «Unlike», «Unlike | Others», «Unlike the ordinary» и некоторыми другими. Так что можно было сразу понять основную мысль, которая и станет ключевой для всей презентации, ну или основной посыл Jolla – будь другим, будь не как все.

    Затем на сцене остался Marc Dillon, новый CEO компании Jolla, занимавший ранее пост COO (главный операционный директор, англ. Chief Operating Officer), а до перехода в Jolla много лет проработавший в Nokia, в том числе с проектами Symbian, S40 и MeeGo. Марк начал свою речь словами о свободе, свободе выражения, свободе выбора и так далее, затем рассказал о том, что у них потрясающая команда и они разрабатывают по-настоящему классную операционную систему (great operating system sailfish), желая создать действительно открытую ОС, быструю и гибкую.


    Начинается ОС с экрана блокировки, который появляется после двух тапов по дисплею. Здесь отображается время и значки уведомлений, когда есть уведомления данного типа. Если потянуть экран вниз – появятся ярлыки важных программ: смена профиля, камера и еще несколько. Если потянуть вверх – на мгновение отобразится текущий уровень заряда и уровень сигнала сети, а если потянуть еще дальше – откроется экран с мини-картинками работающих приложений и иконками перехода к звонкам, сообщениям, камере и браузеру в нижней области. Можно пролистнуть еще дальше – отобразится меню со всеми установленными программами (как в Android и iOS). То есть система вызова тех или иных окон взята из последних версий Meego, примерно то же самое было на Nokia N9, но для перехода между окнами использовались свайпы влево и вправо от экрана, тогда как здесь – вниз и вверх, а жесты влево-вправо заняты на функцию сворачивания открытой программы в фон. Рабочих столов в Sailfish нет, есть стартовый верхний экран, экраны со всеми значками программ, ну и по центру экраны с мини-картинками запущенных приложений, получается.

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

    Затем речь зашла о настоящей многозадачности, реализованной в Sailfish OS. И здесь Марк привел странный пример. Они запустили на смартфоне музыкальный плеер и включили проигрывание музыки. Потом плеер свернули, он появился в виде мини-картинки на главном экране. Марк сказал, что в Sailfish для управления музыкой или смены трека вам не нужно снова открывать плеер, достаточно выбирать кнопки на мини-картинке работающего приложения. По сути, это тот же виджет в Android, ничего нового с точки зрения пользователя я не вижу, но Марк убеждал публику, что это круто, и сказал, что это и есть настоящая многозадачность. Основная идея работающих на главном экране мини-картинок с приложениями, по словам Марка, заключается в том, что вам не нужно открывать полное окно программы для управления ее часто используемыми функциями, это можно делать и с главного экрана при помощи мини-картинок программ. Разница с виджетами из Android будет заключаться, вероятно, в том, что в Sailfish каждое приложение будет обязательно иметь функционал вывода на главный экран в виде рабочего мини-блока, тогда как в Android виджеты – дело добровольное.

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

    Вы можете посмотреть короткое двухминутное видео с демонстрацией всех описанных выше функций, вот оно:

    И есть еще десятиминутное видео, но в нем, как ни странно, продемонстрированы только эти же функции, ничего лишнего:

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

    Когда я только начал готовить этот материал, единственным источником информации для меня оказалось как раз короткое видео. Затем я сел и стал искать больше информации, все же Jolla впервые публично показали свою разработку с момента анонса работ над системой (если я не ошибаюсь), и я надеялся найти больше данных. Однако сейчас оказывается, что функционал, показанный в трехминутном ролике, - это все, что может показать Jolla на данном этапе. Никаких интересных данных о том, как и кто будет заниматься производством смартфонов на базе этой системы, на SLASH 2012 не прозвучало, кроме перечисления списка партнеров вроде Opera Mobile и других.


    С одной стороны, проект Sailfish OS выглядит интересно, как минимум, с той позиции, что нашлись люди, подхватившие хорошую в целом систему, над которой можно работать и которая имеет потенциал, и решили развивать ее, несмотря на отказ Nokia от развития ветки связанных с MeeGo устройств. C другой стороны, после увиденного сложно поверить в успех Sailfish в каком-нибудь виде, с момента выхода Nokia N9 и закрытия Meego-направления прошло уже больше года, а все, что показали Jolla в Sailfish OS, это немного переделанный интерфейс той же MeeGo OS 1.2 Harmattan, только экраны теперь сменяются не слева направо, а снизу вверх. Новый функционал – это, как минимум, работающие на главном экране мини-приложения, но ведь этого недостаточно для конкуренции с другими ОС, а ничего большего пока не показали.

    Остаются без ответов и другие вопросы – планирует ли вообще Jolla выводить свою ОС на уровень систем iOS и Android, или же все, чего хотят добиться в компании, это стабильное комьюнити и работающая система на базе наработок MeeGo для гиков? Если в планах нет конкуренции с iOS и Android, то для чего фразы «great operating system sailfish» и «great company Jolla», а если такие планы есть, то где продукт, вызывающий восхищение и бурю эмоций своим функционалом, красотой и новизной?

    Артем Лутфуллин ()