Android SDKのObserverモードでトランザクションを報告する
エージェントツールをインストール
AI コーディングツールから Adapty SDK の連携をまるごと実行できます。 詳細
スキル対応の任意のエージェントにインストールできます。更新するには npx skills update を実行してください。
インストール後、プロジェクトでスキルを実行します:
Observerモードでは、Adapty SDKは既存の購入システムを通じて行われたアプリ内課金を自動的に追跡できません。アプリストアからのトランザクションを手動で報告する必要があります。分析のエラーを防ぐために、アプリをリリースする前にこの設定を行うことが重要です。
reportTransaction を使用して、各トランザクションをAdaptyに明示的に報告します。
トランザクションのレポートを省略しないでください!
reportTransaction を呼び出さないと、Adapty はトランザクションを認識できず、アナリティクスに表示されず、インテグレーションにも送信されません。
Adapty のペイウォールを使用している場合は、トランザクションをレポートする際に variationId を含めてください。これにより購入がトリガーしたペイウォールに紐付けられ、正確なペイウォールのアナリティクスが保証されます。
val transactionInfo = TransactionInfo.fromPurchase(purchase)
Adapty.reportTransaction(transactionInfo, variationId) { result ->
if (result is AdaptyResult.Success) {
// success
}
}パラメーター:
| パラメータ | 必須/任意 | 説明 |
|---|---|---|
| transactionInfo | 必須 | 購入から取得した TransactionInfo。購入はビリングライブラリの Purchase クラスのインスタンスです。 |
| variationId | 任意 | バリアントの文字列識別子。AdaptyPaywall オブジェクトの variationId プロパティから取得できます。 |
TransactionInfo transactionInfo = TransactionInfo.fromPurchase(purchase);
Adapty.reportTransaction(transactionInfo, variationId, result -> {
if (result instanceof AdaptyResult.Success) {
// success
}
});パラメーター:
| パラメーター | 必須/任意 | 説明 |
|---|---|---|
| transactionInfo | 必須 | 購入から取得したTransactionInfo。ここでの購入は、billing libraryのPurchaseクラスのインスタンスです。 |
| variationId | 任意 | バリアントの文字列識別子。AdaptyPaywallオブジェクトのvariationIdプロパティから取得できます。 |
オブザーバーモードでは、Adapty SDK は既存の購入システムを通じて行われた購入を単独で追跡することができません。アプリストアからトランザクションを報告するか、復元する必要があります。アナリティクスのエラーを避けるために、アプリをリリースする前にこれを設定することが重要です。
restorePurchases を使用して、トランザクションを Adapty に報告します。
購入の復元処理をスキップしないでください!
restorePurchases を呼び出さない場合、Adapty はトランザクションを認識できず、アナリティクスにも表示されず、インテグレーションにも送信されません。
Adapty のペイウォールを使用している場合は、setVariationId メソッドを使ってトランザクションを購入のきっかけとなったペイウォールに紐付けてください。これにより、正確なアナリティクスのために購入が正しくトリガーされたペイウォールに帰属されます。この手順は Adapty のペイウォールを使用している場合のみ必要です。
Adapty.restorePurchases { result ->
if (result is AdaptyResult.Success) {
// success
}
}
Adapty.setVariationId(transactionId, variationId) { error ->
if (error == null) {
// success
}
}パラメーター:
| パラメーター | 必須/任意 | 説明 |
|---|---|---|
| transactionId | required | 購入の文字列識別子(purchase.getOrderId)。ここでの purchase は、請求ライブラリの Purchase クラスのインスタンスです。 |
| variationId | required | バリアントの文字列識別子。AdaptyPaywall オブジェクトの variationId プロパティから取得できます。 |
Adapty.restorePurchases(result -> {
if (result instanceof AdaptyResult.Success) {
// success
}
});
Adapty.setVariationId(transactionId, variationId, error -> {
if (error == null) {
// success
}
});パラメータ:
| パラメータ | 必須/任意 | 説明 |
|---|---|---|
| transactionId | 必須 | 購入のString識別子(purchase.getOrderId)。ここでいう購入は、billing libraryのPurchaseクラスのインスタンスです。 |
| variationId | 必須 | バリアントのString識別子。AdaptyPaywallオブジェクトのvariationIdプロパティから取得できます。 |
トランザクションの報告
restorePurchases を使って、オブザーバーモードでトランザクションを Adapty に報告します。詳しくは モバイルコードでの購入リストア ページをご覧ください。
トランザクションの報告を省略しないでください!
restorePurchases を呼び出さないと、Adapty はトランザクションを認識できず、アナリティクスに表示されず、インテグレーションにも送信されません。
ペイウォールとトランザクションの関連付け
AdaptyのSDKは購入のソースを判断できないため、購入処理はお客様自身が行うことになります。そのため、Observerモードでペイウォールやア/B テストを使用する場合は、アプリストアから発生したトランザクションをモバイルアプリのコード内で対応するペイウォールに関連付ける必要があります。これはアプリをリリースする前に正しく設定することが重要です。設定しないと、アナリティクスにエラーが生じます。
Adapty.setVariationId(transactionId, variationId) { error ->
if (error == null) {
// success
}
}リクエストパラメータ:
| パラメータ | 必須/任意 | 説明 |
|---|---|---|
| transactionId | 必須 | 文字列識別子(purchase.getOrderId)。ここでの purchase は、課金ライブラリの Purchase クラスのインスタンスです。 |
| variationId | 必須 | バリアントの文字列識別子。AdaptyPaywall オブジェクトの variationId プロパティから取得できます。 |
Adapty.setVariationId(transactionId, variationId, error -> {
if (error == null) {
// success
}
});
| パラメーター | 必須/任意 | 説明 |
|---|---|---|
| transactionId | required | 文字列識別子(purchase.getOrderId)。ここで purchase は billing ライブラリの Purchase クラスのインスタンスです。 |
| variationId | required | バリアントの文字列識別子。AdaptyPaywall オブジェクトの variationId プロパティから取得できます。 |