Google web services в Android програмах

1,639 views

Published on

Воркшоп по застосуванню Google web services в Android програмах - Artfulbits.com

Published in: Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,639
On SlideShare
0
From Embeds
0
Number of Embeds
29
Actions
Shares
0
Downloads
17
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Google web services в Android програмах

  1. 1.
  2. 2. ArtfulBits inc.<br /><ul><li>aiMinesweeper. Первая в Украине игра для Android.
  3. 3. Android custom components
  4. 4. Anti-piracy движение
  5. 5. Готовые решения для Android-разработчиков</li></li></ul><li>Почему Android?<br /><ul><li>Открытый исходный код
  6. 6. Поддержка со стороны Android community
  7. 7. 60 000+ новых пользователей в день
  8. 8. Managed (Java) & Native (JNI, C++) APIs
  9. 9. «3dr party»прошивки
  10. 10. Обильная документация
  11. 11. Множество примеров</li></li></ul><li>Google maps<br /><ul><li>Google сервер
  12. 12. XML – APIs
  13. 13. Открытый доступ к картам и навигации
  14. 14. Частые обновления со спутника</li></li></ul><li>Архитектура Android UI<br />
  15. 15. Maps for Android<br />
  16. 16. Google maps integration<br /><ul><li>Получение API key от Google
  17. 17. Google map APIs должы поддерживаться телефоном
  18. 18. Добавление прав доступа (permissions) в AndroidManifest.xml
  19. 19. Добавление MapViewв визуальное дерево
  20. 20. Унаследование функционала MapActivity</li></li></ul><li>Библиотека Google Maps<br /><ul><li> Перевод гео-координат в координаты экрана посредством интерфейса Projection, доступного через MapView.getProjection()
  21. 21. Доступно 2 реализации абстрактного класса Overlay: MyLocationOverlayи ItemizedOverlay
  22. 22. Рекурсивный вызов Overlay.draw() получает экземпляр MapViewдля определение координат отрисовки</li></li></ul><li>Отрисовка поверх карты<br />Объявление своего слоя:<br />publicclass CustomOverlay extends Overlay<br />{<br /> ... <br /> <br />publicvoid draw(Canvas canvas, MapView mapView, boolean shadow)<br /> {<br />super.draw(canvas, mapView, shadow);<br /> mapView.getProjection().toPixels(m_geoPoint, m_screenPoint);<br /> canvas.drawCircle(m_screenPoint.x, m_screenPoint.y, 10, m_paint);<br /> }<br />}<br />
  23. 23. Жизненный цикл Activity<br />publicclass AppActivity extends MapActivity<br />{<br />private MyLocationOverlay m_overlay;<br />@Override<br />protectedvoid onCreate(Bundle icicle)<br /> {<br />super.onCreate(icicle);<br /> setContentView(R.layout.main);<br /> MapView map = (MapView)findViewById(R.id.mapView);<br />m_overlay = new MyLocationOverlay(this, map);<br /> map.getOverlays().add(m_overlay);<br /> }<br />@Override<br />protectedvoid onResume()<br /> {<br />super.onResume();<br />m_overlay.enableMyLocation();<br /> }<br />@Override<br />protectedvoid onPause()<br /> {<br />super.onPause();<br />m_overlay.disableMyLocation();<br /> }<br />@Override<br />protectedboolean isRouteDisplayed()<br /> {<br />returnfalse;<br /> }<br />}<br />
  24. 24. Links<br /><ul><li>Artfulbits products: http://www.artfulbits.com/Products/
  25. 25. SDK & Samples: http://developer.android.com
  26. 26. Android source: http://source.android.com/</li>

×