我正在使用 Expo 构建 React Native 应用程序并使用 Superwall SDK 管理订阅。我可以使用以下代码成功检索用户的订阅状态:
Superwall.shared
.getSubscriptionStatus()
.then((status) => console.log(status));
这为我提供了当前的订阅状态(例如,活动、非活动),但我需要确定用户购买了哪个特定订阅(例如,每月、每年计划)。
如何使用 Superwall SDK 检索用户在 React Native (Expo) 中购买的特定订阅计划的详细信息?有没有一种方法或途径可以让我获取计划名称、持续时间或有关订阅的其他相关信息等详细信息?
我尝试过的:
我尝试使用
Superwall.shared.getUserAttributes()
检索其他详细信息,但它没有返回与订阅计划相关的任何有用数据。
您可以扩展
SuperwallDelegate
并使用其 handleSuperwallEvent(eventInfo:)
函数从用户完成交易时触发的 transactionComplete
事件中获取所购买产品的产品 id。以下是如何执行此操作的示例:
export class MySuperwallDelegate extends SuperwallDelegate {
handleSuperwallEvent(eventInfo: SuperwallEventInfo) {
switch (eventInfo.event.type) {
case EventType.transactionComplete:
const productId = eventInfo.event.product.productIdentifier;
// Do something with the purchased product id
default:
break;
}
}
// Other methods here
}
const delegate = new MySuperwallDelegate();
Superwall.shared.setDelegate(delegate);
希望有帮助!