Monthly Archives: 7月 2015

Bundle Identifier、コード署名、プロビジョニングプロファイルの設定

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

※開発準備、申請まわりの情報をお探しの方はiOSアプリの開発準備と申請の手順まとめを参照ください。

Xcodeでの実機テストやAdHocおよびストア配布用にアーカイブする際、BundleIDやプロビジョニングプロファイルの割り当て、コードサインなど、正しいプロジェクトの設定が必要です。また、他社(他者)から受け取ったプロジェクトファイルを自社の環境に合わせる際にもこのあたりの設定が必須になります。プロジェクト設定や開発環境、その他諸々によっては下記以外の箇所も設定する必要がありますが、最低限やらなければならないもののみ記載しました。なお、証明書やAppID作成前にプロジェクトファイルを作成することもあるかと思いますが、下記はMemberCenterでの作業が済んでいる前提の解説となりますので、適時読み替えてください。

■前提条件

・2015/7/6現在の内容
・MacOS X Ver 10.10.4(14E46)
・Xcode Version 6.4 (6E35b)
・Apple Developer Program(旧 iOS Developer Program) 登録済み
・開発向け設定の場合は開発用証明書、配布向け設定の場合は配布用証明書がそれぞれ生成済み
・AppID生成済み
・実機(デバイス)のUDIDを登録済み(実機テスト、AdHoc配布の場合のみ)

■手順
(1) Bundle Identifierの設定

Member CenterでAppIDを作成した時に入力したBundle IDがBundle Identifierになりますので(Explicit App IDの場合)、App ID側と合わせます。AppID が xxxxx.jp.primetheory.SampleApp の場合は、Bundle Identifierは jp.primetheory.SampleApp となります(AppIDが未作成の場合はプロジェクト名に合わせてください)。

(2) コードサイン設定
AdHoc用などSchemeを増やして設定することもありますが、ここではデフォルトの状態(Develop、Release)で説明します。

Develop用は開発用証明書を選択します。

Release用は配布用証明書を選択します。

(3) プロビジョニングプロファイル設定

通常、開発用の場合は開発用の汎用的なプロビジョニングプロファイル、配布用の場合は当該プロジェクト(アプリ)用のプロビジョニングプロファイルを選択します。例では後者を選択しています。

この例ではコードサイン設定、プロビジョニングプロファイル設定はこのような感じになりました。


iOSアプリの開発準備と申請の手順まとめ

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

Xcodeでの開発そのものに関してはここでは割愛しますが、デベロッパーアカウントの取得〜実機テストまでの設定、アプリ完成後の公開手順などをまとめておきます。当サイトの過去記事のまとめですので、記述レベルにばらつきがあります、一部、個人アカウントのみの説明だったり、開発向けのお話、配布向けの話などにわかれていたり、諸々手順を端折っている箇所もありますが、ご了承ください。


証明要求ファイルや証明書、プロビジョニングプロファイルやAppIDなど、様々な名称で複雑な手順が多く非常にわかりにくいので関連図を作成しました。

■デベロッパーアカウントの取得と更新
iOS Developer Program 登録方法(個人)
Apple Developer Program(旧 iOS Developer Program)の更新方法

■MemberCenterでの作業
(1)デベロッパー証明書の準備
Certificate(証明書)を生成する方法(開発用証明書編)
Certificate(証明書)を生成する方法(配布用証明書編)
iOSアプリ開発で実機による開発を複数台(メイン機ではない2台目以降)のMacで行いたい場合
(2)AppIDの作成
AppID(AppIDs)を作成する方法
(3)デバイスの登録
テスト用のiOSデバイスを登録する方法
(4)プロビジョニングプロファイルの作成
ProvisioningProfile(プロビジョニングプロファイル)を生成する方法(開発用ProvisioningProfile編)
Provisioning Profile(プロビジョニングプロファイル)を生成する方法(配布用ProvisioningProfile編)

■Xcodeでのプロジェクト設定
Bundle Identifier、コード署名、プロビジョニングプロファイルの設定

■アプリ配布
iOSアプリのアップデート申請手順(2015年9月版)
iOSアプリの初回申請手順(2014年12月版)
iOSアプリのアップデート申請手順(2014年9月版)
iOSアプリの特急審査申請を行う方法
受託開発などでプロビジョニングプロファイルを受領してアーカイブしたファイルをxcodebuildコマンドでエクスポートする方法
Application Loader を使用してアーカイブ(ipaファイル)をiTunes Connectにアップロードする
iOSアプリの申請後に自分自身でアプリを取り下げる方法

この記事を読んでもよくわからない方、ご自身でやるのがどうしても不安な方、経験豊富な株式会社プライムセオリーがアプリ開発まわりのサポートを承ります。どんな小さなことでもお気軽にお問い合わせください。


テスト用のiOSデバイスを登録する方法

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

※開発準備、申請まわりの情報をお探しの方はiOSアプリの開発準備と申請の手順まとめを参照ください。

Xcodeでの実機テストやAdHocでの実機テストでは事前に登録されたiOS端末でしか動作させることができません。ここではテスト用の実機を登録する方法を記載します。Apple Developer Program では1アカウントにつき年間100台までの登録制限があり、一度登録するとライセンス更新時までに削除ができません(Disableにすることで使用不可にすることはできます)。ですので、クライアントワークが多い人は計画的に端末登録を行わないと、ライセンス更新時期を待たずに制限に引っかかってしまう可能性があります。ブラウザはSafariを使用してください。Submitボタン押下で反応しなかったり、レスポンスが返ってこなくなるパターンや、各種登録がうまくいかないケースがあります。

■前提条件

・2015/7/3現在の内容
・MacOS X Ver 10.10.4(14E46)
・Apple Developer Program(旧 iOS Developer Program) 登録済み

■手順

Apple Developer Program のサイトにログインし、右上の MemberCenter を押下します。

次に Certificates, Identifiers & Profiles を押下します。

iOS Appsの Devices を選択します。

右上の[+]ボタンを押下し、新規にDeviceを登録します。

1台ずつ登録する場合は Register Device を、複数台をまとめて登録する場合は Register Multiple Devices を選択します。

前者の場合は Name に 端末名(登録台数が増えてくると判別が難しくなりますので、組織名または個人名+端末種別のようにわかり易い名前がおすすめです)、UDIDに端末のUDIDを入力します(UDIDはiPhone構成ユーティリティやiTunse、XcodeのDevicesなどで確認できます)。後者の場合はUDID(Device ID)と端末名(Device Name)を空白で区切ったテキストファイルを読み込ませます(フォーマットのサンプルはここからダウンロードできます)。

追加端末の情報を入力、アップロードしたら、[Continue]ボタンを押下します。

確認画面で内容を確認して問題がなければ、[Register]ボタンを押下します。

登録できました。


Apple Developer Program(旧 iOS Developer Program)の更新方法

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

※開発準備、申請まわりの情報をお探しの方はiOSアプリの開発準備と申請の手順まとめを参照ください。

iOS Developer Program が Apple Developer Program に統合されてからはじめての更新のタイミングです。基本的はこちらの記事と同じですが、名称も更新時の一部のUIも変わりましたのでその手順を残しておきます。ブラウザはSafariを使用してください。Submitボタン押下で反応しなかったり、レスポンスが返ってこなくなるパターンや、各種登録がうまくいかないケースがあります。

■前提条件

・2015/6/19現在の内容
・Apple Developer Program(旧 iOS Developer Program) 登録済み

■手順

(1) デベロッパープログラムの更新


期限切れ約一ヶ月前になると、”Your Apple Developer Program membership expires in 30 days.”というタイトルでメールが送られてきますので、その中に記載のURL(https://developer.apple.com/program/renew/index.action)を踏みます。

Apple Developer Program のサイトにサインインします(サインイン済みの場合はこの画面は出ません)。

Apple Developer Program にチェックを入れ、[Continue]ボタンを押下します。

詳細画面で内容を確認したら、[Continue]ボタンを押下します。

[Buy Now]ボタンを押下します。

(2) AppleStoreでデベロッパープログラムを購入

オンラインのAppleStoreに飛ぶので、サインインします。

請求連絡先、請求先住所、支払い方法を入力、選択したら、[続ける]ボタンを押下します。

内容に問題がなければ、[ご注文の確定]ボタンを押下します。

購入できました。

その後、

“Thank you for purchasing an Apple Developer Program”というタイトルのメールと”ご注文ありがとうございます”というタイトルのメールが届きます(昔はこの二つのメールの到着には大きなタイムラグがありましたが、今回は2分でした。いまはもうほとんど遅延しないようです)。これで更新が完了しました。


AppID(AppIDs)を作成する方法

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

※開発準備、申請まわりの情報をお探しの方はiOSアプリの開発準備と申請の手順まとめを参照ください。

AppID(AppIDs)は原則としてアプリと一対一のIDとなります。デベロッパーアカウントのApple IDやAppStore上のApple IDとは異なるものです(この両者も紛らわしいのですが…)。なお、AppIDの説明や組み込むサービスに関しては追加削除可能ですが、AppIDそのものは編集削除できませんので、作成する際は十分注意してスペルミスなど起こさないようにしてください。ブラウザはSafariを使用してください。Submitボタン押下で反応しなかったり、レスポンスが返ってこなくなるパターンや、各種登録がうまくいかないケースがあります。

■前提条件

・2015/7/3現在の内容
・MacOS X Ver 10.10.4(14E46)
・Apple Developer Program(旧 iOS Developer Program) 登録済み

■手順

Apple Developer Program のサイトにログインし、右上の MemberCenter を押下します。

次に Certificates, Identifiers & Profiles を押下します。

iOS Appsの Identifiers を選択します。

右上の[+]ボタンを押下し、新規にApp IDを作成します。できあがる形式は[App ID Prefix]+[デベロッパーアカウント名義企業の逆ドメイン]+[Xcodeプロジェクト名]です。間違いやすいのですが、AppIDは厳密にいうとPrefix込みでAppIDです。PrefixをつけないAppIDはBundleIDです。

App ID Description にはAppIDの説明を入力します。AppIDそのものでも構いませんし、補足付きの短い文章でも構いません。
App ID Prefix は デフォルトで選択されているTeam IDのままで構いません。比較的初期の頃にiOS Developer Program(現 Apple Developer Program)に登録したデベロッパーの場合は複数選択可能になっているかと思いますので好きに選ぶことも可能ですが、このPrefix込みでアプリを識別していますのでここを意味なく変更してしまいますとKeychainを使用しているアプリがある場合にキーチェーン情報にアクセスできなくなりますのでご注意を。
App ID Suffix では Explicit App ID と Wildcard App ID が選択できますが、以下の基準でとちらかを選び、Bundle IDにAppIDを入力します。特別な理由がない限り、Explicit App ID をおすすめします。

[Explicit App ID]
→アプリ固有のAppIDを作成場合、アプリ内課金(アプリ内購入)やiCloudなどのサービスを組み込むアプリ、配布用プロビジョニングプロファイルに紐付けたい場合
ex) xxxxx.jp.primetheory.SampleApp

[Wildcard App ID]
→開発専用など、どのアプリでも使用できるようなAppIDを作成したい場合
ex) xxxxx.jp.primetheory.*

Bundle IDは原則として[デベロッパーアカウント名義企業の逆ドメイン]+[Xcodeプロジェクト名]となります。ですので、名義企業のドメインが primetheory.jp で、Xcodeプロジェクト名 を SampleApp とした(い)場合、ここで入力すべきBundle ID は jp.primetheory.SampleApp となります(Explicit App IDを選択する場合)。つまり、ここで生成されるAppIDはXcodeプロジェクトファイルのBundle Identifierと一致させる必要があります。たとえば、Explicit App ID で 作成した AppID が xxxxx.jp.primetheory.SampleApp の場合は、Bundle Identifier も jp.primetheory.SampleApp でなければなりません。Wildcard App ID で AppID を作成した場合は、xxxxx.jp.primetheory.* ですので、Bundle Identifier の左側(逆ドメイン)が一致していれば右側(プロジェクト名)がどのような名称でも構いません。

App Services では 当該アプリに組み込むもしくは組み込む予定のサービスにチェックを入れます。開発前で選択困難の場合は後回しで構いません(AppID作成後に編集できます)。

必要な情報を入力したら[Continue]ボタンを押下します。

確認画面が表示されるので、内容を確認して問題なければ[Submit]ボタンを押下します。AppIDは一度作成すると削除できません。内容を確認せずに安易にSubmitボタンを押下したり、気軽に作成した場合、ゴミが溜まりまくりますのでご注意を。 2016年7月追記:使用していないAppIDsに限り、編集画面から削除可能になりました。

AppIDが作成されました。


iOSアプリの特急審査申請を行う方法

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

※開発準備、申請まわりの情報をお探しの方はiOSアプリの開発準備と申請の手順まとめを参照ください。

「大々的なプロモーションの予定にアプリのリリースが間に合いそうもない」、「致命的なバグが見つかりすぐに修正したけど、審査待ちの間にアプリの評価が下がってしまう」など、申請から約10日以上かかる通常の審査ではとても無理という状況に置かれてしまった場合、特急審査の申請を行うことで急ぎで審査していただける可能性があります。あくまでも可能性であり、必ずしも急ぎで審査していただけるわけではありませんが、正当な理由があれば対応していただけることが多いです。ここではその特急審査申請の手順を記載します。ブラウザはSafariを使用してください。Submitボタン押下で反応しなかったり、レスポンスが返ってこなくなるパターンや、各種登録がうまくいかないケースがあります。

■前提条件

・2015/7/3現在の内容
・iTunseConnectにて当該アプリの初回申請もしくはアップデート申請が済んでおり、審査が始まっていない状態(Waiting For Review)
・コンタクトフォームへは他のルート(画面遷移)もありますが、ここではメインのルートを記載

■手順

(1) コンタクトフォームを開く

Apple Developer Program のサイトにログインし、右上の Support を押下します。

次に 右下のContact Us にある Contact Apple Developer Support > を押下します。

ページ真ん中あたりの Expediting an App Review を押下します。

 

(2) 必要な情報を入力して送信

コンタクトフォームが開くので必要な情報を入力します。

<Topic>
・I would like to は [request expedited app review]が選択されている状態のまま。

<Contact Information>
・Name には デベロッパーアカウントの名義が表示されています。
・Email には デベロッパーアカウントに紐付いたメールアドレスが表示されています。
・Phone には直接連絡が取れるような電話番号を入力します。デベロッパー登録時の電話番号でなくても構いません。国番号を忘れずに。
・Organization には所属の組織/団体名を入力します(任意)。

<App Information>
・App Name には当該アプリの名称を入力します。
・Apple ID of App には アプリのApple IDを入力します。Apple ID は iTunesConnect->[マイ App]->[その他]->[この App について]で確認できます。
・Related Apps には関連アプリのApple IDを入力します(任意)。カンマ区切りで複数入力可能です。
・Submitted to では App Store を選択します。

<Description>
・Select a reason で特急審査を行って欲しい理由のカテゴリを選択します。
[Critical Bug Fix] →致命的なバグ修正の場合
[Time-Sensitive Event] →プロモーション、期間限定イベントを予定している場合
[Other] →その他の理由の場合
・Explanation には 具体的な理由を英語で記述します。日本語のみでも伝わるという情報もありますが、迅速に処理していただくことを考慮し、英語での記述は必須でしょう(英語と日本語の併記でよいかと思います)。申請まわりの他の手続き同様、必ずしもネイティブレベルの英文でなくても構いません。意図が伝わるかどうかです。

ここまで入力したら、[Send]ボタンを押下します。

この画面に切り替わればOKです。

その後、理由など内容を精査されたあと In Reviewになります。理由が納得できるものかつバイナリその他に問題がなければ早ければ1日、遅くとも2-3日以内にはReady For Saleになります。

ちなみに、特急審査がOKの場合は以下の様なメールが届きます。

—————————————————–
Hello ******************,

Thank you for contacting App Store Review to request an expedited review. We have made a one-time exception and will proceed with an expedited review of ******************.

We understand that situations can arise which require more immediate attention and have developed the Expedited Review Process for such situations. We want to remind you that expedited reviews cannot be guaranteed and are provided on a limited basis. Therefore, we may not be able to accommodate additional requests in the future.

If your app is rejected during this review, it is not necessary to request another Expedited Review when you resubmit. Once you revise and resubmit your binary (or metadata, in the case of a Metadata Rejection), your app will be automatically returned to the expedite queue.

Best Regards,

App Store Review
—————————————————–

特急審査がNGの場合は以下の様なメールが届きます。

—————————————————–
Hello ******************,

Thank you for contacting the App Store Review team. We are unable to accommodate your request for an expedited review at this time.

While we do our best to accommodate requests for expedited reviews, and take individual circumstances into consideration, unfortunately we are unable to grant every request due to our volume.

Helping you get your app, update, or bundle to the App Store is very important to us, and we are working hard to process all submissions as quickly as possible. Thank you for your understanding.

Best Regards,

App Store Review
—————————————————–

NGの場合、諦めるのはまだはやいかもしれません。どうしても特急審査が必要な場合は再度特急審査申請を行ってみてください。通常審査と同様に審査員の主観で決まってしまう部分もありますので、タイミングと具体的理由次第で一度却下されてもまだ可能性はあります。ただし、同一デベロッパーアカウント、同一アプリを問わず、本当に切羽詰まっている状況でない限り、特急審査申請を何度も行うのは避けるべきでしょう。

この記事を読んでもよくわからない方、ご自身でやるのがどうしても不安な方、経験豊富な株式会社プライムセオリーが特急審査申請代行を承ります。お気軽にお問い合わせください。