Unity: "Очевидное-невероятное” или хитрости разработки на Unity Android

1,309 views
1,134 views

Published on

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

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,309
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Unity: "Очевидное-невероятное” или хитрости разработки на Unity Android

  1. 1. Очевидное-невероятное или хитрости разработки на Unity Android Руслан Григорьев, Инженер по тестированию ПО, Unity Technologies
  2. 2. о докладчике • 10+ лет в игроиндустрии (в том числе в отечественной) в разных компаниях: Toolsmedia, LG Electronics, Creat Studios, Reaxion и т.д. • Множество выпущенные проектов на платформах от PC/PS2 до iOS/Android/Brew/J2ME/Symbian. • Почти 3 счастливых года в Unity Technologies в качестве QA по мобильным платформам: Android/Windows Phone 8.
  3. 3. общий подход к разработке на android . прототипирование и быстрые итерации • Build & Run • Android Tools: adb, monitor, etc [demo] • Android Remote [demo] • Custom build pipeline. Unity API: BuildPipeline.BuildPlayer [demo] • Profiling • Debugging • …and more
  4. 4. общий подход к разработке на android . зоопарк устройств Ох уж это разнообразие... • ARMv7 devices only / with NEON extention only. Почему? • Form factor: smatrphones/tablets и нечто посередине. Автоматически поддерживаем все разрешения и еще эмулируем в редакторе. + Unity API: Screen.currentResolution • GPU Families: PowerVR / nVidia Tegra / Qcomm Adreno / ARM Mali (+ Vivante / VideoCore) • OpenGL ES 2.0 / 3.0. Оба стандарта поддерживаются. • Android OS versions: поддержка от Gingerbread (API Level 9) и выше. Только официальные версии от Google. • Android (US, EU, etc)/ Android Korean / Android Chinese
  5. 5. общий подход к разработке на android . зоопарк устройств ...и немного о сборе статистики: Статистику надо собирать =) А как? • Разнообразные серисы: Flurry, Google Analytics, App Annie. Плагины на AssetStore • Редактор Unity. Submit HW statistics. С чего бы это? • Мы делимся информацией: http://stats.unity3d.com/ • А в будущем будем предоставлять сервис Unity Analytics • Статистика от Google: https://developer.android.com/about/dashboards/index.html Есть одно простое правило работы с зоопарком android устройств: Невозможно прокрыть ВСЕ. Но возможно и нужно выбрать ГЛАВНОЕ. Проэтому знай и люби свой зоопарк Так как узнать спецификацию моего устройства? • $ adb shell cat system/build.prop [demo] • Unity API: SystemInfo [demo] • Для проверки и точной иформации: http://pdadb.net
  6. 6. общий подход к разработке на android . publishing на google play Ведущий Android Store Front. Поддерживается Google Android Developer Program. Developer Console • Подпись keystore: встроена в редактор unity • LVL Plugin на AssetStore: Google Play Application License Verification (*made by unity) • OBB Plugin на AssetStore: Google Play OBB Downloader (*made by unity) • Множество других плагинов на AssetStore • Unity Error Reporting service over Android Error Reporting (embedded) Crashes & ANRs <log> java.lang.Error: FATAL EXCEPTION [UnityMain] Unity version : 4.3.0f1 Device model : ZTE KIS PLUS Device fingerprint: /(--removed due to privacy concerns--) Caused by: java.lang.Error: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000000 Build fingerprint: '/(--removed due to privacy concerns--)' Revision: '0' ... </log>
  7. 7. unity android и java . плагины и даже больше • AndroidJNIHelper: [demo] • AndroidJavaClass • AndroidJavaObject • Java Exception propagation to Unity script [demo] • Android Java Plugins (AJP) [demo] • Android Native Plugins (ANP) [demo] • Android Library Projects (ALP) [demo] • Custom Manifest • AndroidProxy: Java interfaces • AndroidJavaRunable(uses AndroidProxy): RunOnUiThread • Export as Android Project. Backward compatibility [demo]
  8. 8. unity android и java . плагины и даже больше
  9. 9. unity android и java . плагины и версии unity Unity 3.5 Android Java Plugins • Custom Manifest: 3 unity activities • Manual conflicts resolving. Плагины с ссылками на ресурсы. • Нет поддержки ALP Unity 4.3 Android Java Plugins • Custom manifest: unity native activity only • Support for old (3.5) Android Plugins custom manifest • Поддержка ALP. Лучший способ для плагинов со ссылками на ресурсы Unity 5.0 Android Java Plugins • Android plugin importer. Только для “простых” jar. Можно поместить где угодно. • No Support for old (3.5) Android Plugins custom manifest • Поддержка ALP. См. Выше Если Вы пишете плагины, то настоятельно рекомендую ипользовать формат ALP
  10. 10. bug reporting и сообщество Unity Bug Reporter / Как сообщать об ошибках • Auto filled data • Steps to repro • Repro project • Android specific • Device info • Logcat Issue tracker / Голосуй за свой баг репорт! • http://issuetracker.unity3d.com Community / Сообщество • Closed alpha groups. Только по рекомендации • Beta groups. Можно попроситься Что дальше? • http://unity3d.com/community
  11. 11. спасибо за внимание Вопросы ? Контакт инфо: ruslan@unity3d.com

×