Новости

Разработка программного обеспечения для платформы Android

Работа добавлена:






Разработка программного обеспечения для платформы Android на http://mirrorref.ru

СОДЕРЖАНИЕ

Введение

5

1

Принцип работы Android OS и Android приложений

6

1.1

Компоненты приложений вAndroid

6

1.2

Архитектура операционной системыAndroid

10

2

Разработка Android приложений

26

2.1

ИнструментыAndroid – разработчика

26

2.2

Установка JavaDevelopmentKit

26

2.3

Установка Eclipse IDE

26

2.4

Установка Android SDK

26

2.5

Установка Android DevelopmentTools

26

2.6

НастройкаAndroid Development Tools

26

2.7

ПишемAndroid – приложение “Hello, World!”

27

3

Мобильные приложения

27

3.1

Программы для работы с документами

27

3.2

Программы для осуществления оперативной связи

27

3.3

Программы удаленного доступа

27

Заключение

29

Список используемой литературы

30

ВВЕДЕНИЕ

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

Задание, полученное на дипломную работу - разработать программное обеспечение для платформыAndroid: информационное приложения для поклонников футбольной команды, с возможностью просмотра событий, статистики и иной информации о команде и ее успехах.- операционная система для коммуникаторов, планшетных компьютеров, цифровых проигрывателей, цифровых фоторамок, наручных часов, нетбуков и смартбуков, основанная на ядре Linux. Основным языком для разработки служитJava, однако существуют библиотеки позволяющие вести разработку на языке С++.

1.  Принцип работы Android OS и Android приложений

Приложения под операционную систему Android разрабатываются в основном с использованием Java. Скомпилированный программный код (вместе со всеми файлами ресурсов и прочей необходимой информацией) упаковывается в специальный файл-архив, AndroidPackage. Этот файл имеет расширение *.apk и упаковывается специальной утилитой aapttool. Именно он в дальнейшем распространяется как программа и инсталлируется на мобильные устройства. Один такой файл связан с кодом одного приложения. И каждое приложение в Android живет в своем собственном мире – в такой машине. По умолчанию, каждая программа выполняется в своем собственном процессе, управлением которого занимается ядро Linux, которое также осуществляет менеджмент памяти. Таким образом, чаще всего код приложения выполняется в изоляции от всех других приложений. Android стартует процесс, когда возникает необходимость выполнить какой-нибудь программный код и завершает его, когда в нем больше нет необходимости и системные ресурсы требуются другим приложениям. По умолчанию, каждому приложению присваивается свой уникальный ID Linux-пользователя. Права доступа устанавливаются таким образом, чтобы файлы приложения были видны только этому пользователю и данному приложению. Хотя, есть способы, позволяющие экспортировать их в другие приложения. Например, существует возможность «разделения» одного и того же пользовательского ID между двумя приложениями. В таком случае, они смогут видеть файлы друг друга. Для того, чтобы экономить системные ресурсы, приложения с одинаковым ID можно также договориться запускать в одном и том же Linux-процессе, разделяя одну и ту же виртуальную машину.

1.1 Компоненты приложений вAndroid

Интересной чертой операционной системы Android является тот факт, что приложение в ней может использовать для своего функционала элементы других приложений, если, конечно, они предоставляют такой доступ. Например, если нашему приложению требуется отобразить прокручиваемый список изображений, а другое приложение уже имеет реализованный подходящий скроллер, открытый для других приложений, то можно просто вызвать его для осуществления этого действия и не разрабатывать свой собственный. При этом код нашего приложения не смешивается с кодом другого и не компонуется с ним. Скорее, он просто запускает некоторый кусок другого файла, когда возникает такая необходимость. Для обеспечения такого принципа работы, система должна быть способна запускать процесс приложения тогда, когда потребуется любая его часть и создавать экземпляры java-объектов именно для этой части. Поэтому приложения Android не имеют единой точки входа, как это принято в большинстве систем. Вместо этого их код представляет собой набор некоторых отдельных целостных сущностей, компонент, из которых система по мере необходимости может создавать экземпляры и использовать их.

Можно выделить четыре типа таких сущностей-компонент. Поговорим о каждой в отдельности.

Activities.

Activity представляет собой внешний пользовательский интерфейс для одной операции, которую может совершить пользователь. Если упростить, то это просто один текущий экран как некоторая единица активности, своего рода кадр с одним пользовательским действием. Здесь и далее будет использоваться термин activity без перевода, как некоторое имя собственное. Хотя дословный перевод, «активность» или «действие», хорошо передает общий смысл компонента.

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

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

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

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

Визуальное содержание окна строится с помощью иерархии визуальных компонентов (или представлений) – объектов, производных от базового класса View. Каждый компонент представляет собой просто прямоугольное пространство внутри окна. Родительские компоненты содержат дочерние и организуют их расположение. Иерархию компонент можно представить в виде дерева, а те элементы, которые находятся в самой нижней его части (“листья”) и не имеют дочерних компонент, отрисовывают прямоугольные области и ожидают действий пользователя на этом участке. Таким образом осуществляется интерактивное взаимодействие с пользователем. К примеру, такое представление может отображать на экране маленькую иконку и инициировать какое-нибудь действие, когда пользователь на неё нажмет. В операционной системе Android уже есть набор готовых визуальных компонент, которые доступны для использования разработчиками. Набор включает в себя кнопки, текстовые поля, полосы прокрутки, меню, флажки-переключатели и многое другое.

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

Contentproviders Данный компонент управляет наборами данных, которые приложения предоставляют другим. Эти данные могут храниться в файловой системе, базах данных SQLite, в сети, или в любом другом постоянном месте, к которому приложение может иметь доступ. Посредством contentprovider другое приложение может запрашивать данные и, если выставлены соответствующие разрешения, изменять их. Например, система Android содержит contentprovider, который управляет пользовательской информацией о контактах. Он позволяет любому приложению, обладающему соответствующими правами вызывать составляющие этого компонента для того, чтобы считывать, записывать или изменять информацию о конкретном человеке.

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

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

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

1.2 Архитектура операционной системы Android.

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

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

Как известно, Андроид основан на несколько урезанном ядре ОС Linux и поэтому на этом уровне мы можем видеть именно его (версии 2.6.x). Оно обеспечивает функционирование системы и отвечает за безопасность, управление памятью, энергосистемой и процессами, а также предоставляет сетевой стек и модель драйверов.Ядро также действует как уровень абстракции между аппаратным обеспечением и программным стеком.  

«Выше» ядра, как программное обеспечение промежуточного слоя, лежит набор библиотек (Libraries), предназначенный для обеспечения важнейшего базового функционала для приложений. То есть именно этот уровень отвечает за предоставление реализованных алгоритмов для вышележащих уровней, поддержку файловых форматов, осуществление кодирования и декодирования информации (в пример можно привести мультимедийные кодеки), отрисовку графики и многое другое. Библиотеки реализованы на C/C++ и скомпилированы под конкретное аппаратное обеспечение устройства, вместе с которым они и поставляются производителем в предустановленном виде.

Перечислим некоторые из них:

SurfaceManager – в ОС Android используется композитный менеджер окон, наподобие Compiz (Linux), но более упрощенный. Вместо того чтобы производить отрисовку графики напрямую в буфер дисплея, система посылает поступающие команды отрисовки в закадровый буфер, где они накапливаются вместе с другими, составляя некую композицию, а потом выводятся пользователю на экран. Это позволяет системе создавать интересные бесшовные эффекты, прозрачность окон и плавные переходы.

MediaFramework – библиотеки, реализованные на базе PacketVideoOpenCORE. С их помощью система может осуществлять запись и воспроизведение аудио и видео контента, а также вывод статических изображений. Поддерживаются многие популярные форматы, включая MPEG4, H.264, MP3, AAC, AMR, JPG и PNG.

SQLite – легковесная и производительная реляционная СУБД, используемая в Android в качестве основного движка для работы с базами данных, используемыми приложениями для хранения информации.

3D библиотеки — используются для высокооптимизированнойотрисовки 3D-графики, при возможности используют аппаратное ускорение. Их реализации строятся на основе API OpenGL ES 1.0.

• OpenGL ES (OpenGLforEmbeddedSystems) – подмножество графического программного интерфейса OpenGL, адаптированное для работы на встраиваемых системах.

FreeType – библиотека для работы с битовыми картами, а также для растеризации шрифтов и осуществления операций над ними. Это высококачественный движок для шрифтов и отображения текста.

LibWebCore – библиотеки известного шустрого браузерного движка WebKit, используемого также в десктопных браузерах GoogleChrome и AppleSafari.

SGL (SkiaGraphicsEngine) – открытый движок для работы с 2D-графикой. Графическая библиотека является продуктом Google и часто используется в других их программах. SSL - библиотеки для поддержки одноименного криптографического протокола.

Libc – стандартная библиотека языка C, а именно её BSD реализация, настроенная для работы на устройствах на базе Linux. Носит название Bionic.

На этом же уровне располагается AndroidRuntime – среда выполнения. Ключевыми её составляющими являются набор библиотек ядра и виртуальная машина Dalvik. Библиотеки обеспечивают большую часть низкоуровневой функциональности, доступной библиотекам ядра языка Java.

Каждое приложение в ОС Android запускается в собственном экземпляре виртуальной машины Dalvik. Таким образом, все работающие процессы изолированы от операционной системы и друг от друга. И вообще, архитектура AndroidRuntime такова, что работа программ осуществляется строго в рамках окружения виртуальной машины. Благодаря этому осуществляется защита ядра операционной системы от возможного вреда со стороны других её составляющих. Поэтому код с ошибками или вредоносное ПО не смогут испортить Android и устройство на его базе, когда сработают. Такая защитная функция, наряду с выполнением программного кода, является одной из ключевых для надстройки AndroidRuntime.   Уровнем выше располагается ApplicationFramework, иногда называемый уровнем каркаса приложений. Именно через каркасы приложений разработчики получают доступ к API, предоставляемым компонентами системы, лежащими ниже уровнем. Кроме того, благодаря архитектуре фреймворка, любому приложению предоставляются уже реализованные возможности других приложений, к которым разрешено получать доступ.

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

• Богатый и расширяемый набор представлений (Views), который может быть использован для создания визуальных компонентов приложений, например, списков, текстовых полей, таблиц, кнопок или даже встроенного web-браузера.

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

Менеджер ресурсов (ResourceManager), обеспечивающий доступ к ресурсам без функциональности (не несущими кода), например, к строковым данным, графике, файлам и другим.

Менеджер оповещений (NotificationManager), благодаря которому все приложения могут отображать собственные уведомления для пользователя в строке состояния.

Менеджер действий (ActivityManager), который управляет жизненными циклами приложений, сохраняет данные об истории работы с действиями, а также предоставляет систему навигации по ним.

Менеджер местоположения (LocationManager), позволяющие приложениям периодически получать обновленные данные о текущем географическом положении устройства.

Таким образом, благодаря ApplicationFramework, приложения в ОС Android могут получать в своё распоряжение вспомогательный функционал, благодаря чему реализуется принцип многократного использования компонентов приложений и операционной системы. Естественно, в рамках политики безопасности.

•Стоит отметить, просто на понятийном уровне, что фреймворк лишь выполняет код, написанный для него, в отличие от библиотек, которые исполняются сами. Ещё одно отличие заключается в том, что фреймворк содержит в себе большое количество библиотек с разной функциональностью и назначением, в то время как библиотеки объединяют в себе наборы функций, близких по логике.

•На вершине программного стека Android лежит уровень приложений (Applications). Сюда относится набор базовых приложений, который предустановлен на ОС Android. Например, в него входят браузер, почтовый клиент, программа для отправки SMS, карты, календарь, менеджер контактов и многие другие. Список интегрированных приложений может меняться в зависимости от модели устройства и версии Android. И помимо этого базового набора к уровню приложений относятся в принципе все приложения под платформу Android, в том числе и установленные пользователем. Считается, что приложения под Android пишутся на языке Java, но нужно отметить, что существует возможность разрабатывать программы и на C/C++ (с помощью NativeDevelopmentKit), и на Basic (с помощью Simple) и с использованием других языков. Также можно создавать собственные программы с помощью конструкторов приложений, таких как AppInventor. Словом, возможностей тут много. Ну и ещё раз про архитектуру ОС Android можно узнать из первых рук, посмотрев это видео, в котором разработчики представляют презентацию, посвященную разбору системы.

2 РазработкаAndroid приложений

2.1 ИнструментыAndroid-разработчика

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

Прежде чем рассматривать инструменты для Android, необходимо ввести некоторые общие понятия, с которыми предстоит столкнуться на данном этапе. Первое базовое понятие – это SDK или SoftwareDevelopmentKit («devkit»). Под ним понимают набор средств разработки, позволяющий программистам создавать приложения под некоторую архитектуру — для определенного пакета программ, аппаратной или программной платформы, операционной или компьютерной систем. SDK, как правило, предоставляет разработчику широкий набор инструментов, который может включать в себя средства отладки и справочные материалы (примеры кода, заметки и т.д.). SDK часто предоставляется непосредственно разработчиком целевой платформы и в нем учитываются её особенности. Распространятся (как и в случае с Android) такой инструментарий может бесплатно. Это помогает платформе обзаводиться разнообразными приложениями за счет сторонних разработчиков.

Ещё одним понятием, которое часто можно встретить, когда речь идет об инструментах разработки, является IDE (Integrateddevelopmentenvironment) – интегрированная среда разработки. Она представляет собой набор программных средств, призванный максимизировать производительность программиста за счет построения для него удобной и дружелюбной среды для процесса программирования. Этот сложный программный комплекс может включать в себя текстовый редактор (чаще всего с подсветкой синтаксиса и подсказками), компилятор или интерпретатор (иногда поддерживаются несколько языков), интегрированный отладчик и средства для автоматизации сборки. Часто поддерживаются возможности интеграции со сторонним программным обеспечением, например, средствами проектирования или контроля версий. Также чаще всего в IDE есть инструменты для быстрого построения и визуального редактирования графического интерфейса будущей программы, а также инструменты вроде диаграмм иерархии классов, браузера классов, инспектора объектов или менеджера ресурсов. Таким образом, интегрированная среда разработки призвана объединить различные инструменты в один программный комплекс для обеспечения удобства и повышения скорости разработки ПО. Хотя на деле можно и не использовать для программирования какую-либо IDE, предпочтя несвязные между собой инструменты.

Разработка приложений для платформы Android связана с группой инструментов, которые предоставляются набором Android SDK. Также понадобятся инструментарий для разработки приложений в Java SE (JDK) и интегрированная среда разработки. В качестве последней принято использовать Eclipse IDE, что будем делать и мы, хотя стоит отметить, что разработку приложений можно вести и с помощью простейшего текстового редактора или других IDE, а также вызывать инструменты с помощью скриптов или использования командной строки. Однако разработка в Eclipse является предпочтительным методом, потому что, во-первых, эта среда может напрямую обращаться к необходимым инструментам, а во-вторых, для неё существует специальный плагин, AndroidDevelopmentToolkit (ADT), который обеспечивает переход к созданию приложений под Android с помощью Eclipse IDE ещё более удобным образом.

В заключении отметим, что Android SDK требует JDK версии 5 или выше, а также Eclipse версии 3.3 или выше. На сайтах разработчиков доступны версии SDK, Java и Eclipse для операционных систем Windows, Linux и Mac OS, а в SDK входит эмулятор для каждой из них. Вообще говоря, приложения под Android выполняются в виртуальной машине, и выбор любой из существующих операционных систем не дает никаких преимуществ перед другими, так что можно работать с той, которая более удобна. Наши дальнейшие примеры будут рассмотрены для ОС Windows, но, если будет необходимость, мы рассмотрим и работу с Linux.

2.2 Установка JavaDevelopmentKit.

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

К этому программному комплексу относятся такие инструменты как JRE (JavaRuntimeEnvironment) и JDK (JavaDevelopmentKit). Первый инструмент представляет собой среду выполнения — минимальную реализацию виртуальной машины, в которой запускается и выполняется программный код на Java. Второй инструмент – это в свою очередь целый набор инструментов, комплект разработчика приложений на языке Java. На самом деле, JRE также входит в состав JDK, равно как и различные стандартные библиотеки классов Java, компилятор javac, документация, примеры кода и разнообразные служебные утилиты. Весь этот набор распространяется свободно и имеет версии для различных ОС,  поэтому любой может его скачать и использовать.

В JDK не входит интегрированная среда разработки, предполагается, что её разработчик будет устанавливать отдельно. Существуют многочисленные IDE для Java-разработки, например, NetBeans, IntelliJ IDEA, BorlandJBuilder и другие. Но мы оговорили ранее, что для разработки приложений под Android мы выберем Eclipse IDE. Для установки JDK, необходимо сначала загрузить её ссайта разработчика, выбрав нужную версию для своей операционной системы и архитектуры. Затем производится инсталляция данного программного обеспечения с параметрами по умолчанию, которые предлагаются мастером установки.

2.3 Установка Eclipse IDE.

Чтобы получить рабочий инструментарий для разработки приложений под Android – это загрузить и установить среду Eclipse. Скачать данную IDE можно с портала EclipseFoundation, сэтой странички. Как и другие необходимые нам инструменты, этот программный продукт свободно распространяется и его можно использовать на любой операционной системе.

А пока скачаем нужную нам версию и установим её. Достаточно будет версии «forJavadevelopers», но ничего страшного, если это будет более навороченная «for EE developers». Распакуем содержимое скачанного архива в любое удобное место на жестком диске. Например, на Windows можно распаковать прямо в корень системного диска (как это сделал я), на Linux – в каталог Home, на Mac OS – в Applications. Какая бы ОС не была выбрана, в каталоге Eclipse можно найти одноименный исполняемый файл (для Windows это eclipse.exe), запустив который, мы запустим данную IDE. Удобно вынести ярлык для этого файла на видное место.

При первом запуске IDE попросит указать рабочее пространство (workspace), это одна из концепций Eclipse. Рабочее пространство – это контейнер для проектов, имеющий свой собственный набор метаданных и установок (preferences). Например, у меня это будет C:/Android. После того как среда разработки загрузится, на главном экране нужно нажать значок Workbench — Gototheworkbench.

2.4 Установка Android SDK.

Для разработки приложений для платформы Android нам понадобится установить на компьютер Android SDK. Помимо прочих инструментов разработчика в него входит эмулятор нашей мобильной операционной системы, так что для программирования и отладки даже необязательно иметь под рукой устройство на базе Android. SDK имеется в свободном доступе, и скачать его можно с официального сайта — http://developer.android.com/sdk/index.html. Отсюда нужно загрузить версию SDK для своей операционной системы.

Например, для Windows предлагаются версии в виде архива zip и исполняемого файла exe. И в том, и в другом случае Android SDK представляет собой просто сжатую папку с файлами, содержимое которой будет распаковано в удобное нам место.

• Если вдруг во время распаковки архива (в случае с exe-файлом) появляются уведомления об отсутствии в системе установленного JDK (а он при этом установлен), то достаточно нажать кнопку Back (Назад) и снова попробовать, тогда всё станет корректно.

После проделанных действий мы пойдем в папку с распакованным контентом и почитаем “SDK Readme.txt”, в котором говорится о том, что данный архив содержит в себе только базовые инструментальные средства. Для полноценной разработки нам предстоит воспользоваться утилитой “SDK Manager”, которая позволяет устанавливать и модифицировать компоненты SDK, пользуясь репозиторием на сервере Google (да-да, понадобится соединение с Интернет).

Запустим исполняемый файл с названием SDK Manager. Здесь может возникнуть проблема с его работой. Если выдаются ошибки и приложение не запускается, то тут дело в переменной среды PATH, которая хранит в себе пути поиска для исполняемых файлов и используется различными программами и скриптами. Для корректной работы в этой переменной должен быть указан путь до каталога инструментов Android SDK, а также до каталога bin для JDK (в дальнейшем он нам понадобится).

Поэтому надо записать эти пути в переменную PATH. На примере Windows XP – щелкаем правой клавишей мыши на значке «Мой компьютер», выбираем вкладку «Дополнительно», «Переменные среды», отыскиваем среди переменных PATH, «Изменить». В поле «Значение переменной» в конце ставим «;», затем пишем путь до каталога tools в Android SDK, по умолчанию это «C:\ProgramFiles\Android\android-sdk\tools\», «;», а затем путь до bin, который лучше прописать так — «%JAVA_HOME%\bin\», в результате переменная PATH примет примерно такой вид:

C:\Program Files\Android\android-sdk\tools\;%JAVA_HOME%\bin\

Подтверждаем внесенные изменения. Теперь SDK Manager должен запуститься без проблем. После запуска программа соединится с репозиторием и в окне менеджера отобразится список доступных пакетов. В окошке AvailablePackages (доступные пакеты) выберем нужные пакеты, после чего нужно нажать InstallSelected (установить выбранное). После успешной установки мы будем иметь на компьютере полноценный боевой Android SDK и можем перейти к установке и настройке плагина для Eclipse.

• Если во время запуска установщика возникает ошибка, то нужно зайти в менюSDK Managerнавкладку Settingsитамснятьотметкуспункта  Force https://… sources to fetched using http://….

В дальнейшем этот процесс можно будет вызывать прямо из IDE Eclipse или с помощью командной строки Windows, давая команду tools\android.bat_update_sdk

2.5 Установка AndroidDevelopmentTools.

Плагин для Eclipse, AndroidDevelopmentTools (ADT), поможет писать приложения для Android. Он интегрируется с Eclipse IDE для того, чтобы обеспечить возможности создания, отладки и тестирования android-приложений.

Ход установки по шагам:

  1. Запускаем среду Eclipse.
  2. В меню выбираем элемент Help (Помощь), затем пункт InstallNewSoftware (Установить новую программу).
  3. В появившемся окне Install, в поле Workwith (Работать с) вводим адрес ресурса — https://dl-ssl.google.com/android/eclipse и жмем Enter. Если всё сделано правильно, то Eclipse соединится с ресурсом и загрузит оттуда список, который отобразится чуть ниже как запись DeveloperTools с несколькими подчиненными узлами.
  4. Если появляются ошибки вроде «unabletoreadrepositoryat…», то нужно в адресе ресурса вместо https использовать http.

  1. Выберем (отметим галочкой) узел DeveloperTools (также убедимся, что все подчиненные узлы также отмечены) и затем нажмем Next (Далее).
  2. Отобразится окно, в котором нужно подтвердить установку выбранных пакетов. Жмем Next (Далее). В следующем окне нам предлагается прочитать лицензионное соглашение по ADT и связанным с ним инструментам. Чтобы продолжить установку, необходимо его принять – выбираем пункт «I accept» (Я согласен) и жмем Next (Далее).

Теперь Eclipse автоматически загрузит и установит плагин ADT, а затем предложит перезапустить IDE. Это необходимо, чтобы плагин отобразился в Eclipse. 

  1. Перезапускаем Eclipse.

  1. Если до этого в Eclipse уже были установлены предыдущие версии ADT, то их можно обновить. Это делается через меню Help>CheckforUpdates (Помощь> Проверить наличие обновлений), а сам процесс не отличается от вышеприведенного.

2.6 Настройка AndroidDevelopmentTools

Данный шаг является последним, после него у нас на компьютере будет готовый инструментарий для создания приложений для платформы Android и использованием языка Java и среды Eclipse. На этом шаге мы настроим установленный плагин ADT, связав Eclipse с каталогом Android SDK.

Вот ход наших действий:

  1. Перезапустим Eclipse, если это ещё не сделано с предыдущих шагов.
  2. В меню выбираем элемент Window (Окно), пункт Preferences (Настройки).
  3. В появившемся диалоговом окне слева находим узел Android и выбираем его. Выскочит небольшое окошко, в котором нам предложат отправлять на сервер Google статистику использования Android SDK; разбираемся с этим вопросом согласно своим предпочтениям.

  1. В поле SDK Location укажем каталог, в котором у нас находится Android SDK. Для этого просто нажмем кнопку Browse и отыщем папку с SDK в дереве каталогов.
  2. Жмем кнопку Apply, а затем OK.

Готово, теперь плагин ADT настроен и наша среда Eclipse готова к работе. Плагин предоставляет доступ ко всем инструментам Android SDK внутри Eclipse. В частности, через пункт Window>Android SDK and AVD Manager мы можем получить доступ к менеджеру обновлений и управлять виртуальными устройствами. Также в среду теперь интегрирован мастер создания проектов Android и многое другое.

2.7 Пишем Android-приложение «Hello, World!»

В процессе разработки этого простого приложения мы рассмотрим различные аспекты, знание которых поможет немного освоиться в новом инструментарии.

Начнем.

  1. Запускаем Eclipse.
  2. Выбираем элемент меню File, пункт New и потом Project.
  3. Щелкаем на узле Android, раскрываем его и выбираем подпункт AndroidProject. Жмем Next.
  4. Появится окно, в нем нужно корректно заполнить поля:

Поле ProjectName предназначено для имени нашего проекта, впишем сюда «HelloWorld», хотя подойдет любое. В графе BuildTarget нужно указать, какая версия API будет использована в проекте. Принцип прост, нужно просто знать, какую функциональность мы будем использовать в нашей программе, и ставить минимальную версию API, которая позволит эту функциональность реализовать. В нашем случае выберем версию Android 1.5. В поле ApplicationName указывается название исполняемого файла приложения. Оставим “HelloWorld”, в дальнейшем можно будет переименовать. PackageName обозначает название пакета и сюда можно записать уникальное название нашего проекта среди всех программ для платформы Android. Хорошим тоном считается заполнение этого поля в нижнем регистре, а уникальности можно достигнуть, дописав сюда идентификатор разработчика. Около графы CreateActivity должна стоять галочка, а в поле нужно написать название для этого объекта. Оставим как есть («HelloWorldActivity»). В Min SDK Version (минимальная версия SDK) указывается для какой версии платформы создается приложение, то есть в каких устройствах оно будет поддерживаться. Оставим 3. Жмем кнопку Finish.

  1. Мы создали ядро для нашего проекта. Слева мы можем видеть окно PackageExplorer. Здесь отображаются все компоненты нашего приложения. Посмотрим на его состав.

Директория res содержит ресурсы нашего приложения. Внутри неё находятся следующие папки:

  • Drawable – содержит графические файлы, например, значки или растровые изображения.
  • Layout – содержит файлы в формате XML, представляющие собой макеты и представления приложения.
  • Values — содержит XML-файл strings, который является основным средством для поиска строк символов для нашего приложения.

В директории src находится пакет с исходным кодом для приложения. В частности здесь есть java-файл с названием, которое мы присвоили Activity. В нем содержится реализация класса основной операции приложения.

В директории gen находится файл R.java. Он создается ADT автоматически и в нем содержатся константы-идентификаторы, которые необходимы для доступа к различным ресурсам приложения. Так как он генерируется автоматически во время сборки, изменять его вручную бесполезно, потому что всё внесенное пропадет.

Также в PackageExplorer можно найти связанные библиотеки, среди которых присутствует android.jar, являющийся файлом runtime-класса Android, поставляемый в составе Android SDK.

Файл AndroidManifest.XML является дескриптором установки Android-приложения и содержит данные обо всех источниках информации, приемниках, операциях и фильтрах.

  1. Посмотрим файл main.xml, находящийся в папке res>layout. В нем содержится макет приложения, включающий элементы интерфейса (метки, текстовые окна и другие элементы). Дважды щелкнем на нём и посмотрим содержимое. Можно заметить, что используется линейный макет (LinearLayout), который располагает элементы в одну строку или столбец. Для нашего примера он подходит, хотя чаще всего придется вносить изменения.
  2. Редактируем файл strings.xml, который находится в папке res>values. В нем изменяем значение строки hello на «Hello, World!». Строку app_name оставим без изменений.

Первая строка в коде содержит название пакета, относящегося к java-файлу. Далее идет инструкция импорта комплекта ОС и функции, которая должна запускать наше приложение. Далее идет объявление класса HelloWorldActivity и внутри него расположен метод onCreate, срабатывающий при инициализации. Обычно внутри этого метода находится вызов функции setContentView, которая построит макет пользовательского интерфейса, определяемый параметром R.layout.main. Вообще, можно создавать несколько различных макетов интерфейса, если этого потребует архитектура приложения.

  1. Создадим эмулятор для запуска нашего приложения. Мы не рассматривали этот вопрос в предыдущих статьях и сейчас самое время уделить ему внимание. Если Вы уже проделали это на своем компьютере, то можете переходить к следующему пункту.

Для создания виртуального устройства нужно в меню Eclipse выбрать Window>Android SDK and AVD Manager, в появившемся окне, во вкладке VirtualDevices, нажать New. Появится диалог, в котором мы можем сконфигурировать виртуальное устройство, в котором будут запускаться разрабатываемые приложения. Здесь можно выставить любые настройки, например, разрешение экрана или объем SD-карты, как если бы мы работали с настоящим устройством. Обязательно нужно задать имя устройства (поле Name) и платформу, на которой оно будет работать (поле Target). После того как мы создадим конфигурацию, нажмем кнопку Create AVD.

  1. Далее запустим наше приложение в эмуляторе. Выбираем в меню Eclipse пункт Run>Run (или щелкаем значок со стрелочкой в панели или пользуемся комбинацией клавиш Ctrl+F11). Понадобится указать тип запускаемого проекта, выбираем AndroidApplication и жмем OK. Если все шаги выше проделаны корректно, то вскоре мы увидим что-то подобное:

Эмулятор загружается в отдельном окне и процесс его старта на слабых машинах может быть довольно долгим. Когда он запустится, может появиться уведомление о том, что для разблокировки нужно нажать кнопку Menu под экраном аппарата.

Всё, что происходит во время процесса запуска приложения, отображается в окне Console в нижней части экрана в Eclipse. Если что-то пойдет не так, там появятся предупреждения и советы по возможному решению возникшей проблемы. Также информация об ошибках содержится в окне Problems.

В меню Run>RunConfigurations можно более тонко настроить поведение нашего инструментария во время запуска создаваемых приложений.

РазделIII

Приложения позволяющие производить электронный обмен данными

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

  1. Общение между сотрудниками,
  2. Использование общего файлового сервера
  3. Моментальное обновление баз данных и др.

Для осуществления эффективной работы с электронным обменном данных с использование мобильных устройств нужно выделить несколько категорий полезных программ:

  1. Программы для работы с документами – сюда входят программы позволяющие оперативно читать документы современных форматов(DOC, DOCX, TXT, XLS, XLSX, CSV, PPT, PPTX, PPS, PPSX,PDF)
  2. Программы для осуществления оперативной связи(быстрые сообщения, аудио и видео –конференции, передача файлов.)
  3. Программы удаленного доступа, позволяющие с мобильного устройства использовать весь потенциал ПК подключенного к сети интернет.

Рассмотрим некоторые из них, и представим каким должно быть мобильное приложение, которое сочетало бы все перечисленные аспекты электронного документооборота.

Программы для работы с документами

На данный момент самой продвинутой программой для работы с документами является программаOfficeSuiteProот компанииMobiSystems, которая разрабатывает приложения для всех видов мобильных операционных систем.

OfficeSuiteViewer является наиболее полным приложение для просмотра документов для Androidпозволяющие открыть DOC, DOCX, TXT, XLS, XLSX, CSV, PPT, PPTX, PPS, PPSX и PDF-файлов и вложений.

В связи с тем что при электронном документообороте часто используются различные базы данных, стоит рассмотреть такие программы –AndSQLite и SQLiteEditor.Данные программы позволяют редактировать БДSQL, но к сожалению на данном этапе не одна из них не имеет возможности подключения к удаленной БД.

Для получения доступа к удаленной базе данных существует программаMySQLConnector,но на данном этапе для Androidустройств эта программа находится в процессе доработки.

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

Программы для осуществления оперативной связи

Для быстрого обмена сообщениями используются IM(Instantmessagingили система мгновенного обмена сообщениями)и мультипротокольные клиенты

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

В данной среде лидирующими являютсяIM+ иJasmineIM

IM+All-in-OneMobileMessenger - Мультипротокольный клиент обмена мгновенными сообщениямиот компанииSHAPEServises

IM+ поддерживает все популярные сервисы обмена мгновенными сообщениями:Facebook,Skype,ICQ, ВКонтакте,Mail.Ru Агент, Я.Онлайн (Яндекс.Чат),MSN/LiveMessenger,GoogleTalk,Yahoo!,AIM/iChat,MySpace иJabber.

Такжевэтукатегориюпопадаютпочтовыеклиентынеобходимыедляоперативнойработысэлектроннойпочтой,илидирующейпрограммойсрединихявляетсяAquaMail,вданныймоментработаетс: Gmail, Yandex, Rambler, QIP.ru/Front.ru/etc., Mail.ru, tut.by, Hotmail/Live, Yahoo, gmx.com, Exchangeчерез IMAPиDavMail, Lotus Notesчерез IMAP,итакдалее.

Программы удаленного доступа

Существует множество программ для осуществления удаленного доступа с мобильного устройства к любому устройству подключенному к сети интернет.

Такими программами являютсяSplashtopRemoteDesktopиTeamViewer

TeamViewer обеспечивает простой, быстрый и безопасный доступ к ПК и Mac, помощью TeamViewerAppforAndroidвозможно получать доступ к удаленным компьютерам. Это программное обеспечение позволит оказывать поддержку или обеспечить постоянный доступ к компьютерам с удалённым обслуживанием.

Возможности:

  1. Легко осуществлять поддержку компьютеров клиентов и коллег;
  2. Получить доступ к офисному компьютеру со всеми документами и установленными приложениями;
  3. Осуществлять удалённое администрирование компьютеров с удалённым обслуживанием (например серверов).

Подводя итог всему вышесказанному можно с уверенностью сказать, что когда все эти программы будут объединены в одну, получится идеальная среда для максимально удобного управления документооборотом.

Заключение

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

Список использованной литературы

  1. GoogleAndroid программирование для мобильных устройств (Голощапов А.Л., 2011, BHV Санкт-Петербург)
  2. Разработка приложений для Android (С. Хашими, С. Коматинени, Д. Маклинr, 2011)
  3. Android 2. Программирование приложений для планшетных компьютеров и смартфонов (Рето Майер, Эксмо, 2011)
  4. Больше книг обAndroid -http://4pda.ru/forum/index.php?showtopic=159318
  5. Блог посвященныйAndroid -http://android-zone.info
  6. Блог разработчикаAndroid -http://androidengineer.ru/

Разработка программного обеспечения для платформы Android на http://mirrorref.ru


Похожие рефераты, которые будут Вам интерестны.

1. Разработка программного обеспечения для android устройства

2. Разработка информационно-справочной системы для мобильной платформы Android

3. РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ АС

4. Разработка программных модулей программного обеспечения компьютерных систем

5. Разработка программного обеспечения систем контроля и управления технологическими процессами

6. Разработка автоматических тестов для тестирования новой функциональности программного обеспечения

7. Разработка автоматизированной системы расчета себестоимости и длительности разработки программного обеспечения

8. Разработка фрагмента специального математического и программного обеспечения передачи данных на основе протоколаTCP.IP

9. Разработка конечного набора тестов для проверки корректной работы программного обеспечения IP-телефонов

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