Неделя с ежевикой

Первое моё знакомство с продуктами компании Blackberry произошло около полутора лет назад. Тогда в руки мне вдруг и совершенно безвозмездно (на самом деле по специальному предложению для разработчиков) попал семидюймовый планшет Blackberry Playbook. Его изюминка, расхваливаемая тогда в голос маркетологами – операционная система, лежащая в основе, а она не какая-то, а сама QNX! Та, что ещё в начале двухтысячных сводила с ума системных администраторов своей компактностью: на полуторамегабайтную дискету помещался не только бинарник микроядра, но и графический стек, и набор стандартных утилит. Но, увы и ах, для обычного пользователя QNX приспособлена не была, и дело даже не в цене, а в отсутствии драйверов и прикладного ПО. Не спасла систему даже её POSIX-совместимость – в то время дела были немногим лучше и у Linux, “белого коня” систем, каким-то боком причастных к POSIX, с которой портировать код было бы делом не столь трудоёмким. Тем не менее, простота и надёжность позволила QNX откусить свой кусочек в промышленной сфере, а кусочек этот, как известно, лакомый.

И вдруг весной 2010 года Research In Motion (сейчас – Blackberry) заявляет о покупке подразделения, занимающегося системой реального времени у компании Harman. А полгода спустя – так вообще выкатывает тот самый, оказавшийся у меня волею судеб планшет Playbook с QNX на борту. Однако толп покупателей за железкой не появилось: система, может, и хороша, но из встроенных приложений был доступен лишь браузер, видеоплеер да калькулятор, а количество сторонних программ несильно отличалась от числа “ноль”. Лишь через год после запуска в продажу на немногочисленные устройства свалилось обновление “2.0” с приложениями “Контакты”, “Календарь” и “Почтовый клиент” и портированным Dalvik с Gingerbread SDK; последнее позволяло запускать написанные под Android Java-приложения.

Скопировать apk напрямую в устройство нельзя: не вышли цифровой подписью. Но переподписать приложение, даже чужое, человеку образованному несложно: запросить ключики на сайте Blackberry, подождать пару часов, пока те придут на указанный почтовый адрес, а затем несколько заветных команд в терминале – и дело в шляпе. Запускается не всё: если приложение использует сервисы Google (GCM – push, карты и тому подобное) или содержит нативные компоненты, то вам не повезло. Правда, зачастую приложение замечательно обходится и с поломанным Push (откровенно говоря – до сих пор кажется, что поломан он в Android “из коробки”), а нативные компоненты встречаются не так часто.

Главное достоинство Playbook на мой взгляд – совсем не операционная система, а удобная и логичная навигация. Идея в том, что бортики по краям экрана – совсем не бортики, а часть сенсорной панели, и идеей жестов “от края в экран” система буквально пронизана. Главный же недостаток – отсутствие толковых инструментов разработки. На выбор – либо Android SDK, из которого даже стандартный Web-браузер запустить невозможно, либо Adobe Air, либо Native SDK. Последний – не более чем скромный набор библиотек, вполне достаточный для портирования написанных на C++ игр, но совершенно непригодный для разработки приложений, если только вы не горите желанием рисовать кнопочки на canvas вручную, отвлекаясь время от времени на реализацию достойной двойной буферизации. Неудивительно, что количество качественного софта хоть и расло, но слишком медленно. Толкового Twitter-клиента под планшет, например, так и не появилось.

Через пару месяцев после того, как Playbook попал мне в руки, компания торжественно заявила о скором выпуске телефона на основе той же платформы. В этот раз RIM не торопила программистов и дала полгода на допиливание системы до рабочего состояния. Параллельно готовился фреймворк Cascades, фактически – форк Qt и набор биндингов со стандартными компонентами системы.

За некоторое время до официального представления Blackberry 10 разработчикам начали раздавать аппараты с альфа-версией платформы; один из них попал и ко мне 1. Скажу честно: поначалу впечатление альфа-версия произвела угрюмое: треть функций была в стадии “Not implemented yet”, а ещё треть регулярно перезагружала аппарат по собственному разумению. Но на безрыбье и рак – рыба; задеплоить на устройство собственное приложение и понажимать в него пальчиками и правда было вполне реально. На альфа-устройства время от времени приходили обновления прошивок с новой версией Cascades.

Вместе с официальным представлением уже полноценной, релизной, версии, представлены были и два телефона: один – Z10, самый обычный смартфон в современном понимании этого слова, второй – Q10, с аппаратной QWERTY-клавиатурой. Помимо этого, разработчикам предлагалось поменять их Alpha-девайс на ограниченную версию Z10 при условии, что те напишут хоть одно приложение на Cascades.

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

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

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

Размер экрана – 4,2 дюйма, что косвенно говорит о размере девайса. Я не поклонник больших аппаратов, и даже эти 4,2”, о которых в современном обществе порой постыдишься сказать из-за опасений прослыть нищебродом, неспособным купить одну из свежевышедших корейских сапёрных лопат, для меня кажутся чем-то необъятным при использовании одной рукой. Компенсирует ситуацию толщина Z10 – 9 миллиметров, но, так или иначе, до верхних углов пальцу дотягиваться нелегко.

Уникальная “фишка” Playbook, возможность разблокировки экрана простым движением от границы экрана к центру даже при выключенном экране, преобразилась в Z10, адаптируясь под мобильный размер. Слайд теперь можно производить лишь от нижней границы, но появилась идея “подглядывания”: лишь только начинаешь слайд, загорается экран с часами и значками уведомлений. А если вернуть палец вниз, экран погасает, будто вы нажали кнопку питания на экране разблокировки iPhone или Android. Кнопка такая, к слову, и правда есть, и расположена точно по середине сверху, но её трудодоступность при использовании одной рукой компенсируется практической бесполезностью.

Как и для остальных моделей Blackberry, наличие фирменного чехла с магнитиком избавляет вас от необходимости ручной разблокировки устройства. Стоит такой чехол недорого, но в комплекте с Limited Edition его нет.

Пришлась по душе идея с паролем на разблокировку. Можно установить, в течение какого отрезка времени бездействия стоит запрашивать пароль повторно. По умолчанию стоит значение “15 минут”, минимальное – одна минута. Фотопароль и пароль по пользовательскому жесту недоступен (на мой взгляд, это разумно и правильно), доступны лишь цифровой и произвольный виды. Цифровая клавиатура ввода пароля на разблокировку находится слишком низко и, кроме того, в левой части экрана. Мне, как левше, набирать пароль на ней показалось неудобным.

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

Кстати, о настройках, их апплет – кажется, большее из недоразумений. Основные приложения системы сделаны на нативных компонентах, но вот настройки не изменились с Alpha-версий системы (хотя я так на это надеялся) и написаны на Adobe Air. Что мешало реализовать десяток окошек с флажками и текстовыми полями на Cascades, неясно, но сейчас скорость работы того, что работать должно мгновенно, оставляет желать лучшего. Правда, нет худа без добра: в утёкших ночных сборках Blackberry 10.2, релиз которой намечается на осень, настройки, наконец, стали нативными. Лучше поздно, чем никогда.

Кажется, сейчас нет мобильной платформы, в которой отсутствовал бы центр уведомлений, в который будет сыпаться информация о пропущенных звонках, новых твитах и многом другом. Архитекторы Blackberry пошли дальше и разработали Blackberry Hub. Три кита Hub – это интерактивность, категоризация и поиск. В Android версии Jelly Bean, по сути, зародилась лишь первая возможность, а во iOS, в ограниченной форме, лишь вторая. Здесь же вы без проблем сможете прочитать пришедшие SMS, твиты, письма как в единой ленте, так и в отдельности, при необходимости написать ответ или найти среди них что-нибудь по ключевым словам (что важно, поддерживается поиск по отдельным полям) – и всё в едином интерфейсе.

Приложение от рядового разработчика, увы, не сможет создать отдельную группу в Hub и вынуждено довольствоваться общей “Notifications”; исключение делается для особо крупных игроков мобильного рынка, таких как WhatsApp. Намерение компании можно понять: в ином случае Hub был бы настолько захламлён отдельными группами (ведь каждый разработчик знает, что его приложение самое важное и нуждается в отдельной группе уведомлений!), что потерял бы свою ценность. 2

Все приложения занимают полный экран, не оставляя места даже на строчку с часами. Идея эта выросла ещё из предыдущей версии Blackberry OS для мобильных телефонов; вот только там для просмотра времени или активных уведомлений требовалось покинуть аппликацию, вернувшись на домашний экран, а в “би-би тен” достаточно того же “подглядывания”, как и на экране блокировки. При завершённом слайде приложение отправляется в background, а при незавершённом, кроме верхней строки с часами и значками связи, слева можно увидеть иконки непрочитанного в Hub.

Завершая разговор о Hub, расскажу об удивительной “особенности” системы, а именно о поддержке SMS. Я, полагаю, многие догадываются максимальном размере сообщения – 140 байт, а послания большей длины отправляются по частям и “склеиваются” уже на телефоне получателя. Осуществлять отправку и склейку сообщений у Z10 получается хорошо, но вот с системой нотификации возникают казусы. Скажем, издаёт телефон радостное “блиньк!”, вы открываете Hub и наблюдаете в нём лишь кусочек присланного сообщения. В недоумении откладываете телефон в сторону, но через минуту повторное “блиньк! блиньк!” снова нарушает тишину. Иначе говоря, вам ничего не остаётся, как, получив первую “порцию” сообщения, без мыслей, без слов глядеть в Hub, ожидая завершения передачи каждого из оставшихся кусочков.

На телефонах Blackberry предыдущего поколения, как правило, была отличная 3 аппаратная QWERTY-клавиатура. Z10, на который, как на зеро, поставила Blackberry, такой клавиатуры лишён, зато имеет вполне приличный soft input. Автозавершение слов отображается прямо над конкретными буквами, не отъедая от экрана приложения отдельной строки, как в Android. Клавиатура умеет подказывать следующие слова по триграммам и, как я убедился, даже знает группу “Pink Floyd”.

Моя любимая клавиатура на Android – слегка устаревшая Smart Keyboard Pro. Она не поддерживает новомодных триграмм и представления о Android 4 имеет смутные, но это именно то, что работает мгновенно, без запинки, и не раздражает своей дотошностью. Отдельный пункт любви – поддержка четырёхстрочной раскладки, где редкоиспользуемые символы вроде “ё” и “ъ” вынесены в собственную строку.

В BB10 от “лишних” букв решили избавиться, спрятав их под контекстные меню отдельных клавиш. Контекстным же меню выполнено и переключение раскладок. Всё это несколько сбивает с толку, и печатать на новой клавиатуре мне всё ещё непросто. Буду стараться. Возмозжно, дело в моём консерватизме, и вам повезёт больше.

Экранная клавиатура, к сожалению, не поддерживает японского языка, хотя в списке языков есть много других языков Азии: вьетнамский, корейский, индонезийский, китайский; последнего аж два диалекта с традиционным/упрощённым наборами иероглифов. Это не существенный недостаток, однако я был бы исключительно рад поддержке Лунного языка.

Пользовательские системы ввода система не поддерживает, но, по-моему, это скорее плюс: на телефоне порой приходится вводить не только бестолковые сообщения друзьям и знакомым, но и пароли с банковскими реквизитами. Едва ли я решусь делать это на клавиатуре от мистера Хуэй Сяо.

Последнее, о чём я хотел написать (а, судя по количеству недосказанного, будет и продолжение) – это общее впечатление от работы телефона. Тот, безусловно, имеет ещё достаточно досадных косяков, а “инженерный дух”, бывает, проглядывает сквозь графическую оболочку. Но, несмотря на сказанное ранее, после обновления до версии 10.1 я не столкнулся ни с одной глобальной проблемой, ни с задачей, не имеющей адекватного решения. Повседневные задачи аппарат выполняет достойно и уверенно проживает день использования. А это главное.


1 – За что спасибо Blackberry Russia в целом и Андрею Киселеву в частности :)

2 – Хотя и из этого положения выход есть, и даже не один: либо позволить пользователю прикреплять-откреплять нотификации от избранных приложений в отдельные группы, либо превратить плоский список групп в дерево.

3 – Буквенные клавиши наклонены и подточены таким хитрым образом, что привыкший к стандартной раскладке человек мог набирать текст быстро и при этом без ошибок. Особенно удобной была клавиатура на телефонах серии Bold.