Главная » Разработка для Android » Небольшая предыстория

0

Задолго до сетей Twitter и Facebook, когда Google был всего лишь идеей в головах его создателей, а по Земле бродили динозавры, мобильный  теле- фон представлял собой переносное устройство связи, достаточно компакт- ное, чтобы поместиться в чемодане, а его батарейки  хватало на несколько часов работы. Тем не менее он давал достаточно свободы, чтобы совершать звонки без физического подключения к телефонной линии.

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

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

Не такое далекое прошлое

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

которых они создавали программное обеспечение (будь то одно устройство или целая их серия любого производителя). С развитием аппаратных воз- можностей и расширением доступа к мобильному Интернету данный подход стал неактуальным.

В последнее  время  созданы  платформы, например  Symbian,  обеспе- чивающие  разработчикам доступ к более широкой  аудитории  потребите- лей ПО. Эти системы подталкивали программистов к написанию большого количества  приложений, которые эффективно использовали имеющиеся аппаратные  средства.

Созданные  платформы открыли  доступ к некоторым  устройствам  ап- паратной части, но для этого требовалось писать полноценный код С/С++ с использованием запатентованного «тяжелого»  API, работа с которым была чрезвычайно сложной.  Дополнительные трудности  возникали при функционировании приложений на устройствах  с различным исполне- нием аппаратной  начинки,  в особенности  это касалось  устройств  с GPS- навигаторами.

За последние  годы настоящим  прорывом  в развитии ПО для мобиль- ных телефонов стало изобретение мидлетов для платформы Java. Мидлеты исполняются на виртуальной Java-машине, что позволяет  абстрагировать- ся от архитектуры того или иного устройства  и создавать  приложения, работающие  на любом из них, которое поддерживает Java. К сожалению, за такое удобство приходится  платить ограниченными возможностями до- ступа к аппаратной  части.

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

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

Будущее

Android — одна из операционных систем нового поколения,  созданных для работы с аппаратным обеспечением современных мобильных устройств. На сегодняшний день Windows Mobile, Apple iPhone и Palm Pre предлагают достаточно  мощные и более простые в использовании среды разработки

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

Android дает новые возможности для мобильных приложений, предлагая открытую среду разработки,  построенную  на открытом ядре Linux. У всех приложений есть доступ к аппаратным средствам устройства, для чего ис- пользуются специальные серии API-библиотек. Кроме того, здесь включена полная и контролируемая поддержка взаимодействия приложений.

На платформе Android все программы имеют одинаковый статус. Сто- ронние приложения написаны  на том же API, что и встроенное  ПО, при этом во всех программах одинаковое время исполнения. Пользователи могут удалять  или заменять  встроенные  ПО на альтернативные сторонние  раз- работки, будь то номеронабиратель или ??????? ????.

Источник: Майер P. Android 2 : программирование приложений для планшетных компьютеров и смартфонов : [пер. с англ. ] / Рето Майер. — М. : Эксмо, 2011. — 672 с. — (Мировой компьютерный бестселлер).

По теме:

  • Комментарии