2016-04-30 12 views
2

私は自分の端末で新しいアプリをテストしていますが、今日はアプリ内購入のStoreKitを統合しました。iOSアプリが起動するたびにパスワードを尋ねます

問題は、アプリを起動するたびにサンドボックスアカウントのパスワードを要求してしまうことです。ここでは、問題の詳細を説明します。

  1. 初めてアプリを起動したとき、すべてが期待通りに機能しました。アプリ内購入を完了している間は問題はありません(私のサンドボックスユーザーでは、[email protected]と呼んでください)。
  2. アプリを停止し、[購入を復元]ボタンを統合しました。残念ながら、完了時に「finishTransaction」を追加するのを忘れていました(これが問題であるかどうかはわかりません)。
  3. これ以降、私はアプリを起動するたびに、[email protected]のパスワードを要求し続けます。私がAFTER何をしたか、...私が間違っているプログラムで何かをキャストしてるよう

StoreKitは、それがrootViewではありませんビューのものだやって起動するので、私は除外しましたか?

  1. (再起動後に)削除されたデバイスからアプリを再インストール
  2. 削除されたサンドボックスユーザー(と新しいものを作成した - のは[email protected]を言わせて - )。新しいIAPを取得するためにNEWアカウントを正常に使用しました。
  3. 問題がまだそこにある私のデバイス
  4. のiTunesに接続

から削除IAPの設定をクリア。質問されたパスワードは[email protected](最初のテストアカウントです)です。

+0

に電話してください。「iTunes&App Store」セクションでtestuser1としてログインしてみてください。 iTunesConnectでtestuser1を再作成する必要があるかもしれません。 testuser1としてログインしたら、ログアウトします。 – GlennRay

+0

@GlennRayそれは不可能です。 iTunes Connectは、その電子メールのApple IDがすでに存在すると言っています...しかし、私はテストユーザーアカウントでログイン/ログアウトしましたが、何も変わりません。 – mrgingles

答えて

3

「購入を復元する」ボタンが統合されています。残念ながら、完了時に「finishTransaction」を追加するのを忘れました(これが問題であるかどうか不明)

これは本当に問題です!

Store Kitは、トランザクションがキューに残っている場合は、常に再認証を要求します。これらの取引を取り除くには、

for transaction in SKPaymentQueue.defaultQueue().transactions { 
    SKPaymentQueue.defaultQueue().finishTransaction(transaction) 
} 
関連する問題