React Native SDKのオブザーバーモードでトランザクションを報告する
エージェントツールをインストール
AI コーディングツールから Adapty SDK の連携をまるごと実行できます。 詳細
スキルは SDK 連携、フローとペイウォールの作成、公開前の監査、プレースメントの移行などをカバーします。やりたいことを普通の言葉で伝えれば、エージェントが適切なスキルを選びます。
Observer modeでは、Adapty SDKは既存の購入システムで行われた購入を自動的に追跡することができません。アプリストアからのトランザクションを手動で報告する必要があります。アナリティクスのエラーを避けるため、アプリをリリースする前にこの設定を行うことが重要です。
reportTransactionを使用して、各トランザクションをAdaptyに明示的に報告してください。
reportTransactionの呼び出しを忘れずに!
reportTransactionを呼び出さないと、Adaptyはトランザクションを認識できず、アナリティクスに表示されず、インテグレーションにも送信されません。
Adaptyのフローやペイウォールを使用している場合は、トランザクションを報告する際にvariationIdを含めてください。これにより、購入がそのトリガーとなったフローまたはペイウォールに紐付けられ、正確なアナリティクスが確保されます。
const variationId = paywall.variationId;
try {
await adapty.reportTransaction(transactionId, variationId);
} catch (error) {
// handle the `AdaptyError`
}パラメーター:
| パラメーター | 必須/任意 | 説明 |
|---|---|---|
| transactionId | 必須 |
|
| variationId | 任意 | バリアントの文字列識別子。AdaptyPaywall オブジェクトの variationId プロパティを使って取得できます。 |
| ios.jwsTransaction | 任意 | iOS のみ、SDK 4.3.0 以降。署名済みの StoreKit 2 トランザクション: 検証結果の jwsRepresentation。SDK はこれをそのまま Adapty に送信します。Android ではこのパラメーターは無視されます。 |
iOSで、購入システムからStoreKit 2のトランザクションを受け取った場合は、第3引数にJWSの表現を渡してください:
await adapty.reportTransaction(transactionId, variationId, {
ios: { jwsTransaction },
}); オブザーバーモードでは、Adapty SDKは既存の購入システムで行われた購入を自動的に追跡することができません。アプリストアからトランザクションを報告するか、復元する必要があります。アナリティクスのエラーを防ぐため、アプリをリリースする前に必ずこの設定を行ってください。
各プラットフォームで reportTransaction を使用してトランザクションを明示的に報告し、Adapty がそれを認識できるようにするための追加ステップとして Android では restorePurchases も使用してください。
トランザクションの報告を省略しないでください! これらのメソッドを呼び出さないと、Adapty はトランザクションを認識できず、アナリティクスに表示されず、インテグレーションにも送信されません。
Adapty のフローやペイウォールを使用している場合は、トランザクションを報告する際に variationId を含めてください。これにより、購入がトリガーとなったフローまたはペイウォールに購入が紐づけられ、正確なアナリティクスが保証されます。
if (Platform.OS === 'android') {
try {
await adapty.restorePurchases();
} catch (error) {
// handle the error
}
}
...
const variationId = paywall.variationId;
try {
await adapty.reportTransaction(transactionId, variationId);
} catch (error) {
// handle the `AdaptyError`
}パラメーター:
| パラメータ | 必須/任意 | 説明 |
|---|---|---|
| transactionId | 必須 |
|
| variationId | 任意 | バリアントの文字列識別子。AdaptyPaywall オブジェクトの variationId プロパティから取得できます。 |
トランザクションの報告
- バージョン3.1.x以前は、App Storeのトランザクションを自動的に監視するため、手動での報告は不要です。
- バージョン3.2はオブザーバーモードをサポートしていません。
トランザクションの報告
restorePurchases を使用して、Restore Purchases in Mobile Code ページで説明されているように、オブザーバーモードでトランザクションを Adapty に報告します。
トランザクションの報告をスキップしないでください!
restorePurchases を呼び出さない場合、Adapty はトランザクションを認識できず、アナリティクスに表示されず、インテグレーションにも送信されません。
フローとペイウォールのトランザクションへの関連付け
Adapty SDK は購入の発生元を判断できないため、購入の処理はお客様側で行う必要があります。そのため、オブザーバーモードでフロー、ペイウォール、A/B テストを使用する場合は、アプリストアからの transaction をモバイルアプリのコード内で対応するフローまたはペイウォールに紐付ける必要があります。アプリをリリースする前にこの設定を正しく行わないと、アナリティクスにエラーが生じます。
const variationId = paywall.variationId;
try {
await adapty.setVariationId('transactionId', variationId);
} catch (error) {
// handle the `AdaptyError`
}Request parameters:
| パラメーター | 必須/任意 | 説明 |
|---|---|---|
| transactionId | 必須 | iOS、StoreKit 1 の場合:SKPaymentTransaction オブジェクト。 iOS、StoreKit 2 の場合:Transaction オブジェクト。 Android の場合:文字列識別子(購入オブジェクトの purchase.getOrderId。purchase は課金ライブラリの Purchase クラスのインスタンス)。 |
| variationId | 必須 | バリアントの文字列識別子。AdaptyPaywall オブジェクトの variationId プロパティから取得できます。 |