10分で作るTitaniumのHelloWorld
一つの言語で、iOSとandroid両方のアプリを開発できるように、
いろんなオープンソースのソリューションを検討中なので、
titaniumでHelloWorldを作ってみました。
■ 事前準備
今回は、mac osxで開発環境を構築します。
・java runtime設定
Titanium Studioを利用するために、javaを1.6に切り替えます。
$ export JAVA_HOME=`/System/Library/Frameworks/JavaVM.framework/
Versions/A/Commands/java_home -v "1.6"`
$ PATH=${JAVA_HOME}/bin:${PATH}
※ 因に、oracle java しかサポートされていないので、ご注意ください。
http://docs.appcelerator.com/titanium/latest/#!/guide/Installing_Oracle_JDK
・Appceleratorアカウントを取得
Sign Up for an Appcelerator Developer Account
・Titanium Studioをダウンロード・インストール
http://titanium-studio.s3.amazonaws.com/latest/Titanium_Studio.dmg
念のため、起動後、Helpメニューで更新をチェックします。
そして、プラットフォーム設定のダイアログが表示されるので、
今回は、iosとandroidをチェックします。
■ HelloWorld
・メニューから File > New > Mobile App Project
・Mobile App Projectを選択、次へ
・Default Alloy Projectを選択、次へ
・プロジェクト名、APP IDなどを記入、完了
・メニューから Run > Run as > (シミュレーターまたはデバイスを選択)
アプリが起動できたでしょうか
■ ハイブリッド代表cordovaとの違いは
cordovaアプリ = ( html + javascript + css ) + webview + cordova
titaniumアプリ = (xml + javascript + tss ) + titanium製ネイティブjavascriptインタプリタ
ということで、titaniumアプリがネイティブアプリと言っている方も多いのですが、
う〜ん。。。ちょっと違いますね。誤解しないように、気をつけてください。
※ tss = titanium style sheet
■ 個人的な感想
Titaniumを利用する場合
メリット:ネイティブに近いパフォーマンス
デメリット:独自スタイルシートtssとフレームワークAollyを勉強するコストが発生
それに対して、cordovaを利用する場合
メリット:旬なWEB技術が利用可能(html5、angularJS、TypeScript、SCSS)
デメリット:WebViewでのパフォーマンスが懸念
ただし、iOSとandroidのバージョンアップに伴って、html5サポートが改善されつつあるので、将来が明るいでしょう
ということで、今回はcordovaを導入する方向で、すすめたいと思います。