SlideShare a Scribd company logo
1 of 20
Download to read offline
Старый Android
на новый лад
Олег Годовых
16 ноября 2012. Омск
Прогресс не стоит на месте!
19 октября 2011 года —
выпущена Android 4.0
Ice Cream Sandwich.
Прогресс не стоит на месте.
● 500 миллионов устройств
● 1.3 миллиона активаций в день
● Выпущено 14 версий системы
Прогресс не стоит на месте?
● ⅔ рынка
находятся на
устаревших
версиях Android
Они не получат апдейт до 4.0.
Кто же поможет обладателям
старых устройств?
Кто же поможет обладателям
старых устройств?
Способ борьбы с Android 2.x #1
● Использование Android Support Library
● Поддержка фрагментов, ViewPager,
других мелких фич.
● Вполне официальна, выпускается Google.
● Одна кодовая база
● Стоимость поддержки Android 2.x → 0
Способ борьбы с Android 2.x #1
● Использование Android Support Library
● Есть только то, что
официально
портировано Google.
● Сложно добавить
что-либо своё
или расширить.
Способ борьбы с Android 2.x #2
● Использование сторонних библиотек
(ActionBarSherlock, GreenDroid, etc.)
● Доступны фишки, ещё не
бэкпортированные в Support Library
● Развиваются активнее
● Не надо ждать релиза API
Способ борьбы с Android 2.x #2
● Использование сторонних библиотек
(ActionBarSherlock, GreenDroid, etc.)
● Выше уровень наколенности,
больше костылей
● Не успевает за оригинальной
реализацией
● Неполное соответствие
оригиналу
Способ борьбы с Android 2.x #3
● Ручное портирование изменений
● http://www.grepcode.com в руки!
● Мы контролируем абсолютно всё.
● Реализуем только то подмножество
функциональности, что нас интересует.
● Можем идти на разумные сделки с
совестью (//UGLYHACK)
Способ борьбы с Android 2.x #3
● Ручное портирование изменений
● Костыли, тысячи их.
● Стоимость
решения ↑
● Велики объёмы кода.
● Не всё легко
переносится
Способ борьбы с Android 2.x #3.1
● Ручное портирование изменений в
прошивку
● Хорошо, если нас зовут Samsung.
● Ну или на худой конец — МТС.
● Или, в крайнем случае, мы можем жёстко
ограничить набор поддерживаемых
устройств.
Способ борьбы с Android 2.x #3.1
● Ручное портирование изменений в
прошивку
● Иначе — плохо.
● C++, ручная работа с
памятью, happy debug.
● Сложно расшарить
артефакты проекта
Способ борьбы с Android 2.x #4
● Разные версии приложений
● Сможем использовать возможности 4.x по
максимуму.
● Стоимость разработки x2.
● Пользователям Android 2.x
УЖЕ ДО НАС не повезло.
Способ борьбы с Android 2.x #5
● Не разрабатывать под Android 2.x
● Хорошо, если у нас аудитория —
хипстеры (на самом деле — нет, у них
iPhone).
● Или мы ориентируемся
на технологии, которых
физически нет в Android 2.x
● Терять 67% рынка — нет пути
Способ борьбы с Android 2.x #6
● Использовать HTML5.
● Открывается всё в браузере!
● Пишется JavaScript-ом.
● Работает даже не на Android.
● Благодать!
Способ борьбы с Android 2.x #6
● Использовать HTML5.
● НЕТ!
● НИ ЗА ЧТО!!!
● УБЕРИТЕ ЭТО!
● DO NOT WANT!
Спасибо за внимание!

More Related Content

Viewers also liked

Проходим тест Джоэла
Проходим тест ДжоэлаПроходим тест Джоэла
Проходим тест Джоэла0leGG
 
Профессии в IT
Профессии в ITПрофессии в IT
Профессии в IT0leGG
 
Find my shiny metal droid
Find my shiny metal droidFind my shiny metal droid
Find my shiny metal droid0leGG
 
Многопоточность
МногопоточностьМногопоточность
Многопоточность0leGG
 
I nacol coursestandards_2011
I nacol coursestandards_2011I nacol coursestandards_2011
I nacol coursestandards_2011Nelly Kamel
 
ЦУГАЭТ позвонит
ЦУГАЭТ позвонитЦУГАЭТ позвонит
ЦУГАЭТ позвонит0leGG
 
Проекты летней школы
Проекты летней школыПроекты летней школы
Проекты летней школы0leGG
 
Как писать под Android программы, а не код
Как писать под Android программы, а не кодКак писать под Android программы, а не код
Как писать под Android программы, а не код0leGG
 
The_Lecture_Presentation
The_Lecture_PresentationThe_Lecture_Presentation
The_Lecture_PresentationNelly Kamel
 
Как завести трактор
Как завести тракторКак завести трактор
Как завести трактор0leGG
 
E learning fundanemtals and standards
E learning fundanemtals and standardsE learning fundanemtals and standards
E learning fundanemtals and standardsNelly Kamel
 
Как учёба в университете и олимпиадное программирование не сделали мою жизнь ...
Как учёба в университете и олимпиадное программирование не сделали мою жизнь ...Как учёба в университете и олимпиадное программирование не сделали мою жизнь ...
Как учёба в университете и олимпиадное программирование не сделали мою жизнь ...0leGG
 
10 способов облажаться на презентации
10 способов облажаться на презентации10 способов облажаться на презентации
10 способов облажаться на презентации0leGG
 

Viewers also liked (17)

Проходим тест Джоэла
Проходим тест ДжоэлаПроходим тест Джоэла
Проходим тест Джоэла
 
Профессии в IT
Профессии в ITПрофессии в IT
Профессии в IT
 
Implementaion
ImplementaionImplementaion
Implementaion
 
Find my shiny metal droid
Find my shiny metal droidFind my shiny metal droid
Find my shiny metal droid
 
Многопоточность
МногопоточностьМногопоточность
Многопоточность
 
I nacol coursestandards_2011
I nacol coursestandards_2011I nacol coursestandards_2011
I nacol coursestandards_2011
 
Development
DevelopmentDevelopment
Development
 
ЦУГАЭТ позвонит
ЦУГАЭТ позвонитЦУГАЭТ позвонит
ЦУГАЭТ позвонит
 
Проекты летней школы
Проекты летней школыПроекты летней школы
Проекты летней школы
 
Implementaion
ImplementaionImplementaion
Implementaion
 
Как писать под Android программы, а не код
Как писать под Android программы, а не кодКак писать под Android программы, а не код
Как писать под Android программы, а не код
 
The_Lecture_Presentation
The_Lecture_PresentationThe_Lecture_Presentation
The_Lecture_Presentation
 
Как завести трактор
Как завести тракторКак завести трактор
Как завести трактор
 
Evaluation
EvaluationEvaluation
Evaluation
 
E learning fundanemtals and standards
E learning fundanemtals and standardsE learning fundanemtals and standards
E learning fundanemtals and standards
 
Как учёба в университете и олимпиадное программирование не сделали мою жизнь ...
Как учёба в университете и олимпиадное программирование не сделали мою жизнь ...Как учёба в университете и олимпиадное программирование не сделали мою жизнь ...
Как учёба в университете и олимпиадное программирование не сделали мою жизнь ...
 
10 способов облажаться на презентации
10 способов облажаться на презентации10 способов облажаться на презентации
10 способов облажаться на презентации
 

Similar to Старый Android на новый лад

{HSE Inc} Разработка под Android
{HSE Inc} Разработка под Android{HSE Inc} Разработка под Android
{HSE Inc} Разработка под AndroidPavel Krivoruchko
 
Создай свое первое Android приложение.
Создай свое первое Android приложение. Создай свое первое Android приложение.
Создай свое первое Android приложение. Kuban Dzhakipov
 
Мобильная разработка для олдскульных программистов
Мобильная разработка для олдскульных программистовМобильная разработка для олдскульных программистов
Мобильная разработка для олдскульных программистовAnton Karpenko (KARPOLAN)
 
Приступаем к разработке Android приложений
Приступаем к разработке Android приложенийПриступаем к разработке Android приложений
Приступаем к разработке Android приложенийmetaform
 
Mobile testing. Tips and tricks
Mobile testing. Tips and tricksMobile testing. Tips and tricks
Mobile testing. Tips and tricksSQALab
 
Go в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
Go в продакшене Яндекса: отчёт после года использования — Вячеслав БахмутовGo в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
Go в продакшене Яндекса: отчёт после года использования — Вячеслав БахмутовYandex
 
Android: Как создать свое первое приложение?
Android: Как создать свое первое приложение?Android: Как создать свое первое приложение?
Android: Как создать свое первое приложение?Kuban Dzhakipov
 
Лайфхаки ручного тестирования на мобилках
Лайфхаки ручного тестирования на мобилкахЛайфхаки ручного тестирования на мобилках
Лайфхаки ручного тестирования на мобилкахSQALab
 
«Лайфхаки ручного тестирования на мобилках» — Юлия Горлова, 2ГИС
«Лайфхаки ручного тестирования на мобилках» — Юлия Горлова, 2ГИС«Лайфхаки ручного тестирования на мобилках» — Юлия Горлова, 2ГИС
«Лайфхаки ручного тестирования на мобилках» — Юлия Горлова, 2ГИСDevDay
 
Rust - GDG DevFest Siberia 2016
Rust - GDG DevFest Siberia 2016Rust - GDG DevFest Siberia 2016
Rust - GDG DevFest Siberia 2016Nikita Baksalyar
 
Unity: "Очевидное-невероятное” или хитрости разработки на Unity Android
Unity: "Очевидное-невероятное” или хитрости разработки на Unity AndroidUnity: "Очевидное-невероятное” или хитрости разработки на Unity Android
Unity: "Очевидное-невероятное” или хитрости разработки на Unity AndroidDevGAMM Conference
 
Разработка под Android для устройств разных разрешений и размеров
Разработка под Android для устройств разных разрешений и размеровРазработка под Android для устройств разных разрешений и размеров
Разработка под Android для устройств разных разрешений и размеровAlexey Ustenko
 
Разработка мобильных приложений под Android на примере детских мобильных прил...
Разработка мобильных приложений под Android на примере детских мобильных прил...Разработка мобильных приложений под Android на примере детских мобильных прил...
Разработка мобильных приложений под Android на примере детских мобильных прил...tabtabus
 
Доклад Android apps на Minsk Android Meetup
Доклад Android apps на Minsk Android MeetupДоклад Android apps на Minsk Android Meetup
Доклад Android apps на Minsk Android MeetupMeetup.by
 
[Mobile Meetup] От 1' до 100' дюймов. Разработка под все категории устройств.
[Mobile Meetup] От 1' до 100' дюймов. Разработка под все категории устройств.[Mobile Meetup] От 1' до 100' дюймов. Разработка под все категории устройств.
[Mobile Meetup] От 1' до 100' дюймов. Разработка под все категории устройств.Pavel Krivoruchko
 
Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...
Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...
Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...DevGAMM Conference
 
Каталог регистраторов для видеонаблюдения Grizzly, сентябрь 2012
Каталог регистраторов для видеонаблюдения Grizzly, сентябрь 2012Каталог регистраторов для видеонаблюдения Grizzly, сентябрь 2012
Каталог регистраторов для видеонаблюдения Grizzly, сентябрь 2012Natalia Po
 
#4 "Особенности разработки кросс-браузерных расширений" Сергей Рашитов
#4 "Особенности разработки кросс-браузерных расширений" Сергей Рашитов#4 "Особенности разработки кросс-браузерных расширений" Сергей Рашитов
#4 "Особенности разработки кросс-браузерных расширений" Сергей РашитовJSib
 
Code Sharing - Как мы пришли к Unity Package Manager / Станислав Коротаев (Ba...
Code Sharing - Как мы пришли к Unity Package Manager / Станислав Коротаев (Ba...Code Sharing - Как мы пришли к Unity Package Manager / Станислав Коротаев (Ba...
Code Sharing - Как мы пришли к Unity Package Manager / Станислав Коротаев (Ba...DevGAMM Conference
 

Similar to Старый Android на новый лад (20)

Kranonit s16 (python). sergey burma
Kranonit s16 (python). sergey burmaKranonit s16 (python). sergey burma
Kranonit s16 (python). sergey burma
 
{HSE Inc} Разработка под Android
{HSE Inc} Разработка под Android{HSE Inc} Разработка под Android
{HSE Inc} Разработка под Android
 
Создай свое первое Android приложение.
Создай свое первое Android приложение. Создай свое первое Android приложение.
Создай свое первое Android приложение.
 
Мобильная разработка для олдскульных программистов
Мобильная разработка для олдскульных программистовМобильная разработка для олдскульных программистов
Мобильная разработка для олдскульных программистов
 
Приступаем к разработке Android приложений
Приступаем к разработке Android приложенийПриступаем к разработке Android приложений
Приступаем к разработке Android приложений
 
Mobile testing. Tips and tricks
Mobile testing. Tips and tricksMobile testing. Tips and tricks
Mobile testing. Tips and tricks
 
Go в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
Go в продакшене Яндекса: отчёт после года использования — Вячеслав БахмутовGo в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
Go в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
 
Android: Как создать свое первое приложение?
Android: Как создать свое первое приложение?Android: Как создать свое первое приложение?
Android: Как создать свое первое приложение?
 
Лайфхаки ручного тестирования на мобилках
Лайфхаки ручного тестирования на мобилкахЛайфхаки ручного тестирования на мобилках
Лайфхаки ручного тестирования на мобилках
 
«Лайфхаки ручного тестирования на мобилках» — Юлия Горлова, 2ГИС
«Лайфхаки ручного тестирования на мобилках» — Юлия Горлова, 2ГИС«Лайфхаки ручного тестирования на мобилках» — Юлия Горлова, 2ГИС
«Лайфхаки ручного тестирования на мобилках» — Юлия Горлова, 2ГИС
 
Rust - GDG DevFest Siberia 2016
Rust - GDG DevFest Siberia 2016Rust - GDG DevFest Siberia 2016
Rust - GDG DevFest Siberia 2016
 
Unity: "Очевидное-невероятное” или хитрости разработки на Unity Android
Unity: "Очевидное-невероятное” или хитрости разработки на Unity AndroidUnity: "Очевидное-невероятное” или хитрости разработки на Unity Android
Unity: "Очевидное-невероятное” или хитрости разработки на Unity Android
 
Разработка под Android для устройств разных разрешений и размеров
Разработка под Android для устройств разных разрешений и размеровРазработка под Android для устройств разных разрешений и размеров
Разработка под Android для устройств разных разрешений и размеров
 
Разработка мобильных приложений под Android на примере детских мобильных прил...
Разработка мобильных приложений под Android на примере детских мобильных прил...Разработка мобильных приложений под Android на примере детских мобильных прил...
Разработка мобильных приложений под Android на примере детских мобильных прил...
 
Доклад Android apps на Minsk Android Meetup
Доклад Android apps на Minsk Android MeetupДоклад Android apps на Minsk Android Meetup
Доклад Android apps на Minsk Android Meetup
 
[Mobile Meetup] От 1' до 100' дюймов. Разработка под все категории устройств.
[Mobile Meetup] От 1' до 100' дюймов. Разработка под все категории устройств.[Mobile Meetup] От 1' до 100' дюймов. Разработка под все категории устройств.
[Mobile Meetup] От 1' до 100' дюймов. Разработка под все категории устройств.
 
Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...
Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...
Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...
 
Каталог регистраторов для видеонаблюдения Grizzly, сентябрь 2012
Каталог регистраторов для видеонаблюдения Grizzly, сентябрь 2012Каталог регистраторов для видеонаблюдения Grizzly, сентябрь 2012
Каталог регистраторов для видеонаблюдения Grizzly, сентябрь 2012
 
#4 "Особенности разработки кросс-браузерных расширений" Сергей Рашитов
#4 "Особенности разработки кросс-браузерных расширений" Сергей Рашитов#4 "Особенности разработки кросс-браузерных расширений" Сергей Рашитов
#4 "Особенности разработки кросс-браузерных расширений" Сергей Рашитов
 
Code Sharing - Как мы пришли к Unity Package Manager / Станислав Коротаев (Ba...
Code Sharing - Как мы пришли к Unity Package Manager / Станислав Коротаев (Ba...Code Sharing - Как мы пришли к Unity Package Manager / Станислав Коротаев (Ba...
Code Sharing - Как мы пришли к Unity Package Manager / Станислав Коротаев (Ba...
 

Старый Android на новый лад

  • 1. Старый Android на новый лад Олег Годовых 16 ноября 2012. Омск
  • 2. Прогресс не стоит на месте! 19 октября 2011 года — выпущена Android 4.0 Ice Cream Sandwich.
  • 3. Прогресс не стоит на месте. ● 500 миллионов устройств ● 1.3 миллиона активаций в день ● Выпущено 14 версий системы
  • 4. Прогресс не стоит на месте? ● ⅔ рынка находятся на устаревших версиях Android
  • 5. Они не получат апдейт до 4.0.
  • 6. Кто же поможет обладателям старых устройств?
  • 7. Кто же поможет обладателям старых устройств?
  • 8. Способ борьбы с Android 2.x #1 ● Использование Android Support Library ● Поддержка фрагментов, ViewPager, других мелких фич. ● Вполне официальна, выпускается Google. ● Одна кодовая база ● Стоимость поддержки Android 2.x → 0
  • 9. Способ борьбы с Android 2.x #1 ● Использование Android Support Library ● Есть только то, что официально портировано Google. ● Сложно добавить что-либо своё или расширить.
  • 10. Способ борьбы с Android 2.x #2 ● Использование сторонних библиотек (ActionBarSherlock, GreenDroid, etc.) ● Доступны фишки, ещё не бэкпортированные в Support Library ● Развиваются активнее ● Не надо ждать релиза API
  • 11. Способ борьбы с Android 2.x #2 ● Использование сторонних библиотек (ActionBarSherlock, GreenDroid, etc.) ● Выше уровень наколенности, больше костылей ● Не успевает за оригинальной реализацией ● Неполное соответствие оригиналу
  • 12. Способ борьбы с Android 2.x #3 ● Ручное портирование изменений ● http://www.grepcode.com в руки! ● Мы контролируем абсолютно всё. ● Реализуем только то подмножество функциональности, что нас интересует. ● Можем идти на разумные сделки с совестью (//UGLYHACK)
  • 13. Способ борьбы с Android 2.x #3 ● Ручное портирование изменений ● Костыли, тысячи их. ● Стоимость решения ↑ ● Велики объёмы кода. ● Не всё легко переносится
  • 14. Способ борьбы с Android 2.x #3.1 ● Ручное портирование изменений в прошивку ● Хорошо, если нас зовут Samsung. ● Ну или на худой конец — МТС. ● Или, в крайнем случае, мы можем жёстко ограничить набор поддерживаемых устройств.
  • 15. Способ борьбы с Android 2.x #3.1 ● Ручное портирование изменений в прошивку ● Иначе — плохо. ● C++, ручная работа с памятью, happy debug. ● Сложно расшарить артефакты проекта
  • 16. Способ борьбы с Android 2.x #4 ● Разные версии приложений ● Сможем использовать возможности 4.x по максимуму. ● Стоимость разработки x2. ● Пользователям Android 2.x УЖЕ ДО НАС не повезло.
  • 17. Способ борьбы с Android 2.x #5 ● Не разрабатывать под Android 2.x ● Хорошо, если у нас аудитория — хипстеры (на самом деле — нет, у них iPhone). ● Или мы ориентируемся на технологии, которых физически нет в Android 2.x ● Терять 67% рынка — нет пути
  • 18. Способ борьбы с Android 2.x #6 ● Использовать HTML5. ● Открывается всё в браузере! ● Пишется JavaScript-ом. ● Работает даже не на Android. ● Благодать!
  • 19. Способ борьбы с Android 2.x #6 ● Использовать HTML5. ● НЕТ! ● НИ ЗА ЧТО!!! ● УБЕРИТЕ ЭТО! ● DO NOT WANT!