読者です 読者をやめる 読者になる 読者になる

TitaniumMobile勉強記

Web系エンジニア向けのキャリアアドバイザーやってましたが現在はフリーランスで開発含めて色々やってます。技術ネタとしてはRuby/RailsとJavaScript関連(Node.js、Titanium)あたり

Titanium CLI 3.2にしたらGenymotionとの連携が楽になる

こっそりとCraftBeerFanのAndroid版をリリースしたように、ここ最近はTitaniumでAndroidアプリを開発していました

Android向けに作るのに、当初抵抗あった要因の1つにEmulatorの起動の遅さというのがありましたがGenymotionとかの存在を知ってから、コード書く→Genymotionの仮想環境で確認というのが比較的さくさくできるようになってから、Android向けアプリ開発の抵抗がかなり薄れた感じがします

ただ、コード書いて、ビルドして出来上がったアプリを Genymotion へインストールする際に自動的にやるにはちょっと小細工が必要な状況だったのですが、Titanium CLIの最新版の3.2にになってからこの部分が小細工なしにできるようになったので簡単にまとめておきます

事前準備

Titanium CLI 3.2をまずはインストールします。解説スライドの22ページ目にある通り

npm install -g git://github.com/appcelerator/titanium.git
ti sdk install -b master -d

とするだけです。

私のターミナルでの作業はこんな感じになりました

% npm install -g git://github.com/appcelerator/titanium.git
: (npm モジュールを多数ダウンロード。細かいところは省略)
:
/usr/local/bin/ti -> /usr/local/lib/node_modules/titanium/bin/titanium
/usr/local/bin/titanium -> /usr/local/lib/node_modules/titanium/bin/titanium
titanium@3.2.0 /usr/local/lib/node_modules/titanium
├── sprintf@0.1.3
├── colors@0.6.2
├── longjohn@0.2.2
├── humanize@0.0.9
├── async@0.2.9
├── wrench@1.5.4
├── semver@2.2.1
├── winston@0.6.2 (cycle@1.0.2, stack-trace@0.0.7, eyes@0.1.8, async@0.1.22, pkginfo@0.2.3, request@2.9.203)
├── fields@0.1.11 (keypress@0.1.0)
├── optimist@0.6.0 (wordwrap@0.0.2, minimist@0.0.5)
├── request@2.27.0 (json-stringify-safe@5.0.0, aws-sign@0.3.0, forever-agent@0.5.0, qs@0.6.5, tunnel-agent@0.3.0, oauth-sign@0.3.0, cookie-jar@0.3.0, node-uuid@1.4.1, mime@1.2.11, form-data@0.1.2, http-signature@0.10.0, hawk@1.0.0)
├── temp@0.6.0 (osenv@0.0.3, rimraf@2.1.4)
├── moment@2.4.0
├── jade@0.35.0 (character-parser@1.2.0, commander@2.0.0, mkdirp@0.3.5, monocle@1.1.50, transformers@2.1.0, constantinople@1.0.2, with@1.1.1)
└── node-appc@0.2.0 (diff@1.0.7, node-uuid@1.4.1, semver@2.1.0, adm-zip@0.4.3, xmldom@0.1.16, dox@0.4.4, uglify-js@2.3.6)
% ti sdk install -b master -d
Titanium Command-Line Interface, CLI version 3.2.0, Titanium SDK version 3.1.3.GA
Copyright (c) 2012-2013, Appcelerator, Inc.  All Rights Reserved.

Please report bugs to http://jira.appcelerator.org/

Username: xxxxxxxx
Password: ********
Downloading http://builds.appcelerator.com.s3.amazonaws.com/mobile/master/mobilesdk-3.2.0.v20131117001643-osx.zip
  100% [========================================] 0.0s    

Extracting SDK to /Users/hoyamada/Library/Application Support/Titanium
  100% [========================================] 

Setting Titanium SDK 3.2.0.v20131117001643 as the default.

Titanium SDK 3.2.0.v20131117001643 successfully installed!

念のためCLIが3.2になったのかバージョンを確認します

% titanium -v
3.2.0

ここまでできたら、TitaniumからGenymotionを利用するための以下コマンドを入力します

titanium config genymotion.enabled true

これで準備完了です

実際にTitaniumCLIでプロジェクト作成して、Genymotion起動するかテストする

準備ができたらGenymotionに自動的にアプリがインストールされるかテストしてみます

ターミナル上で、以下を入力してTitaniumのプロジェクトを新規に作成します

titanium create --platforms android --id info.sample.genymotionTest --name genymotionTest

Genymotionを起動して、仮想環境を起動させておきます

f:id:h5y1m141:20131118082913p:plain

起動完了後、以下コマンドを入力します

cd genymotionTest
titanium build --platform android --taget device

build完了したら、見慣れたいつもの画面が表示されます

f:id:h5y1m141:20131118082923p:plain

関連する情報