SKProductsRequest无法在iOS 11模拟器中运行

SKProductsRequest无法在iOS 11模拟器中运行,第1张

概述在iOS模拟器中购买是众所周知的“不,这是不可能的”.但是,通过向在iOS 11之前工作的SKProductsRequest提供产品标识符来检索SKProduct信息. 在SKProductsRequestDelegate中我收到以下错误:Error Domain = SSErrorDomain Code = 0“无法连接到iTunes Store” 根据我的发现,当产品标识符错误或Apple S 在iOS模拟器中购买是众所周知的“不,这是不可能的”.但是,通过向在iOS 11之前工作的SKProductsRequest提供产品标识符来检索SKProduct信息.

在SKProductsRequestDelegate中我收到以下错误:Error Domain = SSErrorDomain Code = 0“无法连接到iTunes Store”
根据我的发现,当产品标识符错误或Apple SandBox服务器关闭时,可能会发生这种情况.然而事实并非如此,因为产品在iOS 10上运行良好.

我对产品提取的实现与Apple guides中的实现非常相似

是否有其他人遇到此问题或找到解决方案?

当应用程序在物理设备上运行时,产品正在正常加载.
我正在使用Xcode 9.0.

解决方法 同样在这里.如果您在失败时重复请求,请再试一次.在无数次重复之后,它将最终返回产品.重复可能需要10次,50次甚至超过100次.

这就是我的代码现在的样子:

- (voID)inquireProducts {    _availableProducts = [NSMutableArray arrayWithCapacity:0];    NSURL *url = [[NSBundle mainBundle] URLForResource:@"productIDs" withExtension:@"pList"];    kNownProductIDentifIErs = [NSArray arrayWithContentsOfURL:url];    if (kNownProductIDentifIErs && kNownProductIDentifIErs.count) {        // Keep a strong reference to the product request        productsRequest = [[SKProductsRequest alloc]initWithProductIDentifIErs:[NSSet setWithArray:kNownProductIDentifIErs]];        productsRequest.delegate = self;        [productsRequest start];    }}#pragma mark SKProductsRequestDelegate method- (voID)productsRequest:(SKProductsRequest *)request dIDReceiveResponse:(SKProductsResponse *)response {    for (SKProduct *product in response.products) {        [_availableProducts addobject:product];    }    productsRequest = nil;    [[NSNotificationCenter defaultCenter] postNotificationname:IAPPurchaseNotification object:self];}- (voID)request:(SKRequest *)request dIDFailWithError:(NSError *)error {    if (request == productsRequest) {        static int count = 0;        NSLog(@"Request %@ Failed on %d. attempt with error: %@",request,++count,error);        productsRequest = nil;        // try again until we succeed        [self inquireProducts];    }}
总结

以上是内存溢出为你收集整理的SKProductsRequest无法在iOS 11模拟器中运行全部内容,希望文章能够帮你解决SKProductsRequest无法在iOS 11模拟器中运行所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1100111.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存