Предисловие
Перед тем, как приступить к детальному рассмотрению Google Android и первого "гуглофона", хотелось бы вкратце познакомить читателя с текущей ситуацией на рынке смартфонов и мобильных операционных систем. Согласно последнему исследованию известного аналитического агентства Gartner, рынок смартфонов продолжает неуклонно расти, хотя и несколько медленнее, чем в прошлом году, что связано с мировым экономическим кризисом. Так, по итогам второго квартала этого года было продано 32,2 миллиона "умных" телефонов, что на 15,7% больше показателя за аналогичный период прошлого года. Как видим, большое внимание к этой отрасли производители проявляют не зря.
Что касается мобильных операционных систем, то тут складывается весьма интересная ситуация. Symbian, как и прежде, удерживает безоговорочное лидерство - хотя ее доля на рынке уменьшилась с 65,6% до 57,1%, но в абсолютном количестве проданных телефонов она все же прибавила 0,7%. Приятно удивила операционная система RIM одноименной компании, устанавливаемая на мобильные телефоны BlackBerry. По итогам второго квартала она оттеснила Microsoft Windows Mobile, заняв вторую позицию с долей на рынке 17,4% (во втором квартале 2007 было 8,9%). Годовой рост продаж RIM-устройств составил впечатляющие 126,4%! Не меньший повод для радости есть и у одного из самых молодых игроков этой отрасли, компании Apple - рост продаж "айфонов" на базе Mac OS X составил 230,6%, позволив ей увеличить долю на рынке с 1% до 2,8%.
И вот мы подошли к главному вопросу, напрямую связанному с темой сегодняшней статьи. Вопреки общей тенденции к повышению объемов продаж смартфонов, перспективный кусок рынка, мобильные ОС на базе Linux - существенно уменьшился. Если во втором квартале прошлого года было продано 2,8 млн Linux-телефонов, то в этом году - всего 2,3 млн. В итоге, доля мобильного Linux уменьшилась с 10,1% до 7,3%.
Несмотря на такие, казалось бы, неутешительные результаты, аналитики с оптимизмом смотрят в будущее "линуксофонов". По оценкам ABI Research, к 2013 году ситуация кардинально изменится и Linux-телефоны займут 23 процента рынка. Основные надежды аналитики связывают с объединением LiMo Foundation, а также активно набирающей обороты организацией Open Handset Alliance и ее разработкой Google Android. Вот о них мы сегодня как раз и поговорим.
История развития Google Android
5 сентября 2007 года было официально объявлено о формировании группы компаний Open Handset Alliance (OHA), целью которой является разработка открытых стандартов для мобильных устройств. На сегодняшний день OHA объединяет 34 компании, среди которых крупнейшие сотовые операторы T-Mobile, Sprint Nextel, KDDI, NTT DoCoMo, China Mobile, разработчики микросхем Broadcom, Intel, Marvell, NVIDIA, Qualcomm, SiRF, Texas Instruments, производители мобильных устройств HTC, LG, Motorola, Samsung Electronics, а также мировой гигант ИТ-индустрии и один из главных идейных вдохновителей альянса, компания Google. Одного беглого взгляда на список членов OHA достаточно для осознания масштаба и серьезности проекта.
Одновременно с представлением OHA была анонсирована открытая мобильная платформа Android, основанная на ядре Linux. 12 сентября того же года была представлена и предложена для скачивания первая версия пакета для разработчиков Android "Early Look" SDK. Дав возможность программистам освоиться в новой среде пару недель, OHA запустила конкурс на лучшие приложения для Android - Android Developer Challenge I (ADC I), который проходил с января по август этого года. Призовой фонд ADC I составил $5 млн. Приятно видеть в списке финалистов и призеров наши фамилии, например, Алексей Писарев и Андрей Тапеха (
Commandro), Сергей Грицюк и Дмитрий Шипилов (
Beetaun), Михаил Ксензов (
ShareYourBoard).
На протяжении первого квартала мы время от времени получали сообщения о попытках запустить Android на разных устройствах. Например, в январе умельцы сумели успешно установить операционную систему от Google на КПК
Sharp Zaurus SL-C760. На февральской выставке GSM World Congress 2008 компания Texas Instruments продемонстрировала рабочий экземпляр смартфона с установленной
Google Android. Кроме нее, свои разработки представили и
другие производители. После выставки лишь редкие слухи напоминали нам о существовании Android.
Но в конце лета о "гуглофонах" вновь заговорили. 18 августа OHA объявила о выпуске новой версии SDK 0.9 beta, которая была максимально приближена к финальному варианту. В этот же день Федеральная комиссия связи США (FCC) одобрила телефон HTC Dream, который, по сути, и есть T-Mobile G1.
28 августа свершилось еще одно знаменательное событие, которое свидетельствовало о приближении официального анонса Android. Компания Google представила Android Market - онлайн-центр, который позволит пользователям "гуглофонов" искать, покупать и загружать приложения и другой контент для своих мобильных устройств, и поддерживает систему рейтинговых оценок товаров. Ключевой особенностью Android Market является простота выкладывания программ разработчиками без жесткого контроля, как это реализовано в App Store компании Apple. Для этого им необходимо пройти всего лишь три шага: зарегистрироваться как продавец, загрузить свой товар с описанием и опубликовать в соответствующем разделе.
И вот 23 сентября свершилось то, чего мы уже так долго ждали - компания Google совместно с мобильным оператором T-Mobile и тайваньским производителем HTC анонсировали первое устройство на базе платформы Android. Новинка, известная также как HTC Dream, появится 22 октября под именем T-Mobile G1 (пока только для абонентов T-Mobile USA, по цене $179 с контрактом на два года).
Одновременно с анонсом первого "гуглофона" был выпущен первый полноценный пакет разработчика SDK 1.0, Release 1. Приложения, написанные на этом SDK, будут полностью совместимы с мобильными устройствами на базе Android. Таким образом, у программистов есть еще несколько недель, чтобы подготовить и отладить свои разработки к релизу T-Mobile G1.
На этом обзор ключевых событий в истории Google Android можно завершить. Но впереди еще много интересного. Вскоре после релиза первого "гуглофона" будет открыт публичный доступ к исходным кодам Android. Кроме того, на четвертый квартал этого года альянс OHA запланировал проведение второго состязания для разработчиков Android Developer Challenge II. Его призовой фонд составит $5 млн, так что у программистов есть хороший стимул для изучения Android.
Архитектура Android
Информация об архитектуре Android вряд ли заинтересует читателей, не связанных с программированием, но все же мы не можем оставить эту тему без внимания. По описанию из официального источника, Android - это программный стек для мобильных устройств, который включает операционную систему, программное обеспечение промежуточного слоя (middleware), а также основные пользовательские приложения (e-mail-клиент, календарь, карты, браузер, контакты и другие).
Архитектура Android построена на основе ядра Linux версии 2.6. Оно отвечает за такие системные службы, как управление безопасностью, памятью, процессами, включает сетевой стек и модель драйверов. Кроме того, это ядро также играет роль абстрактного слоя между аппаратным уровнем и остальной частью программного стека.
Следующий уровень в иерархической системе - библиотеки, написанные на C/C++. В медиабиблиотеках (Media Libraries) заложена поддержка основных форматов и кодеков, включая MPEG4, H.264, MP3, WMA, WAV, AAC, AMR, JPG, PNG. Графические библиотеки (3D Libraries) поддерживают API OpenGL ES 1.0 и обеспечивают поддержку аппаратных 3D-ускорителей. Как отмечается, в одном приложении можно одновременно использовать двух- и трехмерную графику. Еще одной примечательной библиотекой является LibWebCore (WebKit) - движок для web-браузера Android, используемый также в популярном браузере Safari от Apple.
Одной из важнейших частей стека является Android Runtime, состоящая из виртуальной Java-машины Dalvik и набора библиотек ядра. Dalvik позволяет поддерживать одновременную работу нескольких приложений и выполняет файлы в специальном формате .dex, оптимизированном для устройств с малым количеством памяти. Библиотеки ядра написаны на языке Java и включают большой набор классов, которые поддерживают широкий диапазон функциональных возможностей.
Следующий уровень - Application Framework (каркас приложений). Этот уровень фактически представляет собой инструментарий, которым пользуются все приложения. Здесь стоит выделить такой компонент, как Content Providers (провайдеры данных), который является уникальной особенностью Android. Провайдеры данных позволяют, например, объединять информацию из интернета с данными телефона - контактной информацией или географической локацией, - чтобы реализовать новые функции. Кроме того, данные могут совместно использоваться разными приложениями.
И, наконец, на вершине пирамиды - уровень приложений (Applications). Что интересно, Android не делает разницы между основными приложениями телефона и сторонним программным обеспечением - таким образом, ключевые компоненты, такие как набор номера, рабочий стол или почтовый клиент GMail, можно заменить альтернативными аналогами. Приложения для Android пишутся на языке Java.
Если Вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.