Отчёт о транзакциях в Observer Mode в Flutter SDK
В режиме Observer Adapty SDK не может самостоятельно отслеживать покупки, сделанные через вашу существующую систему. Вам нужно передавать транзакции из стора вручную. Важно настроить это до публикации приложения, чтобы избежать ошибок в аналитике.
Используйте reportTransaction, чтобы явно сообщать Adapty о каждой транзакции.
Не пропускайте отчёт о транзакции!
Если вы не вызовете reportTransaction, Adapty не распознает транзакцию, она не появится в аналитике и не будет отправлена в интеграции.
Если вы используете пейволы Adapty, передавайте variationId при отчёте о транзакции. Это свяжет покупку с пейволом, который её инициировал, и обеспечит корректную аналитику пейволов.
try {
// every time when calling transaction.finish()
await Adapty().reportTransaction(
"YOUR_TRANSACTION_ID",
variationId: "PAYWALL_VARIATION_ID", // optional
);
} on AdaptyError catch (adaptyError) {
// handle the error
} catch (e) {
// handle the error
}Параметры:
| Параметр | Наличие | Описание |
|---|---|---|
| transactionId | обязательный |
|
| variationId | необязательный | Строковый идентификатор варианта. Его можно получить через свойство variationId объекта AdaptyPaywall. |
В режиме Observer, SDK не может самостоятельно отслеживать покупки, сделанные через вашу существующую систему покупок. Вам нужно передавать транзакции из вашего стора или восстанавливать их. Важно настроить это до выпуска приложения, чтобы избежать ошибок в аналитике.
Используйте reportTransaction на обеих платформах для явной передачи каждой транзакции, а также restorePurchases на Android как дополнительный шаг, чтобы Adapty её распознала.
Не пропускайте отчётность о транзакции и восстановление покупки! Если не вызвать эти методы, Adapty не распознает транзакцию — она не появится в аналитике и не будет отправлена в интеграции.
Если вы используете пейволы Adapty, передавайте variationId при отчёте о транзакции. Это свяжет покупку с пейволом, который её инициировал, и обеспечит точную аналитику пейвола.
// every time when calling transaction.finish()
if (Platform.isAndroid) {
try {
await Adapty().restorePurchases();
} on AdaptyError catch (adaptyError) {
// handle the error
} catch (e) {
}
}
try {
// every time when calling transaction.finish()
await Adapty().reportTransaction(
"YOUR_TRANSACTION_ID",
variationId: "PAYWALL_VARIATION_ID", // optional
);
} on AdaptyError catch (adaptyError) {
// handle the error
} catch (e) {
// handle the error
}Параметры:
| Параметр | Наличие | Описание |
|---|---|---|
| transactionId | обязательный |
|
| variationId | необязательный | Строковый идентификатор варианта. Его можно получить через свойство variationId объекта AdaptyPaywall. |
Передача транзакций
- Версии до 3.1.x автоматически отслеживают транзакции в App Store, поэтому передавать их вручную не нужно.
- Версия 3.2 не поддерживает Observer Mode.
Передача транзакций
Используйте restorePurchases, чтобы передать транзакцию в Adapty в режиме Observer Mode, как описано на странице Восстановление покупок в коде приложения.
Не пропускайте передачу транзакций!
Если вы не вызовете restorePurchases, Adapty не распознает транзакцию: она не появится в аналитике и не будет отправлена в интеграции.
Привязка пейволов к транзакциям SDK Adapty не может самостоятельно определить источник покупок, поскольку вы сами их обрабатываете. Поэтому, если вы планируете использовать пейволы и/или A/B-тесты в режиме Observer, вам необходимо в коде мобильного приложения связать транзакцию из стора с соответствующим пейволом. Это важно сделать правильно до релиза приложения, иначе это приведёт к ошибкам в аналитике.
final transactionId = transaction.transactionIdentifier
final variationId = paywall.variationId
try {
await Adapty().setVariationId('transactionId', variationId);
} on AdaptyError catch (adaptyError) {
// handle the error
} catch (e) {
}