Введение в программирование для Android

Кирилл Корняков, Itseez
Март 2013

Содержание

  1. Введение
    • Общая информация
    • История и экосистема Android
    • Архитектура Android
  2. Разработка для Android
    • Инструменты разработки
    • Архитектура Android приложений
    • Разработка native (С++) приложений
    • Техники оптимизации производительности
  3. Демонстрация
  4. Заключение
    • Преимущества и недостатки

Общая информация

История Android

Экосистема Android

Life of a Patch

http://source.android.com/source/life-of-a-patch.html

http://source.android.com/source/life-of-a-patch.html

Архитектура Android OS

http://en.wikipedia.org/wiki/Android_(operating_system)

http://en.wikipedia.org/wiki/Android_(operating_system)

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

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

http://developer.android.com/tools/workflow/index.html

http://developer.android.com/tools/workflow/index.html

Основные понятия

Архитектура Android приложений

Жизненный цикл Activity

http://developer.android.com/reference/android/app/Activity.html

http://developer.android.com/reference/android/app/Activity.html

Демонстрация: С чего начать

  1. Установить Android SDK
    • Android SDK Manager
    • Android Virtual Device Manager (create device)
    • Dalvik Debug Monitor - DDMS
  2. Прочесть "Application Fundamentals"
  3. Пройти "Hello-world" урок
  4. Изучить SDK сэмплы

Демонстрация: Android Debug Bridge - adb

> adb devices
> adb logcat
> 
> adb shell
> adb shell ls -l /mnt/sdcard
> adb shell "cd /data/bin/kir_perf/ && ls" 
> 
> adb push ./build/opencv_demo /data/bin/opencv_demo/opencv_demo
> adb pull /data/bin/opencv_demo/output.txt ./output.txt
>
> adb install OpenCV_for_Tegra_Demo.apk
> adb shell pm list packages -f
> adb uninstall org.opencv.imgdemo
> 
> aapt d badging OpenCV_for_Tegra_Demo.apk 
> adb shell am start -a android.intent.action.MAIN -n org.opencv.imgdemo/.WelcomeActivity
> adb shell input text "some text" 
> adb shell input keyevent 4

Демонстрация: Продолжение

  1. Зарегистрироваться на сайте NVIDIA Dev Zone и вступить в программу для разработчиков.
  2. Скачать и поставить TADP:
    1. Изучить TADP сэмплы
    2. Изучить OpenCV сэмплы

Демонстрация: Продолжение

Разработка native (С++) приложений

Техники оптимизации производительности

Заключение: Преимущества

Заключение: Недостатки

Спасибо за внимание!

Вопросы?

Ссылки

  1. http://developer.android.com
  2. Разработка Android http://source.android.com
  3. Проекты android на GitHub
  4. docs.opencv.org: Introduction into Android Development