はじめまして、iOS Second Stage Advent Calendar 2013に参加ということで初めてQiitaに投稿しました@sabichemともうします。
今回は、In App PurchaseのAuto-renewable subscriptionsを利用したアプリを制作してて、その時に気づいたことを紹介したいと思います。
プログラムソースとかはいろんなサイトに紹介されているので今回は割愛。
#はじめにご注意!
以下の情報は、公式ドキュメントを探しきれず、一部実体験を元に書いています。
誤りがあるかもしれませんのでご注意を。
##テストユーザーで購読管理ができない
アプリのデバッグ中の動作検証ではテストユーザーをiTunes Connectで作成して利用するのは知られているとおりなのですが、このテストユーザーでiOS端末からAppStoreでログインしようとしてもアカウント情報を表示することが出来ません。
以前はできてたようなのですが、やり方が悪いのか、どうしても私の環境でテストユーザーでのアカウント情報の表示が出来ませんでした。
そのため、Auto-renewable subscriptionsで必要な購読管理を確認することが出来ないので、注意が必要です。
じゃあ解約などのテストが出来ないのかと言われるとそうではないのでご安心を。
##テスト中は、購読期間を基に自動で購読状態が変わる
実際に動かしながらテストしていくと、状態が切り替わることに気づきます。
どうも購読期間に比例して短縮された間隔で購読状態が変わるようです。
この時間の正確な値が見つけられませんでした。
公式ドキュメント上には短いサイクルで更新が発生するとしか書いていません。
####2013/12/10 11:41 追記
https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/13_ManagingIn-AppPurchases/ManagingIn-AppPurchases.html#//apple_ref/doc/uid/TP40011225-CH4-SW13
コメントで購読期間に対しての記述場所を教えていただきました。
sora0077@githubさんありがとうございます!
この情報について何かご存じの方は教えていただけると嬉しいです。
では具体的な例を紹介します。
###1ヶ月の購読期間の場合
-
購読登録後、最初の約5分程度で購読の自動更新が行われます。
-
その後、約5分くらいで購読期間が終わります。
-
次の4.の状態になる前に購読を再契約すれば、また自動更新が行われます。
-
そして最後に、購読期間終了から約10分程度(この時間がわかりません)経つと、完全に購読情報がなくなり、初めての購読からテストできるようになります。1へ
という感じで、購読の状態が変わっていき、色々なパターンのテストが出来ます。
購読期間中にアプリを消して入れなおせば復元のテストも可能です。
##番外編 突然、カリフォルニアからの電話。でも日本語で会話出来た!
このアプリを申請して数日後、急にカリフォルニアから電話がかかってきてかなり焦りました。その時は別用で取ることが出来なかったんですが、勇気を出して電話して会話してると、僕が英語でのコミュニケーションがザンネンなのを察知したのか、相手のお姉さんが日本語で会話してくれました。
これにはホント助かりました。
なので、みなさんももしカリフォルニアから電話がかかってきても勇気を出して取りましょう。
(ただ全員が日本語を話せるのかはわからないのでその点はご了承を)
ちなみに、電話を取らないとその後メールで、「電話折り返してきてね」ってくるので電話代を心配しないといけません。
できることなら海外との通話料が安い050系の電話番号を利用するほうがいいですね。
でも申請時に登録した電話番号をチェックしてるのか、違う電話番号で折り返すと受けてくれないかもしれないのでそこも注意です。
僕は申請時に携帯の電話番号を登録して、ケチって050でかけ直したらつながりませんでした。。。
その後メールで050の番号を伝えて無事につながりましたが。
#まとめ
公式ドキュメントに記載されている情報を参考に丁寧に作っておけば、思わぬ挙動で慌てることもないですし、細かいご指摘をAppleさんからいただけるので、ぜひみなさんもトライしてみてください。