gpt4 book ai didi

ios - SKProductsRequest 在使用 iOS 7.0.3 启动时崩溃应用程序

转载 作者:可可西里 更新时间:2023-11-01 04:52:30 24 4
gpt4 key购买 nike

关于我们应用程序崩溃的报告从昨晚开始泛滥成灾。许多升级到 7.0.3 的用户在启动时遇到应用程序崩溃。分析 iTunes 崩溃日志是由于该应用程序因启动时间过长而被杀死。显然,检查可用应用内购买的调用是导致崩溃的原因。我们从销售中删除了所有应用内购买,现在用户报告该应用正在运行。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 

// earlier stuff...
[self requestProductData]; // ask for in-app purchase localized prices/names
[[SKPaymentQueue defaultQueue] addTransactionObserver:self]; // process any pending transactions

// more stuff...
}

- (void) requestProductData
{
NSMutableSet * prodSet = [[[NSMutableSet alloc] initWithCapacity:10] autorelease];

StoreItem * curStoreItem;
for(int j=0; j<[storeArr count]; j++) {
curStoreItem = [storeArr objectAtIndex:j];
[prodSet addObject:curStoreItem.productID];
}


SKProductsRequest *request= [[SKProductsRequest alloc] initWithProductIdentifiers:prodSet];
request.delegate = self;
[request start];
}

在 didFinishLaunchingWithOptions 中,我们调用请求产品数据。我们是否需要在另一个线程中执行此操作?还有其他人遇到这个问题吗?

最佳答案

我们通过两种方式解决了这个问题,解决即时的实时应用程序崩溃,然后实际解决触发它的编码错误。

iOS 7.0.3 更新增加了对返回应用内产品数据的苹果服务器的调用延迟。由于我们从 didFinishLaunching 发出产品请求调用,因此我们的应用程序因启动速度不够快而被终止。

为了解决实时应用程序崩溃的问题,我们暂时停止销售该应用程序的所有应用程序内购买。同时,我们将产品数据请求移至展示应用内店面之前——这是正确的程序化解决方案,正如 maddy 所建议的那样。

关于ios - SKProductsRequest 在使用 iOS 7.0.3 启动时崩溃应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19710264/

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