Android ios wp7

1,970 views

Published on

Published in: Technology
  • Be the first to comment

Android ios wp7

  1. 1. So sánh phát triểnứng dụng trên iOS, Android và Windows Phone 7<br />cuong@microsoft.com<br />
  2. 2. Tại sao không viết một app để chạy được trên cả nhiều hệ điều hành: iOS, Android và Windows Phone 7, …<br />
  3. 3. Lợi:<br /><ul><li>Tăng xác suất tải về trên cả 3 hệ điều hành.
  4. 4. Tăng mức độ phổ biến – khả năng tương thích. Hài lòng các fan của iOS lẫn Android lẫn Windows Phone.
  5. 5. Tận dụng lại ý tưởng hay, tài nguyên (hình ảnh, video, âm thanh, mã logic…)</li></ul>Khó khăn:<br /><ul><li>Cần thành thạo cả 3 OS
  6. 6. Time to market có thể giảm
  7. 7. Tối ưu cho từng OS là khác nhau</li></li></ul><li>Có bao nhiêu cách ?<br />HTML 5- CSS3-JavaScript: PhoneGap, jQueryMobile, jQTouch, Sencha Touch,….<br />Appcelerator’s Titanium Mobile: converts JavaScript to symbolic files then compile to native apps<br />Porting apps: reuse code/ resource , modify code to adapt to each platform.<br />
  8. 8. Source : PhoneGap<br />
  9. 9. Source : PhoneGap<br />
  10. 10. JavaScript<br />UI API maps to native UI components: NavBar, Tabbar, Toolbar, Menu, Dialogs, Alert, Button, List…<br />Phone API maps to phone features: Geo, Accelerometer, Maps, Sound, Video, Database, File IO, Network…<br />JavaScript<br />HTML, JavaScript, CSS<br />UI + Logic<br />UI + Logic<br />Phone API<br />Phone API<br />UI API<br />UI API<br />JavaScript to Objective-C bridge<br />JavaScript to Java bridge<br />iOS Objective-C<br />Android Java<br />Native iOS App<br />Native Android App<br />
  11. 11. Cách cổ điển porting app vẫn cần thiết bởi vì:<br />1- Tối ưu cao nhất cho từng hệ điều hành – thiết bị cụ thể.<br />2- Cần tối ưu tốc độ ứng dụng.<br />3- Cần nâng cao trải nghiệm giao diện người dùng.<br />
  12. 12.
  13. 13. Trước khi so sánh iOS, Android và Windows phone 7….Hãy xem Windows phone 7 như thế nào.<br />
  14. 14. Cấu hình phần cứng<br />Phân giải màn hình<br />480x800 QVGA<br />320x480 HVGA<br />Multimedia<br />Common detailed specs<br />Codec acceleration<br />Cảm ứng đa điểm<br />4 or more contact points<br />Bộ nhớ<br />256MB RAM or more<br />8GB Flash or more<br />Cảm biến<br />A-GPS, Accelerometer, Compass<br />GPU<br />DirectX 9 acceleration<br />CPU<br />ARMv7 Cortex/Scorpion or better<br />1G <br />Chụp ảnh<br />5 mega pixels or more<br />Dedicated camera button<br />Nút bấm vật lý<br />Start, Search, Back<br />
  15. 15. Windows PhoneHardware<br />Common Hardware Elements<br />Consistent Platform<br />Quality Focus<br />800<br />Microsoft chuẩn hoá yêu cầu phần cứng:<br />1- Tăng chất lượng ứng dụng<br />2- Giảm tối đa lỗi không tương thích và thời gian kiểm thử<br />Phiên bản Windows Phone 7.5 “Mango” kế tiếp có thể khác !<br />480<br />
  16. 16.
  17. 17. Phát triển ứng dụng cho WP7<br /><ul><li>High performance game framework
  18. 18. Rapid creation of multi-screen 2D and 3D games
  19. 19. Rich content pipeline
  20. 20. Mature, robust, widely adopted technology
  21. 21. Xbox 360, Windows, and Zune
  22. 22. Modern application UI framework
  23. 23. Rapid creation of visually stunning apps
  24. 24. Metro-themed UI controls
  25. 25. HTML/JavaScript
  26. 26. 500,000 developers spanning Windows and web</li></li></ul><li>iOS, Android và Windows phone 7<br />
  27. 27.
  28. 28. Objective-C Apps<br />HTML 5, CSS, JavaScript Apps<br />Cocoa Touch UIKit, Animation, Multitasking, Gesture Recognizers, PushNotification<br />MEDIA CoreGraphics, Text, OpenGL ES, Core Animation, AVFoundation, Core Audio, video<br />CORE Services string, collection, network, contact, GPS, compass, accelerometer, gyroscope<br /> CORE OS kernel, file, network, security, power, device drivers<br />
  29. 29.
  30. 30.
  31. 31.
  32. 32.
  33. 33.
  34. 34. Multi-tasking on single core<br />Background<br />Foreground<br />App 1<br />App Service<br />Internal Service 1<br />Internal Service 2<br />Operating System<br />CPU Core<br />
  35. 35. Multi-tasking on dual core<br />Background<br />Foreground<br />App 1<br />App Service<br />Internal Service 1<br />Internal Service 2<br />Operating System<br />CPU Core 1<br />CPU Core 2<br />
  36. 36. Multi-threading<br />Foreground<br />Background<br />User Interface<br />Data Processing<br />Complextask<br />Internal Service 1<br />Internal Service 2<br />Operating System<br />CPU Core 1<br />CPU Core 2<br />
  37. 37. Windows Phone 7 (2010) không hỗ trợ ứng dụng hãng thứ 3 multi tasking.Windows Phone 7 (Mango) hỗ trợ multi tasking.<br />
  38. 38. Garbage Collection<br />Disable by default<br />Enable by compiler switch<br />When GC is not available alloc/release/aurorelease<br />CFRetain/CFRelease<br />Automatic by default<br />Rely too much on GC will deperformance your app<br />
  39. 39. API<br />API<br />http://wp7mapping.interoperabilitybridges.com<br />
  40. 40. Lập trình UI Android khá giống WP7<br />Vẽ giao diện bằng XML hoặc tạo động bằng code.<br />Hứng sự kiện trong XML hoặc trong code<br />Di chuyển giữa các trang<br />Menu bar – Application bar<br />Cách kích hoạt các tác vụ và nhận giá trị trả về<br />
  41. 41. App.xaml<br />Frame / Page<br />Controls<br />Launcher<br />Chooser<br />Notification<br />XML, LINQ, OData<br />
  42. 42.
  43. 43. System Tray (title, progress bar)<br />Standard Controls<br />Customed Controls<br />3rd Party Controls<br />Page<br />Application Bar (menu button)<br />
  44. 44. DEMO một số ứng dụng WP7<br />
  45. 45. UI Controls<br />http://www.codeproject.com/KB/windows-phone-7/CustomGauges.aspx<br />http://www.microsoft.com/events/series/isv.aspx?tab=Videos&seriesid=127&webcastid=14681 (Control supported va unsupported in WP7)<br />Telerik<br />http://www.infragistics.com/<br />Vs Android Widgethttp://developer.android.com/guide/topics/ui/index.html<br />
  46. 46. Communication Service<br />Location aware service<br />Push notification<br />SOAP / REST / WCF / OData<br />
  47. 47. Odata – WCF Client<br />
  48. 48. Tham khảo<br />http://blog.radvision.com/voipsurvivor/2010/10/07/ios-android-windows-phone-7-and-the-great-changes-in-the-operating-systems-market/<br />http://www.slideshare.net/dtmilano/android-development-tutorial-v3<br />http://msdn.microsoft.com/en-us/library/ff431744(v=vs.92).aspx (WP7 Code Example)<br />http://create.msdn.com/en-US/education/catalog/ (WP7 Content Example)<br />http://www.pcworld.com.vn/articles/san-pham/phan-mem/2011/03/1224409/cuoc-chien-he-dieu-hanh-di-dong-android-ios-va-windows-phone/ (Cuộc chiến hệ điều hành di động: Android, iOS và Windows Phone)<br />http://windowsphone.interoperabilitybridges.com/(WP7 cho iPhone developers)<br />http://channel9.msdn.com/posts/Minh-Tran-TranCreative-Experience-developing-for-Windows-Phone-7<br />http://www.msdev.com/Default.aspx<br />

×