advanced operating system_ja_2
DESCRIPTION
TRANSCRIPT
クロスプラットフォームフレームワークを用いたiPhoneアプリケーションの開発
Development of iPhone Applications Using Cross-Platform Mobile Frameworks
Problems
Objective-C
iPhone programming is …
Primary iOS and Mac OS X
?
GC is not supported
Against “DRY” principle
Objective
Development of iPhone application using cross-platform frameworks
Cross-platform frameworks
PhoneGap
Titanium Mobile
MonoTouch
Rhodes
JavaScript
JavaScript
C#
Ruby
IAPSB
IA
I
IAPSBW
I: iPhone A: Android P: Palm S: Symbian B: Blackberry W: Windows Mobile
Development of Mobile Apps Using JavaScript
1. 簡単Very easy1. 簡単Very easy
2. Webプログラミングのノウハウを生かすことができるYou can make use of your web skill. (JS, HTML, CSS)
2. Webプログラミングのノウハウを生かすことができるYou can make use of your web skill. (JS, HTML, CSS)
3. メモリ管理を気にしなくて済むYou will not take care of the memory.3. メモリ管理を気にしなくて済むYou will not take care of the memory.
Demonstrating App
Development EnvironmentiOS SDK 4.2Titanium Mobile SDK 1.5.1PhoneGap 0.9.3Google Maps API ver.3
Basic Google Map ApplicationGeo-locationGeo-codingDirections ServiceStreet View
Demo
Demo
Titanium Mobile
1. Appcelerator’s proprietary framework (The Apache License, Ver 2.0)1. Appcelerator’s proprietary framework (The Apache License, Ver 2.0)
2. ネイティブアプリと同様の動作JavaScript code is translated into a native application code.
2. ネイティブアプリと同様の動作JavaScript code is translated into a native application code.
3. JavaScriptから OS 固有の APIにアクセスできるTitanium mobile is middleware to access native APIs.3. JavaScriptから OS 固有の APIにアクセスできるTitanium mobile is middleware to access native APIs.
PhoneGap
1. OSS framework developed by Nitobi Software (The MIT License)1. OSS framework developed by Nitobi Software (The MIT License)
2. デバイス特有の機能にアクセスできるPhoneGap allows you to access popular mobile features.
2. デバイス特有の機能にアクセスできるPhoneGap allows you to access popular mobile features.
3. 画面は HTMLで記述する( cf. jQTouch, jQuery Mobile)UI is created by HTML.
3. 画面は HTMLで記述する( cf. jQTouch, jQuery Mobile)UI is created by HTML.
jQTouch jQuery Mobile
Geo-location code
Ti.Geolocation.getCurrentPosition is an asynchronous function. It returns device’s current position to callback function.
Titanium Mobile vs PhoneGap
Native
Titanium Mobile
PhoneGap
Compatibility
Web
Using “if” statement
Conclusions
1. クロスプラットフォームフレームワークを用いれば、モバイルアプリを容易に開発できるMobile apps can be easily developed by cross-platform frameworks.
2. iPhone開発に特化するなら Titanium MobileがおすすめI recommend you to use Titanium Mobile for development of iPhone apps.
3. PhoneGapは、Mac以外でも開発可能PhoneGap allows you to develop apps on windows, linux and other platforms.