gpt4 book ai didi

ios - SKStoreProductViewController 的奇怪行为

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

我正在尝试使用 SKStoreProductViewController 在我的应用程序中以模态方式打开 App Store。我在网上看过很多例子,人们有两种方法可以做到这一点。

 SKStoreProductViewController *storeController = [[SKStoreProductViewController alloc] init];
[storeController setDelegate:self];
//set product parameters
//must be a number wrapped in a string
NSDictionary *productParameters = @{ SKStoreProductParameterITunesItemIdentifier : @"36372693196"};
[storeController loadProductWithParameters:productParameters completionBlock:^(BOOL result, NSError *error) {
if (result) {
//show
[self presentViewController:storeController animated:YES completion:nil];
}else {
NSLog(@"ERROR WITH STORE CONTROLLER %@\n", error.description);
//redirect to app store
//[[UIApplication sharedApplication] openURL:[[self class] appStoreURL]];
}
}];

如果我这样做^^什么都不会发生。永远不会执行 block 中的 if (result) 或 else 语句。

我还看到有人为完成 block 传入 nil,并在这之后立即以模态方式呈现 View Controller ,如下所示:

 SKStoreProductViewController *storeController = [[SKStoreProductViewController alloc] init];
[storeController setDelegate:self];
//set product parameters
//must be a number wrapped in a string
NSDictionary *productParameters = @{ SKStoreProductParameterITunesItemIdentifier : @"36372693196"};
[storeController loadProductWithParameters:productParameters completionBlock:nil];
[self presentViewController:storeController animated:YES completion:nil];

当我呈现 View Controller 时,loadProductWithParameters block 内的代码将执行。在这一点上我非常困惑。如果 block 在我呈现之后才运行,我该如何检查成功或失败。

最后,我了解到您应该在后台线程中执行 loadProductWithParameters。我也试过了。第二个选项是唯一一个调出模态的选项 - 带有来自模拟器和设备的无法连接到 iTunes 消息。我尝试了多个应用程序 ID。到底是怎么回事?我如何让它工作?

最佳答案

您是第一个代码,应该可以正常工作。但是在 iPhone Simulator 中,iTunes Store 经常返回错误。

我已经在 iPhone 上测试了您的第一个代码(使用其他标识符)并且工作正常,但是您提供的 SKStoreProductParameterITunesItemIdentifier (36372693196) 似乎不正确。

关于ios - SKStoreProductViewController 的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17871920/

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