SATOXのシテオク日記

~ふもっふ、ふもふも~

iPhone開発者登録、ビルド、実行まで

ひょんな事からiPhoneに続きMacも手に入ってしまいました。MacBook Proくん。
というわけで、いよいよiPhoneアプリを開発できる環境が整いました。
Palm全盛のときも何を作ろうかとワクワクしたもんですが、そのワクワク感が沸々と沸いています。
しかしながら、iPhoneMacが手に入ったからといって、すぐに開発が出来るわけではないんですね、これが。
PalmAndroidアプリとは異なり、iPhoneは(正当法では)デバイス上で勝手に作成したアプリを走らせることは出来ない、というのがキモ。
で。
ここまでのお話で1つ間違いを正しますと、iPhoneアプリを開発するために実はiPhoneは不要です。
iPhone SDKにはiPhoneシミュレータが同梱されており、自作のアプリケーションはシミュレータ上で走らせることが出来ます。このシミュレータがちょっとくせ者で、ARMのコードが走るエミュレータではないので、コードレベルでは差が生じるということ。やっぱり、プログラマなら自分のアプリは実機で動かしてみたいですよね。
くどくどと話が長くなりましたが、iPhone実機でビルド&実行を行うまでにSATOXが行ったことをまとめておきます。まぁ目新しい内容ではあないし、手順は英語であればしっかり記載されているので、自分向けの備忘録的なメモですかね。
で、最後に今回行ったのは会社内での開発参加(Standard/Company)なので、W8などの初期契約周りや支払いについては割愛されています。予めご理解下さいまし。

1.アカウントを作る

まず、iPhone Dev Centerにて、開発者登録を行います。アップル関連のアカウントがいくつかあって混乱しますが、ここで作成するのはいわゆる「Apple ID」「A」です。
すでにアカウントを持っている場合はそれを利用できますが、名前にASCII以外の文字(漢字)が使われていると正しく表示されないなどいろいろ問題となるので注意。名前はオンラインで修正できないので、サポートに連絡するなどの対処が必要です。

■iPhone Dev Center - Apple Developer Connection

2.開発環境のセットアップ

(1)SDKのダウンロード
Apple IDを持っていれば、iPhone SDKをダウンロードすることが可能です。
しかもここまでは特に費用は掛かりません。
ついでにサンプルプログラムもダウンロードしておくとよいです。
(2)インストール
ダウンロードした.dmgファイルをつかってMacにインストールします。
XcodeiPhoneシミュレータもこのiPhone SDKに含まれています。
最初勘違いして、Macアプリ開発サイトからSDKを落とさないといけないと思ってた;

3.ユーザの作成と参加

(1)チームへの参加案内を受ける
恐らく個人利用の場合と異なるところだと思いますが、Term Agentユーザからチーム参加のお誘いを受けることで、開発チームに参加することが出来ます。

Term Agentは、Developer Connection - iPhone Developer Program Portalページにて「Add Member」ボタンを押し、ユーザを作成します。必要なのは名前とメールアドレス、権限(Administrator/Member)の設定です。
 
個人であれば、ログイン後に表示されている「Join the iPhone Developer Program」で処理を進めていけばよいかと思います。個人向けの「Standard Program」で年間99ドルの費用が掛かります。そのうち個人でも登録してみたい。

(2)チームへの参加
参加案内はメールで届きます。メールサブジェクトは「You are invited to join the iPhone Developer Program」。
メールの指示通りにキーコードを入力して認証を受けます。

4.開発環境の認証

(1)認証リクエストの生成
MacのKeychain Accessを起動し、Certificate Assistantのリクエストを選択。
メールアドレスや名前を確認、暗号強度は「2048ビット/RSA」。
最終的に.csrファイルが生成されます。

(2)認証ファイルの送信
Developer Program Portalのサイト、Certificate - Developmentの「Choose file」ボタンにて先ほどの.csrファイルを設定、Submitします。
これで、個人の開発マシンを登録するわけです。

(3)開発認証を有効にする
Your Certificateの項の「Approve」ボタンを押下します。
Pending状態になってボタンが有効でない場合がありますが、ブラウザをリロードさせると更新されます。

(4)iPhone開発証明書をダウンロードして認証
WWDR Intermediate Certificateの説明があるので、認証ファイルをダウンロードしてMacローカルに保存します。
Mac上でダウンロードしたファイルをダブルクリックして、Keychain Assistantに登録します。
さらに、DevelopmentタブのYour Certificateの項目から「Download」ボタンを押下し、個人iPhone開発証明書をダウンロードしてMacローカルに保存します。
こちらもファイルをダブルクリックして、Keychain Assistantに登録します。

5.デバイスの認証

Certificate - Devicesの「Manage」タグで「Add Devices」ボタンを押下してデバイス名とデバイスID(UDID)を入力、Submitします。
バイスIDとはiTunesXcodeのオーガナイザで確認できるiPhone単体固有の識別IDで、40文字の英数字です。
iTunesでは「シリアル番号:」という文字をクリックすると切り替わったりします。どんな宝探しだ。そしてここでは文字をコピーできない。
 
App IDsについては割愛します。

6.Provisioning Profileの設定

(1)Provisioning Profileの設定
Provisioning Profileとは、アプリケーションの動作を許可する開発者郡とデバイス郡を定義した証明書です。アプリケーションをビルドする際にこの証明書の指定が必要となります。
Provisioningの「Development」から「New Provisioning」ボタンを押下。
Profileの名前、所属するユーザ、デバイス、対象App IDを指定してSubmitします。

(2)Provisioning Profileのダウンロード
Provisioningの「Development」から「Download」ボタンを押下し、プロフィールをダウンロードします。「Download」ボタンが表示されない場合は、ブラウザをリロードさせてみてください。

(3)Xcodeへの設定
次にMaciPhoneを接続してXcodeを起動、オーガナイザを開きます。
Devicesの項にProvisioningがあるので、そこへ先ほどのファイルを追加します。
(実際、ここでプロフィールの更新がうまくいかなかったりして、ファイルのダブルクリックをするとうまくいった気がします)

 

7.サンプルプログラムの実機実行

サンプルプログラムをダウンロードしてきてプロジェクトファイルをオープン。実行対象にiPhone Deviceを選択してビルド&実行。
サンプルを実機で実行することが出来ました。
Add Hocで配布したりApp Storeに載せるためには、ユニークなApp IDを作成して、アプリケーションのプロパティにIDを指定する必要があります。

今日、ちょっと自作アプリのネタをもらいました。
結構面白いアプリになるかも………ワクワク。