iPhone/iPod touch で動くアプリケーションを開発しようと思っている。
せっかく実機(iPhone)を持っているので、
じゃあ実機で動かしながら開発だ、ということで設定してみた。
ポータルサイトの英語のドキュメントを読みながらの作業で、日本語のページも検索しつつ
四苦八苦した結果、サンプルコードを実機で動かすことに成功した。
検索してたら結構同じようにつまづいている人がたくさんいたので、
自分が忘れないように、また、同じところでつまづく人がいたらその人のために、記録しておく。
一応書いておくと、Portal User Guide を読むことが一番の近道です。
環境は
Macbook pro 2.2GHz
Mac OS X 10.5.3
Xcode 3.1.1
iPhone 3G OS 2.1
やったこと
1) iPhone SDK(xCode 含む) のダウンロード/インストール
2) iPhone Developer Program への参加
3) certification 関連
4) provision 関連
5) Xcode プロファイルの設定
1) iPhone SDK(Xcode 含む) のダウンロード/インストール
Apple のサイトからダウンロード。(http://developer.apple.com/jp/iphone/program/)
Apple ID が必要なので持っていない場合は取得する。
この際、名前や住所等をアルファベットで入力するよう注意。
名前が日本語だとあとでちょっと困ります。
解凍し、ディスクイメージをマウントして、インストール。
Xcode と iPhone Simulator も同時にインストールされる。たしか。
2) iPhone Developer Program への参加
1) と同じく Apple のサイトから登録。(http://developer.apple.com/jp/iphone/program/)
SDK だけでも開発はできるのだけど、これは作ったものを実機で動かしたり
アドホックで配布したり App Store で配信したりといったときに必要。
年間 ¥10,800- するけども、心構え的な意味でも、
実際実機でシミュレートしながら作った方が良いよねって意味でも最初から登録しておいて良いと思う。
仮登録→メール認証→本登録 という流れ。
この本登録で、Apple ID の登録名が日本語だとエラーが起きてしまうらしい。
エラー報告ページから Apple にメールして、登録名を変更してもらう。
ちなみに、エラーのページから飛ぶ報告フォームは英語なので英語で書かなきゃいけなそうだけど
そのページの言語で日本語を選べば日本語のフォームがちゃんとあるので、日本語で良いです。
3) certification 関連
「私はちゃんと Developer Program のメンバーですよ」という証明、かな。
ユーティリティ→キーチェーンアクセス→証明書アシスタント→認証局に証明書を要求
生成された要求書(?)を Developer Program の Portal で Certificates からアップロードして認証を待つ。
証明書ができたらダウンロードしてダブルクリックすると、キーチェーンアクセスに追加される。
一緒に、 Certificates の説明文にリンクのある WWDR Intermediate Certificates も同じように
ダウンロードしてダブルクリック。
4) provision 関連
動かしたいデバイスのシリアルを Xcode に登録する作業。
Developer Program の Portal から Provisioning にアクセス。
・profile の名前(何でも良い。)
・さっき取得した証明書
・App ID 何でも良いから取得
・デバイスを登録
生成が終わったらダウンロードして、Xcodeにドラッグアンドドロップ。
5) Xcode プロファイルの設定
ここが一番苦労した。
とりあえずサンプルコードのプロジェクトを開く。
・info.plist の Bundle identifier を、App ID の ID の末尾に置き換える。(com.companyname.yourname みたいなやつ)
・ターゲットの「情報を見る」から、コード署名 ID の “Any iPhone OS Device” の右の欄を
要求して取得した証明書の名前に置き換える。(キーチェーンアクセスで確認。)
おそらく、「iPhoneDeveloper: 名前」だと思う。セミコロン前後のスペースの有る無しに注意。
これで実機でテストができるようになる!
ちなみに、手順 1)〜5) までいろいろ試行錯誤しながらやって結局1日くらい経っちゃいました。
しかし、サンプルコードとはいえ実機で動くとやる気出ますよ。
やーるぞー。
ちなみに、開発したアプリを App Store で配信する際にはまた別の認証が必要になるらしいが、
それはまたそのときにでも。