我已在我的应用程序中实现了应用内购买 . 在这个应用程序中,一旦用户在应用程序中注册,他需要订阅使用我的应用程序主要功能 . 这是一个自动续订订阅 .

我的问题是,如果用户A在他的ios设备中使用他的苹果ID进行订阅,那么他就会从应用程序中退出 . 现在,他再次在我的应用中注册了新的ID,如B,看到应用内购买视图,只需点击“恢复”按钮即可 . 这是恢复的代码:

- (void)restoredPayment:(SKPaymentTransaction *)transactions{

    if ([transactions.payment.productIdentifier isEqualToString:monthlySubscription]) {

        NSURL *receiptURL = [[NSBundle mainBundle] appStoreReceiptURL];
        NSError *receiptError;
        BOOL isPresent = [receiptURL checkResourceIsReachableAndReturnError:&receiptError];

        if (isPresent)
        {
            NSData *receiptData = [[NSData alloc] initWithContentsOfURL:[[NSBundle mainBundle] appStoreReceiptURL]];

            BOOL isSubscriptionPeriodValid = [[DataBase sharedInstance] getSubscriptionStatusFromAppleWithReceipt:receiptData];
            if (isSubscriptionPeriodValid)
            {
                 [[AppDelegate sharedAppDelegate].arrayConacatResponse addObject:[NSString stringWithFormat:@"restoredPayment SubscriptionPeriodValid"]];

                UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"CS Remove view valid period" message:@"" delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil] ;
              //  [alert show];

                [self removeFromSuperview];
            }else{
                // Here I want to stop

                [CommonUtilities showAlertWithTitle:@"" Message:@"You have no transaction to restore."];

            }
        }
    }

    [ProgressHUD dismiss];
}

因此,无需订阅新用户只需还原并可以使用完整的应用程序功能 . 因为Apple会对该用户的apple id进行订阅 . 他并没有改变他的苹果身份 .

任何人都可以建议我如何管理它并限制新用户恢复并说出先订阅 .

谢谢