在非续订订阅(重新订阅)中续订订阅

时间:2021-03-03 05:32:06

标签: objective-c xcode in-app-purchase non-renewing-subscription

我正在使用此代码在我的应用中订阅一年计划

- (IBAction)BuyBtn:(UIButton *)sender {
    if ([SKPaymentQueue canMakePayments]) {
             SKPayment *payment = [SKPayment paymentWithProduct:RemoveAdsProduct];
            [[SKPaymentQueue defaultQueue] addTransactionObserver:self];
            [[SKPaymentQueue defaultQueue] addPayment:payment];
    }
}

- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray<SKPaymentTransaction *> *)transactions{
    
    for (SKPaymentTransaction *transac in transactions) {
        if (transac.transactionState == SKPaymentTransactionStatePurchased ) {
            [self RemoveAdsAfterBuy:transac.transactionDate];
            NSLog(@"remove ads from the spp");
        }
}

问题是订阅过期时,此方法仍然给我 transactionState = SKPaymentTransactionStatePurchased 并且用户无法再次购买该商品,并且即使用户订阅已过期,它也会显示“您已经购买了该商品”,我需要让用户再次购买商品的解决方案。

0 个答案:

没有答案