Обзор Inoi R7 на Sailfish OS: как бы российский смартфон. «Российский телефон» на операционке Sailfish будет индийским телефоном Aqua Fish компании Intex Technologies? Основные характеристики Jolla

В «Ведомостях», что через несколько месяцев, но до конца 2016 года, в российской розничной продаже появится недорогой телефон на альтернативной операционной системе. Таким образом старт продаж« телефона Березкина» на Sailfish OS в национальной рознице совпал по срокам с обещанным началом российских продаж индийского телефона Aqua Fish. Это единственный выпущенный фабриками телефон на свежей Sailfish OS второй версии. Смартфон производится индийской Intex Technologies. В марте 2016 года директор(по данным газеты The Times of India — владелец) Intex Technologies Кешав Бансал пообещал, что летом его телефоны на Sailfish OS попадут в Африку, Центральную и Южную Америку, а в России, как выяснил ComNews.ru ещё зимой 2016, они окажутся до конца начавшегося года. На момент мартовской публикации ComNews.ru у индийца не было российского партнёра-дистрибьютора, но индийский предприниматель его искал.

Телефон Aqua Fish компании Intex Technologies:

Березкин контролирует 80% компании« Открытая мобильная платформа»(ОМП). Как поняли« Ведомости» на прошлой неделе, именно эта компания основателя энергохолдинга ЕСН, поможет сбыться желанию министра связи России Николая Никифорова о независимой ОС. ОМП выпустит смартфоны на операционной системе, условно независимой от Америки. Создаваемая в мобильной« Платформе» ОС будет основана на Linux. Подавляющее число правок в ядро Linux делают глобальные корпорации уровня Intel, Samsung, IBM и др. — российских разработчиков в статистически значимых количествах у Linux почти нет. Российскую мобильную операционку, как и привычную энтузиастам Sailfish OS, её татарстанские авторы не будут делать« открытой». Поэтому название« компании Березкина» — «Открытая мобильная платформа» — пока имеет лишь гипотетическое прочтение, как и независимость операционки от глобальных авторов Linux. Тем не менее министр Никифоров желающих присоединиться к разработке глобальной мобильной ОС, где значительная часть кода будет российской. Этой разработкой Иннополиса через минуту после министерского анонса заинтересовался директор по внешним коммуникациям в Rambler&Co: «наша мобильная разработка могла выполнить часть работ, что станет и для нас бесценным опытом». Заявлений о присоединении к проекту других значимых российских it-игроков пока не было, хотя с разработчиками Sailfish много лет знакомы в «Яндексе». 3 года назад российский поисковик отдал Sailfish свой« магазин приложений».

У Минкомсвязи РФ есть официальная возможность заплатить небольшие деньги(двадцать-тридцать десятков миллионов долларов, или 1,89 млрд руб.) за создание российской мобильной операционной системы, однако по словам представителя Минкомсвязи« Ведомостям», компания Березкина за финансовой поддержкой в министерство не обращалась. Напротив, как писал ComNews.ru со ссылкой на Антти Саарнио(сооснователь и председатель совета директоров Jolla, разработчик мобильной операционной системы Sailfish), ещё в декабре 2015 российская Группа ЕСН сама стала основным источником финансирования и крупнейшим акционером Jolla — причём суммарные инвестиции других инвесторов в Jolla на тот момент уже превысили $70 млн(это более чем в 2 раза больше, чем теоретические 1,8 млрд руб. из бюджета российского министерства).

Березкин предположил в «Ведомостях», что его разработчики(они будут работать в татарстанском, временно , Иннополисе) доработают Sailfish для нужд российских пользователей. Теоретически в этой операционке уже много лет есть русский язык в интерфейсах, но Березкин пообещал« перевести интерфейс на русский», а так же разработчики ещё и «поработают над экосистемой и портируют на Sailfish популярные приложения». В ноябре 2013 года финская компания-разработчик смартфонов Jolla Yandex.Store вместо Google Play в качестве своего магазина приложений, однако о том, что правообладатели тех самых« приложений» уже готовы к тому, что их будут« портировать» из Google Play в альтернативные магазины, громких анонсов пока не было.

Спецификации Aqua Fish компании Intex Technologies: дисплей 5 дюймов с разрешением 720×1280 пикселей, процессор 1.3GHz, RAM 2GB, общий объём памяти 16GB, стоимость смартфона, по разным данным, в пересчёте с индийских рупий — около 120 долларов США или 100 евро. Производитель телефона Intex Technologies занимает 10% индийского рынка мобильных телефонов, что в абсолютных цифрах обозначает 3 млн проданных за месяц аппаратов, из которых 1 млн приходится на смартфоны.

Основатель энергохолдинга ЕСН Григорий Березкин, которому принадлежит доля в финской Jolla (создатели системы Sailfish), пообещал выпустить смартфоны на российской ОС уже в 2016 году, пишут «Ведомости».

Производители устройств и ритейлеры сомневаются в потенциале таких устройств на рынке.

В начале мая глава Минкомкомсвязи Николай Никифоров представил «Открытая мобильная платформа», которая на 80% принадлежит Берёзкину (ещё 20% контролирует Михаил Верозуб), как разработчика отечественной ОС для смартфонов. ОМП расположилась в Иннополисе и сейчас ищет разработчиков, технических писателей и специалистов по тестированию.

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

Берёзкин сообщил «Ведомостям», что смартфоны на этой ОС предназначены не для госсектора, а для широкого рынка, причём они будут доступными по цене. Эти устройства появятся в России в течение ближайших несколько месяцев, уверен он. Сейчас создатели системы ведут переговоры с поставщиками, однако их Берёзкин назвать отказался.

Российская мобильная ОС будет основана на базе финской Sailfish. Разработчики из Иннополиса переведут интерфейс на русский язык, портируют популярные приложения и в целом доработают экосистему, говорит Берёзкин.

Гендиректор российского офиса Lenovo Глеб Мишин в разговоре с «Ведомостями» сказал, что компания обсуждала сотрудничество с Jolla. По его словам, технических сложностей в выпуске смартфонов на Sailfish нет, но перспектив у этой системы на пользовательском рынке почти нет, так как трудно убедить пользователя перейти с Android на её подобие. Lenovo может быть заинтересована в проекте, если для него будет создан государственный рынок - с помощью необходимой сертификации и ограничений госзакупок Android, считает Мишин.

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

В начале июня 2015 года Jolla стала в конкурсе Минкомсвязи на импортозамещение ОС для мобильных устройств. В консорциум разработчиков тогда вошли ЕСН, производитель ПО ЭСК и «Яндекс». Разработка отечественной ОС была оценена в 2,225 млрд рублей, из них 1,89 млрд рублей должно было выделить государство. Минэкономразвития выдачу таких грантов, в Минкомсвязи сказали «Ведомостям», что с тех пор компания не обращалась за деньгами.

Компания 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 будет развиваться как альтернативная операционная система и однажды найдёт свою нишу, которую будет уверенно держать.

В этой статье я хотел бы рассказать о замечательном событии, произошедшем с 27 по 30 июля – летней школе Sailfish OS, организованной «открытой мобильной платформой» при поддержке университета Иннополис. Если вам интересна перспектива развития Sailfish OS, настоящего Linux на смартфонах или просто интересна еще одна сфера применения QML/C++ - прошу под хабракат.

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

Однажды, сидя дома, читая Хабр, увидел пост-аннонс о Летней Школе Sailfish OS и сразу решил, что я должен там быть. Через пару недель я уже стоял в г. Иннополис на их главной улице – Университетской.


Картинки кликабельны.

Что это было за место! Что за сообщество разработчиков! Это было невероятно! Кхм… Ладно, отбросим эмоции, давайте по порядку.

27 июля

Это был день знакомств, день вступительных речей, день размещения…

Поселили участников в комфортабельные комнаты на двоих:

В комнатах было все необходимое для небольших перерывов между «порциями» кодинга: кровати, душ, кондиционер, стол. Единственное, в моей комнате было 4 тумбочки на двоих и ноль(!) стульев, я думаю, что Вы догадались как мы использовали 2 «лишние» тумбочки.

Почему не было стульев

Как нам объяснил представитель университета Иннополис, что этот кампус еще не до конца готов для студентов. Хм, а я бы пожил в таком «недострое».


С соседом мне особенно повезло, я жил со всеми уважаемым, повелителем патчей для Sailfish OS , Андреем Кожевниковым, более известным под ником CodeRus. У Sailfish OS как раз небольшая проблемка с документацией, в частности с ее структурой и недостаточным покрытием некоторых деталей и тут меня поселили с ходячей базой знаний по Sailfish OS, надеюсь, что моя радость на тот момент понятна? :) Спасибо, Андрей, за все исчерпывающие ответы на мои вопросы.

К 15.00 все собрались в аудитории №307, где мы фактически и обитали следующие 48 часов.

Мы слушали вступительные речи, общие слова о Sailfish OS, её перспективах в России, о роли «Открытой Мобильной Платформы». Ректор позвал учиться в Иннополис.

Потом выступали партнеры:

Вечером нас повели на экскурсию по городу Иннополис:

О городе Иннополис

Чтобы не перегружать статью отвечу кратко: город еще развивается, там живут сейчас примерно 2000 жителей, но все необходимое для комфортного проживания есть: дешевое жилье, супермаркет, футбольное поле, бассейн, медицинский центр, ясли, детский сад, школа и так далее. Посмотрим во что выльется этот «проект» в будущем, но пожелаем ему удачи и вернемся к нашей основной теме.

28 - 29 июля

С этого дня напряжение начинает нарастать в геометрической прогрессии!

С 09.00 начались лекции, перед нами выступали:

Кирилл Чувилин (представитель «Открытой Мобильной Платформы» по связям с сообществом, основатель MaemoWorld.ru) – Обзор Sailfish OS SDK + Мастер-класс разработки графического интерфейса приложения для Sailfish OS . Он рассказывал про особенности SDK, про то, как делать правильно интерфейсы для Sailfish OS, так как ОС выгодно отличается от других: почти все здесь выполняется свайпами, а не нажатием на экран, что требует некой сноровки от разработчика.

Андрей Васильев (представитель FRUCT) – Мастер-класс по работа с основным API Sailfish OS . Это был интересный доклад о том, как «дергать» GPS, управлять различными датчиками, воспроизводить звуки, фотографировать.

Павел Горянский (представитель «Открытой Мобильной Платформы») – аппаратная адаптация Sailfish OS . Павел рассказывал о том, как «завести» Sailfish OS на не поддерживаемых устройствах, что для этого нужно и т. д.

Андрей Кожевников (aka CodeRus, представитель сообщества) – сколько волка ни корми, он в лес смотрит мастер-класс по модификации Sailfish OS . О, это был очень занимательное выступление, на тему «как из Sailfish OS сделать MyOwn OS». Серьезно, благодаря QML можно почти полностью переписать интерфейс оригинала под себя! Надеюсь, что в будущем Андрей осветит эту тему лично, так как она достойна отдельной статьи.

Петр Вытовтов (aka Osanwe, разработчик нативного клиента для Vkontakte и анализатора Wi-Fi сетей, представитель сообщества) - мастер-класс по работе с сервисами распознавания речи . Проинформировал как можно использовать Yandex Speechkit на Sailfish OS.

Алексей Андреев (победитель хакатона Sailfish OS в Санкт-Петербурге, участник semiot.ru) – мастер-класс по работе с IoT-устройствами . Было приятно встретить «родственную душу» - человека, который тоже занимается Semantic Web.

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

FriendlyARM порт - проект по адаптации Sailfish OS на плату для разработчиков;
MyFirstProgram - инструментарий для взаимодействия смартфонов и роботехнических конструкторов, таких как ТРИК и Lego NXT;
Battery Stats - утилита для наблюдения за расходом аккумулятора;
GEO-location share - обмен данными о местоположении между устройствами;
Guitar Tuner - настройщик для гитары;
CryptoFish - шифрование файлов по паролю;
Suburban Trains - расписание электричек, основанное на данных Яндекса;
Погода - информация о погоде с учётом местоположения;
Killer - ролевая игра по мотивам психологической игры «Киллер»;
AppCleaner - удаление ненужных данных и приложений;
WatchFox - шифрование домашнего раздела пользователя;
CryptoContainer - защищённое хранение файлов в контейнере;
Timelapse - приложение для интервальной съемки фото и видео.

Да, нынче модны темы с приставкой «крипто», а если серьезно, многих волновала тема безопасности.

Моя же команда решила делать игру по мотивам ролевой игры Киллер. Определились с особенностями реализации:

Выбор жертвы происходит на сервере (в команде был один из создателей «Killer» под android, поэтому сервер уже был готов);
- Запросы и авторизация в Vkontakte для получения фотографии и имени жертвы;

- с помощью GPS программа указывает жертву на Google Maps;

В общем, планы были большие…

Что у нас получилось или как мы не выиграли хакатон, но приобрели огромный опыт

В своей команде я был ответственен за UI, поэтому часть статьи будет посвящена именно ему. Первом делом набросали примерный образ всех страниц (так в Sailfish OS называется каждое «окно») и способы переходов между ними:

Первое испытание началось со страницы выбора жертвы, для этого лучше всего подходил компонент Dialog, оказывается, что разработчики фреймворка Silica не предполагали, что страница с Dialog будет первой страницей приложения и из-за этого Cancel (свайп слева направо работал и выглядел не совсем корректно). Поэтому пришлось схитрить: первой страницей будет пустая страница, с которой будет быстрый переход на DialogPage (пустая страница прорисовывается очень быстро, поэтому пользователю такая «обман» не будет виден).

Исходный код первой страницы:

import QtQuick 2.0 import Sailfish.Silica 1.0 import "../js/server_request.js" as ServerRequest Dialog { id: dialogFirstPage property string name: "Вася" property string surname: "Пупкин" property string imagePath: "../images/avatarUnknown.png" property string uniqueKey: "Waiting..." onAccepted: { console.log("accepted") // Открываем новую страницу и передаем несколько переменных pageStack.push(Qt.resolvedUrl("SecondPage.qml"), { "name": name, "surname": surname, "imagePath": imagePath, "uniqueKey": uniqueKey}, PageStackAction.Animated) } onRejected: { console.log("declined") // Опять открываем эту же страницу pageStack.push(Qt.resolvedUrl("FirstPage.qml"), {}, PageStackAction.Immediate) // Делаем запрос к серверу, чтобы получить новую "жертву" ServerRequest.server_getNextRandomTargetId("34853940", callback_getNextRandomTargetId) } function callback_getNextRandomTargetId(responseText) { uniqueKey = responseText; } Column { anchors.fill: parent DialogHeader { acceptText: "Accept" cancelText: "Cancel" } Text { id: victimText width: parent.width horizontalAlignment: Text.Center color: Theme.highlightColor font.bold: true wrapMode: Text.Wrap font.pixelSize: Theme.fontSizeExtraLarge text: "Choose new victim:" } Image { id: avatar source: imagePath anchors.horizontalCenter: parent.horizontalCenter width: 400 height: 400 } Text { id: nameText width: parent.width horizontalAlignment: Text.Center color: Theme.highlightColor font.bold: false wrapMode: Text.Wrap font.pixelSize: Theme.fontSizeExtraLarge text: name } Text { id: surnameText width: parent.width horizontalAlignment: Text.Center color: Theme.highlightColor font.bold: false wrapMode: Text.Wrap font.pixelSize: Theme.fontSizeExtraLarge text: surname } Text { id: keyText width: parent.width horizontalAlignment: Text.Center color: Theme.highlightColor font.bold: false wrapMode: Text.Wrap font.pixelSize: Theme.fontSizeExtraLarge text: "Victim code:\n" + uniqueKey } } }
Исходный код «хитрости»:

import QtQuick 2.0 import Sailfish.Silica 1.0 import "pages" ApplicationWindow { // Если пользователь авторизировался, то загружаем FirstEmptyPage.qml (функция проверки пока не написана, поэтому эта страница будет всегда загружаться): initialPage: true ? Qt.createComponent(Qt.resolvedUrl("pages/FirstEmptyPage.qml")) : Qt.createComponent(Qt.resolvedUrl("pages/LoginPage.qml")) cover: Qt.resolvedUrl("cover/CoverPage.qml") allowedOrientations: Orientation.All _defaultPageOrientations: Orientation.All // После того как страница полностью подгрузилась открываем сразу нашу настоящую первую страницу: Component.onCompleted: { // immediate -> без анимации pageStack.push(Qt.resolvedUrl("pages/FirstPage.qml"), {}, PageStackAction.Immediate) } }
Дальше все пошло легче, авторизацию в Vkontakte сделал с помощью WebView.

import QtQuick 2.0 import QtQuick.LocalStorage 2.0 import Sailfish.Silica 1.0 import "../js/auth.js" as AuthJS import "../js/storage.js" as StorageJS Dialog { id: loginPage function checkUrl(url) { if (AuthJS.checkUrl(url) !== 1) { console.log(AuthJS.accessToken) StorageJS.storeSettingsValue("access_token", AuthJS.accessToken) StorageJS.storeSettingsValue("user_id", AuthJS.userId) loginView.stop() loginPage.close() } } SilicaWebView { id: loginView anchors.fill: parent url: "https://oauth.vk.com/authorize?" + "client_id=4803503" + "&scope=messages,video,wall,audio,friends,photos,offline" + "&redirect_uri=https://oauth.vk.com/blank.html" + "&display=mobile" + "&response_type=token" onUrlChanged: checkUrl(url) } }
В реализации WebView очень помог код из клиента для VK – Kat . Спасибо автору за замечательное приложение!

Затем на очереди, была страница «Wanted», по содержанию она во многом похожа на DialogPage, но используется компонент PullDownMenu для открытия карты и PullUpMenu для «убийства». Использование PullDownMenu и PullUpMenu:

import QtQuick 2.0 import Sailfish.Silica 1.0 Page { // ... // PullDownMenu и PushUpMenu можно использовать только в SilicaFlickable, SilicaListView или SilicaGridView SilicaFlickable { anchors.fill: parent PullDownMenu { // Разукрашиваем меню: backgroundColor: "green" highlightColor: backgroundColor // При свайпе сразу будет выбираться option: quickSelect: true MenuItem { text: "Open map" onClicked: { console.log(qsTr("Option clicked")) pageStack.push(Qt.resolvedUrl("MapPage.qml")) } } } contentHeight: column.height Column { // ... } PushUpMenu { backgroundColor: "red" highlightColor: backgroundColor quickSelect: true MenuItem { text: "Kill!" onClicked: { console.log(qsTr("Option clicked")) pageStack.push(Qt.resolvedUrl("EnterCodePage.qml"), {"uniqueKey": uniqueKey}) } } } } }

Запросы в Vkontakte для получения фотографии и имени жертвы;
- «Убийство» «жертвы» с помощью «выстрела» по Bluetooth;
- демон для отслеживания местоположения игрока.

А также провели не самую лучшую презентацию приложения… Но у нас был UI, которым, по крайней мере, лично я реально гордился (хоть он был и с небольшими багами…). Это был колоссальный шаг вперед для меня. До поездки я мог создавать только 1-2 страничное приложение с очень примитивной логикой, к примеру приложение «Chance.»:


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

29 июля. Вечер

После завершения хакатона повезли в боулинг-клуб, где всех нас ждал банкет, общение и награждение. После боулинга мы долго не шли спать, обсуждали итоги хакатона, размышляли о Sailfish OS, говорили по душам.

30 июля

Сразу после завтрака организаторы обсудили с участниками пожелания и идеи для развития Sailfish OS. Потом, на прощание, «вывезли в люди» - организовали экскурсию на остров-город Свияжск. После реально отличной экскурсии пришла пора прощаться – Летняя Школа Sailfish OS подошла к концу.

Заключение

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

Бонус №1

Пара советов для тех, кто еще не участвовал в хакатонах:

Продумывайте и делайте презентации своих идей/творений как можно качественнее и выступайте эффектней. От этого действительно(!) зависит многое;

Четко сформулируйте для себя и аудитории задачу минимум и максимум.

Android всё больше монополизирует рынок смартфонов. Каждую неделю появляется как минимум десяток моделей устройств на базе операционной системы от Google. В то же время за весь прошлый год было анонсировано всего 15 моделей смартфонов на базе других ОС. За семь месяцев этого года статистика и того печальнее – всего три модели. Две из них основаны на Sailfish OS. Первая, Jala Accione, может стать одним из самых продвинутых смартфонов на базе финской платформы, но продаваться будет только в далёкой Боливии. Другая, Inoi R7, имеет отчасти российское происхождение, использует адаптированную для России версию Sailfish OS (так называемая Sailfish Mobile OS RUS от «Открытой мобильной платформы») и ориентирована на российский рынок. Давайте изучим это устройство и его операционную систему.

Технические характеристики Inoi R7:

  • Сеть: 2G, 3G, 4G
  • Платформа: Sailfish OS 2.1.1 Jämsänjoki
  • Дисплей: 5", 1280х720 точек, 294 ppi
  • Камера: 8 Мп, автофокус, f/2,1, запись видео 720p@30fps
  • Фронтальная камера: 5 Мп, f/2,3, запись видео 720p@30fps
  • Процессор: 4 ядра, 1,2 ГГц, Qualcomm Snapdragon 212
  • Графический чип: Adreno 304
  • Оперативная память: 2 ГБ
  • Внутренняя память: 16 ГБ
  • Карта памяти: microSD
  • A-GPS, ГЛОНАСС
  • Bluetooth
  • Wi-Fi (802.11b/g/n)
  • Порты: microUSB, 3,5 мм
  • Светодиодный индикатор
  • Аккумулятор: съёмный, 2500 мАч, 4,35 В, литий-полимерный
  • Размеры: 145,9х71,5х8,9 мм
  • Вес: 145 г

Комплектация и дизайн

Inoi R7 поставляется в белой коробке. В качестве производителя на ней указана компания Mobile Informatics Services из ОАЭ. На её сайте нет ничего, кроме фотографии Бурдж-Халифа, хотя офис компании находится в другом небоскрёбе. На самом деле (по сертификационным документам), производством Inoi R7 занимаются заводы Maxon и Desay. Внутри, помимо самого смартфона, можно найти защитную плёнку, кейс, простенькое зарядное устройство (5 В, 1 А), USB-кабель и документацию.

Смартфон бывает только чёрным. Корпус полностью пластиковый, используется покрытие софт-тач. И он странно пахнет... грязными носками. Задняя крышка съёмная, под ней прячутся два слота micro-SIM, отдельный лоток microSD и извлекаемая батарейка на 2500 мАч. Дизайн аппарата максимально спокойный, но при этом его нельзя назвать отталкивающим, аппарат приятен глазу. Единственный изыск, рифлёная кнопка блокировки, смотрится даже как-то неуместно в столь простом общем исполнении. Несмотря на огромные рамки, аппарат нетрудно использовать одной рукой, всё-таки экран тут не самый большой, всего 5", да и система заточена под одноручное управление. Динамик расположен на задней панели, чтобы он не перекрывался, есть бугорок, громкость средняя.

5" дисплей Inoi R7 имеет разрешение 1280х720 точек. Не самое высокое, но для комфортного использования его вполне достаточно. У экрана хорошая цветопередача (есть небольшая синева, но это общая болячка всех недорогих IPS) и высокие углы обзора. Диапазон изменения яркости не очень велик, солнечным днём на улице максимального значения может немного не хватать. Мультитач есть, а вот олеофобного покрытия нет. Иногда экран сходит с ума и начинает фиксировать фантомные касания. Само не проходит, но на время помогает блокировка-разблокировка.

Программное обеспечение

Как я уже говорил, Inoi R7 – один из немногих смартфонов не на Android, вышедших в этом году. Он использует операционную систему Sailfish OS, разработанную небольшой финской компанией Jolla. Она основана выходцами из Nokia, занимавшимися там созданием Maemo и MeeGo, но в итоге брошенных корпорацией при «смене платформы». Чем эксперимент с Windows Phone закончился для Nokia, мы знаем, но и у Jolla судьба не проще. Компания зарабатывает очень мало денег, но уже много лет кое-как поддерживает свою операционную систему. Сейчас она дошла до версии 2.1.1, имеющей название Jämsänjoki (Йямсянйоки). Раньше версии Sailfish OS назывались в честь финских озёр, теперь – в честь рек.

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

Я назвал очень много меню, теперь пора объяснить, что на них есть. Экран блокировки очень простой, свайпом вверх с него можно открывать камеру, а в вытягиваемом меню есть три приложения на ваш выбор. Если стоит пароль, открыть их без ввода пароля не получится. Основной экран системы («Домашний экран») идеологически напоминает первые версии BlackBerry OS 10: там располагаются плитки открытых в настоящее время приложений, с которыми можно взаимодействовать. Прямо с домашнего экрана можно открывать новые вкладки в браузере, создавать заметки, новые сообщения и так далее. У некоторых приложений эти виджеты состоят из нескольких страниц, из-за чего получаются очень информативными. Удобно, что можно, например, смотреть последние вычисления в калькуляторе, не заходя в него.

Свайпом влево или вправо из главного меню можно попасть в окно событий. Там есть виджет погоды (можно убрать) и туда попадают все уведомления из приложений. По сути, аналог шторки из более распространённых ОС. В качестве вытягиваемого меню в окне событий – переключатели беспроводных соединений, ползунки яркости и громкости, кнопки быстрых действий и другие приятности. Их можно добавлять или убирать по своему выбору в «Настройках». Там же можно сделать так, чтобы окно событий открывалось по свайпу с левого края вместо домашнего экрана (тогда домашний экран останется только по свайпу справа).

Окей, если шторку заменяет окно событий, то что такое «верхнее меню»? Там есть кнопка блокировки смартфона, но это не главное. Главное: это меню, в котором можно менять атмосферы. Атмосферы – это вторая (после жестового управления) основная дизайнерская идея Sailfish OS. Каждая атмосфера состоит из обоев, основного цвета и набора рингтонов. При смене атмосферы меняется всё сразу: все приложения перекрашиваются в новый цвет, при звонке начинает играть другой рингтон, а фоном системы становится другая картинка. «Из коробки» есть около десятка атмосфер, их можно редактировать, можно и создавать свои на базе любого изображения. То же верхнее меню открывается при длительном удержании кнопки блокировки, только вместо кнопки блокировки в нём оказывается кнопка выключения (плюс можно добавить кнопку перезагрузки).

Что можно в целом сказать об интерфейсе Sailfish OS? Это безусловно самый красивый мобильный интерфейс, который я когда-либо видел. Отличные шрифты, гениальная идея атмосфер, полупрозрачные приложения, сквозь которые видно обои, красивейшие картинки «из коробки», великолепные анимации, единый стиль по всей системе, кнопки-лампочки, классно оформленные вытягиваемые меню – перечислять все преимущества внешности «рыбы-парусника» (так переводится слово Sailfish; это, к слову, самая быстроплавающая рыба в мире) можно очень долго. Но есть и недостатки. Интерфейс красив, но не очень удобен. Дело даже не в том, что он полностью жестовый – у меня есть большой опыт использования жестовой Ubuntu Touch, и она намного удобнее и понятнее. Нередко приходится задумываться на несколько секунд, в какую сторону свайпнуть, чтобы попасть туда, куда хочешь попасть. Очень часто хочется свайпнуть влево, чтобы отменить только сделанное свайпом вправо действие «назад», но это невозможно. Из любого места системы можно попасть в меню смены атмосфер, но только из окна событий – к часто используемым ползунку яркости и переключателю мобильных данных.

С самой системой разобрались, теперь давайте поговорим о приложениях! Изначально их в системе всего восемнадцать, причём только десять нельзя удалить. Можно удалить даже аудиоплеер («Медиа»). Впрочем, Ubuntu Touch все равно впереди: там можно удалить даже приложение камеры. Все программы выполнены в едином стиле и очень красиво выглядят, но ничего особо интересного с точки зрения функциональности я в них не нашёл, поэтому вместо подробных описаний отделаюсь скриншотами.

Поподробнее поговорить хочется только о «Настройках», там есть несколько важных и интересных моментов. Например, рассказывается про такой трюк: при динамической ориентации дисплея можно вращать телефон, удерживая палец на экране, и ориентация не будет меняться. Не можете удобно устроиться с телефоном из-за автоповорота? Поймали нужную ориентацию, повернули телефон с пальцем на экране и радуетесь жизни. Кстати, можно ставить постоянную альбомную ориентацию, чего нет в Android. Ещё один пункт, на котором стоит остановиться, – «Блокировка». Дело в том, что над вопросами безопасности в Jolla явно не заморачивались. Единственный способ, которым можно защитить телефон, – код длиной от пяти цифр. Но и этот код телефон может не запрашивать некоторое время после блокировки телефона (по умолчанию 5 минут, можно снизить до нуля). Если вы неправильно введёте пароль – тоже ничего страшного, количество попыток никак не ограничено. По умолчанию. Можно изменить, минимальное допустимое число попыток – четыре. Но тут надо быть очень осторожным: при превышении лимита неправильных вводов пароля телефон блокируется не на полчаса и не на сутки, а навсегда. Разблокировать его можно только через рекавери, к которому надо подключаться с компьютера через Telnet, инструкция есть на форуме Jolla Together.

Что насчёт сторонних приложений? Для их установки есть «Магазин», для входа в который нужен Jolla-аккаунт (создать его – не проблема). Правда, качать там особо нечего. Там нет официальных клиентов соцсетей, с неофициальными тоже беда (ВКонтакте нет), нет хорошего приложения карт, с играми тоже грустно. Я нашёл пару интересных вещей, понравившихся мне на Ubuntu Touch, но ни одной 3D-игры найти не смог. К счастью, приложения на смартфон можно ставить не только из «Магазина», но и откуда угодно ещё. Например, из гораздо более интересного стороннего магазина, называющегося Warehouse. Там ассортимент пошире, есть даже более-менее приличный клиент ВКонтакте, но и там всё довольно грустно.

Знаете, почему никто не разрабатывает софт под Sailfish? Дело не только в небольшой пользовательской базе (всего шесть приложений из Магазина загружены более 10 000 раз), но и в том, что операционная система поддерживает запуск Android-приложений. «Да это же решение всех проблем!» – скажете вы. Нет, не решение. Для Inoi R7 было сделано исключение, на нём запускать Android-приложения нельзя. Обойти это ограничение энтузиастам пока не удалось, хотя пытавшиеся были. Проблема не на уровне «Открытой мобильной платформы» и Sailfish Mobile OS RUS, они в теории Andorid-софт запускать умеют, проблема именно на уровне Inoi R7. Производитель осознанно ограничил возможности своего устройства, и это довольно странно. Объясняют это тем, что корпоративным пользователям, ради которых смартфон и создавался, важнее Sailfish-софт – только как это связано с убиранием Android-песочницы из ОС, непонятно.

Камера

Inoi R7 обладает 8-Мп камерой со светосилой f/2.1 и вспышкой. Стандартное приложение камеры довольно простенькое, из интересного в нём только возможность менять ISO вручную. Правда, диапазон невелик – 100, 200, 400. Аппарату хорошо даются только очень простые композиции. Пейзажи и кадры при не очень хорошем освещении получаются плохо. У снимков низкая детализация, нередки ошибки в определении баланса белого. Ещё один минус фотографий на Inoi R7 – обилие цветных шумов. Их очень много даже на тех снимках, которые сделаны днём.














Фронтальная камера имеет разрешение 5 Мп. Качество селфи – так себе. Вот наш редактор Евгений Макаров в новом для себя амплуа – мистер цифровой шум:

Видео пишется в 720p@30fps, при плохом освещении фреймрейт падает. Детализация роликов низкая. Стабилизации никакой. Фокусировка во время съёмки работает, но очень медленно – в среднем за десять секунд.

Производительность и тесты

Аппаратная основа Inoi R7 – чипсет Qualcomm Snapdragon 212 (4 ядра по 1,2 ГГц плюс GPU Adreno 304). В смартфоне 2 ГБ оперативной и 16 ГБ встроенной памяти, свободно 1,4 ГБ и 9,9 ГБ соответственно. Начинка, мягко говоря, слабая. Казалось бы, раз игр нет, то волноваться нечего, но нет. Производительности не хватает даже для тех задач, на которые Inoi R7 способен – для браузера, например. Я привык читать твиттер через Tweetdeck, но тут это было проблематично, ибо девайс жутко тупил при прокрутке. Лаги встречались и на других тяжёлых сайтах. Нагрев есть, но небольшой.

Ёмкость аккумулятора составляет 2500 мАч. «Открытая мобильная платформа» говорит следующее: «Экономия заряда мобильного устройства стала одной из ключевых задач при проектировании архитектуры Sailfish. В сравнении с другими операционными системами Sailfish потребляет меньше электроэнергии в типичных режимах работы». Значит, маленькая ёмкость – не так уж плохо? Увы, нет, это очень плохо. Разряд с 99% до 8% при показе SD-видео с максимальной яркостью стоковым плеером занял 4 часа 37 минут. Это примерно вдвое меньше, чем у среднестатистического современного Android-бюджетника. В обычных условиях смартфон при активной эксплуатации разряжается за сутки.

Выводы

Куда приплыла рыбка? Sailfish OS обладает красивейшим пользовательским интерфейсом, который, к сожалению, не очень удобен. Но даже к странной системе свайпов и неудачному расположению некоторых меню можно привыкнуть. Однако привыкнуть к тому, что твой смартфон почти ничего не умеет, намного тяжелее. Sailfish OS, особенно без Android-песочницы, всё ещё находится в том состоянии, в котором ей могут пользоваться только энтузиасты. И фраза «всё ещё» не значит, что это когда-нибудь изменится.

Что до самого Inoi R7, то в его преимущества можно записать только неплохой пластиковый корпус (главное – не нюхать) и качественный HD-дисплей. Камеры, железо и автономность устройства никак не соответствуют его цене в 11 990 рублей (продаётся только в «Байоне»). Даже если бы Sailfish OS была идеальна, а Android-приложения можно было бы запускать и все это хорошо бы работало, то посоветовать девайс все равно было бы тяжело (так что не поможет ему и планируемая версия с дуалбутом Android/Sailfish). Впрочем, провальным аппарат точно не станет. Сообщалось, что 15 тысяч экземпляров Inoi R7 уже купила «Почта России», а это солидная цифра для довольно дорогого смартфона неизвестного производителя. Так что на корпоративном рынке (я бы даже сказал B2G) смартфон ждёт успех, а на потребительском останется интересен только Sailfish (ради них продажи в «Байоне» и затеяны).