× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 |
今回は、Mac Xcode上で作ったアプリを実機(iPhone/iPad)で動かすために必要な
"Provisioning Profile" を作る方法を書きます。 ここの作業は挫折レベルMAX。 何をする必要があるのか分からないし、サイトは全部英語だし・・・。 ではでは解説していきます。 まだ済んでいない人は、先に member centerへの登録(無料)(過去記事)と、 developer programの購入(有料)(過去記事)を済ませてきてください。 どちらもこれからの作業に必須です。 では始めます。 まず、member centerに行って、 iOS Provisioning Portal をクリック。 プロビジョニングポータルのページに来ます。 左のタブに ・Home ・Certificates ・Devices ・App IDs ・Provisioning ・Distribution という項目があります。 Certificatesは認証。PCがこれを使うという証明です。 Devicesは、作ったアプリを転送したい実機を登録する場所です。最大100台のiPhone, iPadが登録できます。 App IDは、アプリ固有のIDを決めます。 Provisioningは、これらの情報を一つにまとめたファイルになります。 Distributionは、実際にアプリをストアに置いて配信する際に必要になってきます。これについては後日別の記事で説明します。 まずは認証です。 Certificateタブをクリックします。 RequestCerificateボタンを押すと、なにやら英語で説明書きが出ます。 要するに、自分で認証局に署名をリクエストしろ、そのCSRファイルをこのページから送信しろ、ということのようです。 どうやったらCSRファイルが手に入るのか、ということが英語で説明されているのでした。 では作っていきましょう。 Macには標準アプリケーションとして、 アプリケーション→ユーティリティ→キーチェーンアクセス.app というのが入っているはずです。 それを起動し、 図のように、キーチェーンアクセス→証明書アシスタント→認証局に署名を要求 を選択。 すると、証明書情報なるものを入力しろと言われます。 メルアドと名前を適当に入力し、「ディスクに保存」を選択して続行。 すると、デスクトップ(かどこか)にCSRファイル(拡張子は .certSigningRequest)ができているはずです。 そのCSRファイルを、先ほどのページで選択して送信。 これにてCertificateは終了。 Your certificate の欄に新たなファイルができていることを確認。 もしStatus が Pending になっていたら、ページをリロード。 すぐIssued になるはずなので、ダウンロードボタンを押しておきましょう。 何に使うのかよくわからないけど、***.cer というファイルがダウンロードできるはずなので、一応保存しておく。 次はDevice。 アプリを転送したいデバイスを登録します。 左のタブのDevicesをクリック。 で、出てきた Add Device ボタンをクリック。 デバイスの名前とIDを入力する欄が出てきます。 デバイスの名前は、自分で自由に決められます。 デバイスIDは、16進数の40桁の数字です。 デバイスIDなんてどこ見たら分かるの?・・・例えば、デバイスをMacに繋いだ状態で、XCodeのオーガナイザから見ることができます。 iTunesなどで表示されているシリアルIDとは違うので注意! 好きなだけデバイスを登録したら、Submit。 次のページで確認して問題なかったら、次へ進みます。 次にApp ID を作ります。 これはアプリ1つにつき1つ必要になるIDです。 ただしそれはストア経由で配信する場合で、自分のMacとiPhone/iPadでテストしている間なら、1つのIDですべてのアプリを扱うことができます。 普段は、毎回毎回新しいアプリを作るたびにAppID作っていたら面倒なので、共通のIDを作ればいいと思います。 本当にストアで配信する時だけ、改めてちゃんと固有のIDを作りに来るようにすれば十分です。 という訳で、開発時専用の共有IDを作る前提で進めます。 左のAppIDタブをクリック。 右に現れる New App IDボタンをクリック。 AppIDを作る画面です。 Description欄には、このIDの名前を自由に付けましょう。あとで見て分かりやすいものを。 開発時のものならTestとかDevとかを含む名前にしたり。 ストア配信時のアプリ固有のIDなら、そのアプリの名前を含む名前にするが吉。 Bundle Seed ID欄は、最初は Generate New しか選べないはずなので、おとなしくそれを選択。 2つ目以降、複数のIDでキーチェーンを共有したい場合は、同じSeed IDを選択することになります。 Bundle Identifier とは、アプリを識別する際の固有名です。 ここに記入したアプリでしか、このAppIDは使えないということになります。 で、Bundle Identifier って何ぞ? ・・・ここに書いてあります。 XCodeでプロジェクトを作ると、必ず ***-Info.plist (***はプロジェクト名) というファイルが自動で作られているはずです。 そこに書かれています。 何もしないと、 com.yourcompany.*** という名前になっているはず。 だから、これを書けばいいわけです。が、 このBundle IdentifierをそのままAppIDに使ってしまうと、そのアプリでしかAppIDが使えないので、これは不便。 違うアプリを作ったら、違うBundle Identifierになってしまうので使えなくなる。それじゃあ困る ので、どんなBundle Identifierでも使えるように、 * と一文字だけ入力します。これでOK。どんなBundle Identifierのアプリでも使えるようになります。 (注:XCodeのほうは書き換える必要ありません。ProvisioningPortalのほうで * と入力します) できたら、追加されているはずです。確認しましょう。 多分、 Bundle Identifier に * と入力した場合は、上の写真と異なり、 アップルからのプッシュ通知や、アプリ内課金、GameCenter対応などの 全部の項目が Unavailable になっているはずです。 ですが、これらの機能を使わない限り、問題ありません。 もし必要になったら、ちゃんと固有のアプリ名をBundle Identifierに設定した新しいAppIDを作ってください。 では最後に、ここまでのすべてをまとめたProvisioning Profileを作ります。 左のタブのProvisioningを選択。 右のNew Profileボタンを選択。 このページで、今まで作ったものすべてが紐づけられます。 ProfileNameには自由に名前をつけ、 Certificates欄には、先ほど作ったcertificateが表示されているはずなので、チェックを入れます AppIDにも、さっき作ったIDがリストで表示されているので、選択。 Devicesには、先ほど追加したデバイスが一覧表示されるので、使いたいデバイスを選んでチェック。 Submitしたら、新しいProvisioning Profileが作られます。 StatusがPendingだったら、ページをリロード。 Activeになったら、ダウンロードボタンを押して、Provisioning Profileをダウンロード。 ***.mobileprovision (***は、ProfileName) というファイルが手に入ります。 これこそが求めていたプロファイルです。 これでやっとProvisioning Portalでの作業は終わりです。 あともう少し。 今度はXCodeを開いてください。 XCodeのオーガナイザを開いて、Provisioning Profiles のタブをクリック。 ここに、プロファイルをドラッグ&ドロップします。 それからもう一つ。 プロジェクト→プロジェクト設定を編集をクリック。 ビルドタブから、 Code Signing という項目を探してください。 コード署名ID という欄があると思いますが、ここで iPhone Developer を選択してください。もし無い場合は、自分で打ち込んでください。 これ、何なのかというと、 キーチェーンアクセスのリスト中の、どの証明書を使うか、というのを選んでいます。 (このiPhoneDeveloperっていつの間にできたんだろう) ちなみに、配信用のprovisioningを作ると、下のiPhoneDistributionというのが作られます。 ・・・という訳で、長かったですがここまでできたら、やっとアプリを実機転送できます。 USBでiPhone/iPadをMacに繋ぎ、XCodeで プロジェクト→アクティブSDKを設定→Device を選択して、ビルド+実行! 起動できた? おめでとさん。 次回は配信する方法について書きましょう。 PR |
|
トラックバックURL
|