こんにちは、そしてはじめての人ははじめまして。
たぶん、Fusic社員の中野です。
Fusic Advent Calendarということで、何か記事を書かなければいけなくなりました。他の人の記事はなんか難しそうな記事ばかりなので、軽くプレッシャーです。
さて、iPhoneアプリを作っている人は、おそらく”Xcode”を使っている人がほとんどではないかなと思っています。弊社でも数人iPhoneアプリを作っている技術者がいますが、ほぼXcodeを使用しています。
XcodeといえばMacについてくる無料の開発環境でとても便利なツールなんですが、「Emacs・Vimで開発したい!」もしくは「Xcodeを立ち上げるのもめんどくさい!」という人もいるかと思います。そこでそんな人たちのために、Xcodeを(あまり)使用せずに行うiPhoneアプリの開発のTipsをご紹介できたらとおもいます。
検証環境
- Mac OSX 10.5.8
- iPhone Simulator SDK 3.0
※ OSのバージョンや環境によって違います
iPhoneアプリ作成
まず、今回の例として使用するiPhoneアプリの雛形をXcodeで作成します。Xcodeを起動して、「ファイル」->「新規プロジェクト」で「新規プロジェクト」ダイアログが表示されます。そのダイアログで「View-based Application」を選択してプロジェクトをどっかに保存してください。作成すると、以下のようにiPhone用テンプレートが作成されると思います。
作成したら、メニューの「ビルド」->「ビルド」を選択して、一度、iPhoneアプリを作成します。
iphonesimを作成
次に、コマンドラインからiPhoneシミュレータを立ち上げるために、ここからソースコードをダウンロードして、”iphonesim”というツールを作成します。(ダウンロードして解凍すると、Xcodeのプロジェクトが入ってますので、お使いの環境にあわせてビルドをしてください。)
コマンドラインからiPhoneシミュレータの起動
ビルドしてできたiphonesimを利用し、はじめに作成したテスト用のiPhoneアプリをiPhoneシミュレータ内で起動させます。
# iphoneアプリのプロジェクトのパスが"~/Desktop/Fac/Test"だった場合
$ pwd
/Users/nakano/Downloads/iphonesim/build/Debug
$ ./iphonesim launch ~/Desktop/Fac/Test/build/Debug-iphonesimulator/Test.app
[DEBUG] App Spec: 〜
[DEBUG] SDK Root: 〜
[DEBUG] Session started
何もエラーがなければ、iPhoneシミュレータが立ち上がりiPhoneアプリが表示されると思います。
いろいろ
- Q: Xcodeしか使ってないじゃん!ソースコードを編集してビルドするときはどうすんのよ?
- A:xcodebuildというコマンドでビルドできます。
$ xcodebuild -configuration Debug -sdk iphonesimulator3.0
- Q:デバッグは?
- A:iPhoneアプリのPIDが取れますので、gdb –pid=PIDでデバッグできます。iphonesim+gdbを使ってのデバッグはちょっとしたコツが必要です。今回はデバッグ方法については割愛しますが、要望があれば次の回にでも補足できたらなと思います。
- Q:Interface Builderを使いたい!
- A:お察し下さい。
Emacsをお使いの方は”emacs-xcode.el”やAutoCompleteの”ac-source-company-xcode”など利用すれば、開発自体も便利になると思います。 そして、これらをうまく利用すれば、Xcodeに負けないぐらいのiPhoneアプリの開発ができるelispができそうだなーなんて考えてます。
それでは、次の担当の人にバトンタッチ〜。