そろそろiPhone実機での書き出しをしたくなってきたので、ちょっと前に切れてしまったiOS developer program membership(年会費)を更新することにしました。
予め、クレジットカードを用意しておきましょう。
まずは、iOS developer centerを開きます。
年会費が切れている場合は、親切なことに警告が出ています。この警告の文章に、更新するためのページへジャンプするリンクがあるのでクリックします。
「iOS Developer Program」をチェックして「Continue」します。
更新するIDなどに間違いが無いことを確認して「Continue」をクリックします。
購入するプログラムに間違い無いことを確認して「Add to cart」をクリックします。
ここからはストアへ移ります。
日本語なので安心です。
「注文手続きへ」をクリックします。
配送先を確認して「続ける」をクリックします。
過去に登録した内容によっては、修正が必要な場合があります。
(私の場合は、フリガナを修正する必要がありました)
クレジットカードの3桁のセキュリティコードを入力して「続ける」をクリックします。
「〜同意します」にチェックをして、「続ける」をクリックします。
支払い方法などの情報を最後にもう1度確認して、「ご注文の確定」をクリックします。
これで年会費を払うことになります。
10分も経たずに注文完了メールが届きます。
但し、この状態ではまだ「iOS Developer Program Membership Expired」です。
初めて年会費を払った時も、この後が長かったのを覚えています。
実際に更新されるまで気長に待つしかありません。
<追記>——
AppleからDeveloper programの支払いサンキューメールが届き、AppStoreにアプリが復活しました。
注文完了メールが届いたのは土曜日の21:06、支払いサンキューメールが届いたのは月曜日の02:26なので、復活まで1日以上かかったことになります。
</追記>——
<追記2>——
実は、これで終わりではありませんでした。
この後、iTunesconnectを見ると、トップページの一番上に三角の「!」マークで警告が表示されていました。
何やら、「Contracts, Tax, and Banking module」を更新しろという内容でした。
早速、Contracts, Tax, and Bankingのボタンを押して飛んでみると、「Request」や「Setup」と書かれた青いボタンが見えます。過去に契約内容の更新に同意しろとかでやったことがあるので、とりあえず青いボタンを押して対応していきます。
基本的には、こんな感じで同意にチェックをして「Submit」するだけで終わります。
(チェックボックスが画面左端にあって分かり難いときもあるので要注意です)
各「Setup」の方は、過去に設定した契約内容をプルダウンで再設定して行くだけです。過去の設定時と同様なので、再び「iPhone使いへの道」さんのブログに助けられました。
問題は、BankInfoの所でした。これが、「Select one」と書かれたプルダウンを開いても中身は空なのです。
「The banking information from the iOS Paid Applications contract will be transferred to this contract. You don’t need to set up new banking information.」という赤文字のエラーが出るので恐らく内容的には問題ないはずなのですが、そのまま「Save」しようとしても変更が無いから出来ないとエラーが出ます。さらに、「Cancel」してもStatus欄が「Pending bank info」となり、iTunesconnectのトップに戻っても例の更新しろ警告が出たままです。
Select oneプルダウンの横に「Edit/Add〜」で新しく情報を追加できそうなので、現状のものを別タブで開いたまま新しいタブで入力し直してみましたが、Select oneには現れず、状況は変化しません。
こんな時こそ、Apple DeveloperのWorldwide telephone supportだと電話してみました。過去に躓いた際、何度も助けてもらっています。ちなみに、電話したのは日本の祝日でしたが大丈夫でした。
で、教えていただいた内容は「ブラウザをSafariかFirefoxでお試しください」とのことでした。どうやら私が普段使っているChromeでは問題が起き易いとのことです。
にわかに信じ難かったのですが、ダメ元でSafariでiTunesconnectを開いたところ、既に警告は消えている状態でした。また、Safariを閉じてChromeを開き直すと、こちらも警告とSetupやPendingが消えていました。キャッシュかクッキーの問題なのでしょうか。。。拍子抜けなくらいアッサリと解決しました。
ちなみに、本来はiTunesconnectについては日本の電話サポート対象外とのことでしたが、今回も食い下がる私にサポートの方はとても親切に教えてくださいました。
iAdや有料アプリを設定している人は、このBank infoが解決してないと支払いが行われないとのことなので、スルーしないで解決しておいて良かったです。
自分で解決しようと4〜50分近く試して時間を無駄にしてしまったので、困ったら先ずは電話ですね。
</追記2>——
<追記3>——
まだまだXcodeの方で続きがありました。
まず、前回アップデートした時の状態のままRunすると、以下のようなエラーが出ました。
—
「Code Sign error: The identity ‘iPhone Developer: xxx xxxx (xxxxxx)’ doesn’t match any valid, non-expired certificate/private key pair in your keychains」
—
まぁ、これはexpiredとkeychainsという単語から、証明書やらプロビジョニングプロファイルが古いままなんだと気付きます。
キーチェーンの「証明書」を見ると、関連してそうなファイルに×印が付いています。
次にiOS developer centerの「iOS Provisioning Portal」で「Certificate」の項目を見ると、「You don’t have〜」と書かれ、かつてアップされていた証明書が消されています。
ここも復活の手続きが必要そうです。
過去にも初回のアプリ申請で経た作業ですが、今回はググって見つけたコチラのページ(「Art Inside」)を参考に証明書とプロビジョニングプロファイルの作成を行いました。
これらを作成後、Organizerの「Devices」>「LIBRARY」>「Provisioning Profiles」を開き、画面右下にある「Refresh」でプロビジョニングプロファイルを更新します。
これで完璧に更新されただろうとRunしたところ、今度は「CodeSign error: code signing is required for product type ‘Application’ in SDK ‘iOS 6.1’」というエラーが出ました。このエラーは過去に遭遇しているので、今回は焦りません。
確かに、Xcodeの「PROJECT」>「Build Settings」>「Code Signing Identity」と「TARGETS」>「Build Settings」>「Code Signing Identity」は変更していなかったので、こちらを過去の対応と同じように「iPhone Distribution」で指定しました。
ところが、、、事態は変わりません。ここから少し焦り始めます。
iTunesconnectの設定の際、自分で何とかしようとして時間を無駄にしたので、今回は素直にググって再度確認することにしました。すると、こちらのページ(「ゆとりsolve」)に、「Code Signing Identityのany iOS SDKをでデベロッパーに変更すればおk」と書かれていました。自分の時とは逆の対応ですが、「きっと1度Expireされたから最初に戻さなければならないのでは」という勝手な解釈で試してみました。
Xcodeの「PROJECT」>「Build Settings」>「Code Signing Identity」と「TARGETS」>「Build Settings」>「Code Signing Identity」を全て「iPhone Developer」に変更です。
ちなみに、Edit SchemeのRunが「Debug」になってないと、以下のWarningが出るので「Debug」にしておきました。
—
warning: Application failed codesign verification. The signature was invalid, contains disallowed entitlements, or it was not signed with an iPhone Distribution Certificate. (-19011)
—
Runしてみると、、、お〜!見事に書き出しができました。
こんなに手間がかかるなら、年会費が切れる前に更新しておく方が良さそうですね。。。
</追記3>——