View
2.043
Download
1
Embed Size (px)
DESCRIPTION
Citation preview
Игорь МаханёкSoftware Engineer, Google Switzerland
Android - новые мобильные рынкиначиная с одного телефона
1
00
500,000,000
1,000,000,000
1,500,000,000
2,000,000,000
2,500,000,000
3,000,000,000
3,500,000,000
2000 2001 2002 2003 2004 2005 2006 2007
Пользователи интернета (PC) Пользователи мобильных телефонов
Source: International Telecommunication Union
Почему мобильные телефоны важны?
В мире у ~3 миллиардов людей есть мобильный телефон. Более 1 миллиарда телефонов продано в 2007 году.
Урок истории
Как оно было...
Разработка приложений Google
С чем мы столкнулись
• Миллиарды владельцев телефонов, при отсутствии доступа к информации
• Неудобные инструменты для мобильной разработки
• Ограниченные возможности телефонов
• Мобильные браузеры, далёкие от удобства «обычных»
• Сложный процесс доставки приложений пользователям
Android
Сотовые операторы
Производители комплектующих
Коммерциализация
Программное обеспечение
Производители телефонов
Что такое Android?
• Программная платформа на базе ОС Linux, включающая все уровни от операционной системы и сервисов до приложений –всё, что необходимо для создания телефона.
• Открытый исходный код, дающий широкие возможности по доработке, подгонке и коммерциализации
• Мобильно-центричный подход, оптимизированный для встроенных платформ, постоянно включённых и ограниченных в ресурсах.
• Богатые и удобные API, позволяющие разрабатывать очень специализированные мобильные приложения, использующие все возможности телефона
Application FrameworkViewView
System System ViewView
System System Content ProvidersContent ProvidersContent ProvidersContent Providers
Resource Resource ManagerManagerResource Resource ManagerManager XMPP ServiceXMPP ServiceXMPP ServiceXMPP Service
Activity ManagerActivity ManagerActivity ManagerActivity Manager
Package ManagerPackage ManagerPackage ManagerPackage Manager
WindowWindowManager Manager WindowWindow
Manager Manager NotificationNotificationManager Manager
NotificationNotificationManager Manager
LocationLocationManager Manager LocationLocationManager Manager
TelephonyTelephonyManagerManager
TelephonyTelephonyManagerManager
Linux Kernel
Display DriverDisplay DriverDisplay DriverDisplay Driver Camera DriverCamera DriverCamera DriverCamera Driver Bluetooth DriverBluetooth DriverBluetooth DriverBluetooth Driver Flash MemoryFlash Memory DriverDriver
Flash MemoryFlash Memory DriverDriver
Binder (IPC) Binder (IPC) DriverDriver
Binder (IPC) Binder (IPC) DriverDriver
PowerPowerManagementManagement
PowerPowerManagementManagementUSB DriverUSB DriverUSB DriverUSB Driver Keypad DriverKeypad DriverKeypad DriverKeypad Driver WiFi DriverWiFi DriverWiFi DriverWiFi Driver AudioAudio
DriversDriversAudioAudio
DriversDrivers
Android Platform
ApplicationsHomeHomeHomeHome DialerDialerDialerDialer
ContactsContactsContactsContacts
SMS/MMSSMS/MMSSMS/MMSSMS/MMS
EmailEmailEmailEmail
IMIMIMIM
CalendarCalendarCalendarCalendar
BrowserBrowserBrowserBrowser
Media Media PlayerPlayerMedia Media PlayerPlayer AlbumsAlbumsAlbumsAlbums
CameraCameraCameraCamera
ClockClockClockClock
CalculatorCalculatorCalculatorCalculator
…………Voice DialVoice DialVoice DialVoice Dial
AlarmAlarmAlarmAlarm
Архитектура
Android Runtime
Dalvik Virtual MachineDalvik Virtual MachineDalvik Virtual MachineDalvik Virtual Machine
Core LibrariesCore LibrariesCore LibrariesCore Libraries
Libraries
FreeTypeFreeTypeFreeTypeFreeType
SGLSGLSGLSGL SSLSSLSSLSSL
SQLiteSQLiteSQLiteSQLite
LibWebCoreLibWebCoreLibWebCoreLibWebCore
LibcLibcLibcLibc
Surface ManagerSurface ManagerSurface ManagerSurface Manager
OpenGL|ESOpenGL|ESOpenGL|ESOpenGL|ES
Media FrameworkMedia FrameworkMedia FrameworkMedia Framework
Linux Kernel
• Уровень между программным обеспечением и оборудованием
• Обеспечение межпроцессорной и системной безопасности
• Менеджмент памяти
• Менеджмент процессов
• Сетевой стэк
• Драйверы
Библиотеки
• Библиотеки C/C++ доступны разработчикам через Application Framework
• Медиабиблиотеки на базе PacketVideo OpenCORE
• 2D (SGL Library) и 3D (OpenGL ES) движки
• Шифрование на базе OpenSSL
• Движок реляционных баз данных
Виртуальная машина Dalvik
Собственная виртуальная машина Android Обеспечивает переносимость приложений и предсказуемость поведения
Приложения в оптимизированном формате (.dex) и байт-коде Dalvik
Программы на Java .class / .jar компилируются в .dex
Дизайн для встроенных систем Поддерживает множество процессов виртуальной машины
Высокооптимизированный интерпретатор байт-кода
Эффективное использование памяти
Ключевые библиотеки Android
Основные API на Java предоставляют простую в использовании, привычную, полноценную платформу с широкими возможностями
Структуры данных
Доступ к файлам
Доступ к сети
Графика
Вспомогательные функции
…
Application Framework
• Набор сервисов для использования в приложениях Гео-сервисы, Bluetooth, оконный менеджер, другие
• Контент-провайдеры для доступа к данным
• Богатая и расширяемая система Views – Lists, Grids, Maps, Embeddable Web Browser
• Разработчики имеют полный доступ к тем же API, которые используют базовые приложения
Приложения
• В базовую поставку входят приложения:
• Все базовые приложения написаны на Java, используют те же API, которые доступны в SDK
• Calculator
• Notes
• Settings
• Voice Dial
• Phone-top Search
• Media Player
• Browser
• Camera
• Photo Album
• World Clock
• Home
• Dialer
• Contacts
• SMS/MMS
• Calendar
Открытость
• Никто не контролирует платформу
• Открыто для операторов
• Открыто для производителей
• Открыто для разработчиков
• Открыто для пользователей
Катализаторы изменений
• Возможности устройств (UI, производительность, и т.д.)
• Сети 3G и удобные тарифные планы
• Полноценный веб-браузер
• Программные платформы, удобные пользователям
• Программные платформы, удобные разработчикам
телефоны – маленькие компьютеры
18
Приложения
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
Успех приложений
• Распространение в руках разработчиков
• Market
• Возможности монетизации
• Конкурс для разработчиков
Веб-сервисы
• Новые пользователи
• Многие сервисы особо полезны в пути
0
0.5
1
1.5
2
2.5
3
3.5
млрд
Интернет на PC Мобильныетелефоны
Веб и телефон
• Настоящий веб – и веб 2.0 в движении
• Веб-браузер – тоже приложение
Веб-браузер
Это возможно!
• Интернет вне дома и офиса
• Новые пользователи
• Новые типы вебсервисов
Первый телефон сейчас.
И это только начало...
?????? ???? ????????
??????
??
Сколько гаджетов завтра?
Заключение
глобальные изменения
Вопросы
Android - новые мобильные рынкиначиная с одного телефона
Игорь МаханёкSoftware Engineer, Google Switzerland