Iphone IAP for IOS不要求我购买该商品,并给我“;“无产品”;

Iphone IAP for IOS不要求我购买该商品,并给我“;“无产品”;,iphone,ios,Iphone,Ios,我正在尝试在应用商店中为我的新版本应用程序实施IAP。 以下是我所做的一切: 在itunes connect中创建新版本,状态=准备上载 在“管理应用内购买”中添加新产品 创建测试用户帐户 实现流动代码: -(IBAction)audio{ //test the restriction if ([SKPaymentQueue canMakePayments]){ SKProductsRequest *skproductrequiste = [[SKProductsRequest a

我正在尝试在应用商店中为我的新版本应用程序实施IAP。 以下是我所做的一切:

  • 在itunes connect中创建新版本,状态=准备上载
  • 在“管理应用内购买”中添加新产品
  • 创建测试用户帐户
  • 实现流动代码:

         -(IBAction)audio{
     //test the restriction
    if ([SKPaymentQueue canMakePayments]){
    
    SKProductsRequest *skproductrequiste = [[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithObject:@"AudioPlayer"]];
    skproductrequiste.delegate = self;
    [skproductrequiste start];
    }
    
    //after purshsing youcan show
     /*
    detailViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"show_pro"];
    detailViewController.product = @"audio";
    [self.navigationController pushViewController:detailViewController animated:YES];
    */
    
    }
    
    
    
    
     -(void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response{
     SKProduct *validproducte = nil;
     int count = [response.products count];
     if (count >0) {
     validproducte = [response.products objectAtIndex:0];
     SKPayment *pay = [SKPayment paymentWithProductIdentifier:@"AudioPlayer"];
     [[SKPaymentQueue defaultQueue] addTransactionObserver:self];
     [[SKPaymentQueue defaultQueue]addPayment:pay];
     }
     else{NSLog(@"no product");}
     }
    
    
    
    -(void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions{
    for(SKPaymentTransaction *transiction in transactions){
        switch (transiction.transactionState) {
            case SKPaymentTransactionStatePurchasing:
                break;
    
            case SKPaymentTransactionStatePurchased:
                NSLog(@"dobe buying");
                [[SKPaymentQueue defaultQueue]finishTransaction:transiction];
                break;
    
            case SKPaymentTransactionStateRestored:
                break;
    
            case SKPaymentTransactionStateFailed:
                break;
        }
    }
    }
    
  • 在我在真实设备上测试我的应用程序之前,我注销了应用程序商店。然后运行应用程序并按下音频IBAction,但它显示“没有产品”。它甚至没有要求我登录应用商店。 这里有什么问题?此外,我想知道如果客户删除了应用程序并重新安装,我如何才能节省客户的购买费用

    提前谢谢

  • 如果你在那里尝试,IAP在模拟器上不起作用
  • 请求产品列表不需要登录
  • 确保您的产品ID与您在“管理应用内购买”中输入的完全相同。如果不匹配,它将返回“0”
  • 有时IAP“沙箱”关闭,不返回任何项目。查看苹果iOS开发者论坛的IAP部分,看看是否有其他人看到了这个问题

  • 您是否更新了帐户中的合同、税务和银行信息。否则,您将无法获得您的产品信息


    谢谢您

    您的产品标识符是错误的,它一定像AZ7DXZQEDV.com.tmd.xyzyes,我知道,但出于安全原因,请在此处更改它。我的实际产品标识符是这样的:com.*****.audioplayer