Чем мобильник может помочь скрасить ожидание? Первое что приходит на ум - это игры. Никто не спорит - проверенный и эффективный способ убить время. Но если гоняние мячика (или машинки) по экрану не вызывает у вас особого энтузазизма, можно попробовать найти занятие поинтеллектуальней. Например, воспользоваться GRPSом и полазить по сети. Занятие, несомненно, хорошее. Но есть два "но" - качество связи у наших операторов пока не очень, а в местах скопления большого количества телефоноговорящих людей (типа магазина Ашан) для того, чтобы выудить что-то из паутины, надо обладать изрядной выдержкой и терпением. К тому же, надолго этого занятия явно не хватит - ну посмотрели новости, ну посетили пару любимых сайтов, а дальше?.. Ещё одно развлечение - FM радио (у счастливых его обладателей) - архиполезнейшая штучка: послушать любимую музыку или передачу всегда приятно. Но это занятие в большей степени фоновое - слушая радио, мы, обычно, занимаемся кучей других полезных дел.
И вот тут пора вспомнить что мы (были, есть и будем есть) - самая читающая страна в мире. Даёшь литературу! Вопрос как её дать.
Как ни странно, маленький размер экрана мобильника (типичное разрешение 128 на 128) позволяет отобразить не так уж мало информации. Соотвествующим образом подобрав фонт, переформатировав текст и расставив переносы, можно на один экран уместить почти целый книжный абзац. То есть читать можно. Вопрос второй - где взять что читать. Есть множество ресурсов с электроннымим книгами - легальных и не очень. Самый известный, например, библиотека Машкова lib.ru, где собранно огромное колличество книжек, авторы которых не возражют против их бесплатного распространения. Соотвественно, если у вас на телефоне есть нормальный HTML броузер, Вы можете просто зайти на этот сайт, открыть понравившуюся книжку и читать сколько душе угодно. Но есть две маааленькие проблемки: во-первых, полноценный HTML броузер есть далеко не на каждом телефоне, а качать по WAPу Вы разоритесь (у MTC мегабайт закаченный по WAPу обойдётся Вам в $8, с учётом того, что это размер не самой большой книжки - удовольсвие получается то ещё), ну, а во-вторых, то о чём мы уже писали - надёжная и быстрая GRPS связь есть далеко не всегда и не везде (а по закону Мерфи её не будет именно тогда, когда Вам она понадобится). Что делать? Запастись книжками впрок.
Краткое описание MobiBook
Вот мы уже почти добрались до того, что собственно есть MobiBook. Большинство современных телефонов поддерживают Яву (язык программирования, а не кофе, последнее не перенесёт почти ни один телефон). Это очень здорово - можно написать программку
(называющуюся, кстати, мидлетом), которая, теоретически, будет работать на всех телефонах (Нокиях, Сименсах, Самсунгах, Моторолах, и.т.д.). Правда замечательный слоган "написано один раз - работает всюду" только звучит хорошо, а в реальной жизни всё не так уж здорово. Во-первых, у различных производителей телефонов (и даже у разных их моделей) есть всевозможные ограничения на эти самые мидлеты - на их максимальный размер, занимаемую память и т.д., причём эти ограничения достаточно часто бывают очень жесткими и не зависят от количества имеющейся памяти на самом телефоне. Например, на популярной сейчас трубке Nokia 6230 размер мидлета ограничен 128кб, размер памяти, занимаемой приложением, - 512кб, а в сумме мидлеты не могут занимать больше 3Мб. Это при том, что в телефоне 16Mb оперативной памяти и ещё 32Mb на карточке. Вторая проблема связана с тем, что стандарт Явы для мобильных телефонов (MIDP) предоставляет только самые базовые возможности и позволяет делать с телефоном далеко не все - например, не позволяет управлять подсветкой или опросить состояние аккумулятора. Поэтому большинство производителей предлагают собственные расширения MIDP, но воспользовавшись ими придётся забыть о "работает всюду" и выпускать специализированные версии мидлетов для каждой платформы.
Например, на Сименсах есть нормальная файловая система и книжки можно просто закачивать как файлы, но вот беда - на Нокии ничего подобного нет.
Итак MobiBook - это читалка книжек для мобильников, написанная на Java и работающая на любом телефоне с поддержкой Java (MIDP 1.0 или MIDP 2.0). К сожалению MIDP 1.0 не предоставляет стандартного способа использовать полноэкранный режим (т.е. чтобы текст занимал весь экран). В версии MobiBook для MIDP 1.0 для достижения этого эффекта используется Nokia специфичный код. На других телефонах полноэкранный режим может не работать - внизу экрана оставанется пустая полоса (правда некоторые MIDP 1.0 реализации Java в случае отсутствия команд на экране не отводят для них место). Книжка включается в сам мидлет (как файл ресурса). При этом, так как мидлеты сжимаются архиватором, мы получаем экономию места без необходимости реализовывать собственный распаковщик. Книжка должна быть в виде обычного текстового файла (если исходный файл был в формате HTML, то все таги оттуда нужно удалить). В MobiBook имеется простое средство изготовления своей книжки - надо просто указать имя книги и путь к файлу с её содержимым. После этого, получившийся мидлет можно загрузить в телефон стандартным способом. Как? См. описание своего телефона. Прочитав книжку, её можно удалить, после чего приготовить и загрузить новую.
Итак, загружая мидлет с книжкой на свой телефон, Вы фактически загружаете две вещи - саму читалку (оболочку) и непосредственно книжку. Оболочка сама по себе занимает порядка 20кб. Соотвественно, всё остальное приходится на заархивированный текст книги. С одной стороны это выглядит довольно расточительным - зачем одну и ту же программу загружать несколько раз в составе различных мидлетов. С другой стороны - это единственный универсальный и самый удобный способ, который будет работать на всех телефонах (ес-но, если размер книжки вписывается в ограничение на максимальный размер мидлета).
Основная задача MobiBook - сделать чтение как можно более удобным с учётом ограниченных способностей мобильного телефона. Для этого, с использованием переносов, форматирования и специальных фонтов, MobiBook стремится вывести на экран как можно больше текста (чтоб избежать ситуации, когда начало предложения исчезает с экрана, в то время, как его "хвост" ещё не показался). Так же MobiBook всегда запоминает текущую позиция в книге, чтобы выйдя из программы, после повторного запуска не приходилось искать место, на котором Вы остановились). Конечно, имеется механизм закладок и поиска (для тех кто не просто читает, а использует кинигу как цитатник).
Подробное описание MobiBook
Запустив MobiBook Вы увидите то же, чтобы увидели бы, открыв книгу - текст.
У MobiBook-а нет никаких заставок, менюшек и прочих "фенечек".
Основное управление осуществляется с помощью кнопок телефона:
За бортом
Ниже приведён список наиболее популярных возможностей читалок, которые не были реализованы с объяснением причины.
| Возможность | Описание |
|---|---|
| Автоскролинг | Я писал MobiBook-а во многом для себя и не могу представить что, кроме раздражения, может вызвать уползающий из под носа текст или, наоборот, ожидание того, когда же, наконец, появится новое предложение. Скорость чтения даже у одного челеовека не постоянная и сильно зависит от читаемого текста. Кроме того, книги на мобильнике обычно читают не в тиши кабинета, а в обстановке, когда имеется куча отвлекающих факторов. И вряд ли вам понравится, что за то время, пока вы перемещали машину на пару метров вперёд в пробке, читалка автопрокрутила пару страниц. |
| Управление подсветкой | Нет стандартного (переносимого) способа. Кроме того, читать без посветки на сотовом телефоне почти не возможно, а при её постоянном включении есть большой риск посадить аккумулятор, если чтение пришлось внезапно прервать и запихнуть телефон в карман. |
| Гипертекст (ссылки, примечания, индекс) | Не реализовано с целью экономии памяти - сейчас BookReader осуществляет чтение книги в инкрементальном режиме - по кускам. При этом, так же хотелось избежать этапа конвертации книги в формат, понимаемый читалкой |
| Закачка книг по сети | Для этого у меня есть другая программа - MobiBrowser. |
| Рассылка цитат с помощью SMS | Может кому-то эта фича и потребуется, но с моей точки зрения - штука абсолютно бессмысленная. |
Пока имеется индекс только по имени автора. В дальнейшем, возможно, появится индекс и по тематике и полнотекстовый поиск. Кто желает помочь - буду рад. Я, естественно, не могу просмотреть все эти 250000 книжек самостоятельно, обо всех обнаруженых ошибках пишите на адрес support@mobibook.org. Так же буду рад получить отзывы, предложения.