gpt4 book ai didi

ios - React Native IAP 自动续订订阅检查过期

转载 作者:行者123 更新时间:2023-12-01 16:21:20 37 4
gpt4 key购买 nike

我正在尝试使用 https://www.npmjs.com/package/react-native-iap/v/4.0.8 在 iOS 上恢复和检测自动续订订阅的结束
通过调用 getAvailablePurchases(),每次调用此函数时,我都会获得不同数量的购买(例如 7,下一次 23,然后是 4..)。这对我来说毫无意义。我知道订阅会更新每月订阅的任何 5 分钟。
我的想法是获取最新购买的商品,然后查看收据中的过期日期。 (目前我正在解析所有这些,这不是最佳实践)。另一件事是我检测到多个具有不同交易收据的事件购买,即使只有一个事件购买。

RNIap.getAvailablePurchases().then((purchases) => {
if(purchases != undefined && purchases.length > 0){
alert(purchases.length + ' purchases');
purchases.forEach((purchase) => {
const receiptBody = {
'receipt-data': purchase.transactionReceipt,
'password': appSubscriptionId
};
RNIap.validateReceiptIos(receiptBody, true).then((result) => { // false for production
let from, to, lastRenewal = '';
if(result.status == 0){ // 0 means receipt is correct..
result.latest_receipt_info.forEach((info) => {
if(this.dateIsInFuture(info.expires_date)){
to = moment.utc(info.expires_date, "YYYY-MM-DD HH:mm:ss").toString();
from = moment.utc(info.original_purchase_date, "YYYY-MM-DD HH:mm:ss").toString();
lastRenewal = moment.utc(info.purchase_date, "YYYY-MM-DD HH:mm:ss").toString();
this.setState({ premium: true, from: from, to: to, lastRenewal: lastRenewal});
}else{
alert('nicht aktiv');
}
});
}
});
});
}else{
alert('No purchases found');
}
});

最佳答案

此功能提供所有可用的购买,还有 receipt: purchases[0].transactionReceipt,行返回最新订阅。我认为它可以解决您的问题。

getAvailablePurchases = async () => {
try {
console.info(
'Get available purchases (non-consumable or unconsumed consumable)',
);
const purchases = await RNIap.getAvailablePurchases();
console.info('Available purchases :: ', purchases);
if (purchases && purchases.length > 0) {
this.setState({
availableItemsMessage: `Got ${purchases.length} items.`,
receipt: purchases[0].transactionReceipt,
});

console.log(this.state.availableItemsMessage);
}
} catch (err) {
console.warn(err.code, err.message);
Alert.alert(err.message);
}
};

关于ios - React Native IAP 自动续订订阅检查过期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59009280/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com