2016-05-29 10 views
4

私のアプリは現在有料アプリです。私は、IAPと祖父(アプリを支払ったすべてのユーザーに)にIAP機能を無料で提供する無料アプリにアプリを変換したいと考えています。私は領収書の検証を使って、(1)アプリのオリジナル購入日を判断することができたと思っていましたが、これはIAPまたは(2)元のアプリケーションバージョンを使用する(アプリケーションバージョンではないビルドバージョンです)しかし、これをtestflightでテストすると、元のバージョン番号は常に「1.0」になります。さまざまな筋によると、これはテストフライトの問題で、リリースアプリはアプリを購入した日にビルドを正しく識別できると言います。 https://forums.developer.apple.com/message/42107#42107私はこれをstackoverflowで扱いませんでした - アプリの購入日を見つける上での質問の多くは、iOS 7での受領確認よりも前か、アプリの最初の購入ではなく、アプリ内購入に適用されます。アプリ(アプリ内購入ではない)を購入した元のビルドまたは日付の決定方法


質問1:私は私のアプリが変換される前に購入ユーザーを識別するために、元のアプリケーションのバージョンを使用することはできますが、私は正しい軌道を下に向かっていかどうかを確認するには3つの関連の質問。つまり、バージョン1.30以前のバージョンを購入したユーザーは、最新のビルド2.0と比較することで識別でき、元のバージョン番号が< 2.0のユーザーには、無料のIAPアクセス機能を許可することができます。

質問2:アプリが公開される前にコードをテストする方法はありますか? testflightを使って?

質問3.既存のユーザーに返済をさせずに(新しいデバイスでアプリをダウンロードしても)、アプリをフリーミアムに変換する方法はありますか?

私は、レシートデータを取得し、私のモデルをテストするためにReceigenを使用 - Receigenは、元のバージョン番号のテストがnilまたはゼロのいずれかであるが、アプリがリリースされたときに、これは固定されている場合は言っていないことを指摘しています。

答えて

6

UPDATE:アップルの技術サポートが確認しました。(1)オリジナルアプリケーションのバージョンは、既存のユーザーを識別するためのフィールドです(2013年に当初のオリジナルの購入日ではありません)。 (2)TestFlightとSandboxは、現在のユーザーにアプリケーション履歴がないため動作しません。バグレポートを提出することをお勧めしました(既に他の人が行ったように)。 TestFlightのアプリケーションレシートはすべてoriginal_app_versionを "1.0"として返しますが、アプリケーションが実稼働状態になると真のバージョンを取得する必要があります。ちょうどあなたが開発に混乱していないことを願っています

+0

あなたはこれをどのようにしたのかに関するコードを提供できますか? – strangetimes

+0

私はReceivedというiOS用のレシート検証コードを生成するためにサードパーティのアプリケーションを購入しました.Xcodeに統合するのはかなり簡単でした。私は領収書の検証(アプリとインアプリの購入)と、アプリの領収書を使って元のアプリケーションのバージョン(バンドルのバージョン)を判断するためにそれを使いました。私は、ユーザーが最初にアプリを購入したかどうかを判断するために支払われたユーザーのために使用バンドル版に対するユーザーの元のバンドル版を比較することができます。ウェブサイト(http://receigen.etiemble.com/)では、このすべてのサンプルコードが提供されています。 – user3000868

関連する問題