- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我在我的应用程序中使用 SKStoreProductViewController
。它显示正确,但有几秒钟的延迟,这会降低用户体验。
我的代码有问题吗?或者我应该通知用户 VC 正在加载吗?因为现在人们可以相信在按下按钮后什么都没有发生(这会触发以下代码):
-(void)launchApp:(id)sender {
// Recall on main thread if necessary
if (![NSThread isMainThread]) {
[self performSelectorOnMainThread:@selector(launchApp:)
withObject:sender
waitUntilDone:NO];
return;
}
// Initialize Product View Controller
SKStoreProductViewController *storeProductViewController = [[SKStoreProductViewController alloc] init];
// Configure View Controller
[storeProductViewController setDelegate:self];
[storeProductViewController loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier : @"*********"}
completionBlock:^(BOOL result, NSError *error) {
if (error) {
NSLog(@"Error %@ with User Info %@.", error, [error userInfo]);
} else {
// Present Store Product View Controller
[self presentViewController:storeProductViewController animated:YES completion:nil];
}
}];
}
最佳答案
延迟是因为您在产品加载成功后呈现 viewController。
您可以将调用 presentViewController:animated:completion:
放在产品加载后调用的 block 之外。在这种情况下, Controller 将显示为空,并在产品加载后填充。
类似的东西:
SKStoreProductViewController *storeProductViewController = [[SKStoreProductViewController alloc] init];
// Configure View Controller
[storeProductViewController setDelegate:self];
[storeProductViewController loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier : @364709193}
completionBlock:^(BOOL result, NSError *error) {
if (error) {
NSLog(@"Error %@ with User Info %@.", error, [error userInfo]);
} else {
}
}];
// Present Store Product View Controller
[self presentViewController:storeProductViewController animated:YES completion:nil];
或者您可以创建一个“弹出式” View ,在 Controller 加载其内容时显示一个事件指示器。
或者你使用[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
有几种方法可以解决这个问题。
关于ios - SKStoreProductViewController 出现延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16546431/
找不到与此相关的任何信息...如果我从应用程序内启动 SKStoreProductViewController 实例,并向其提供该应用程序的 iTunes URL,它是否允许应用程序更新?换句话说,我
我正在尝试呈现 SKStoreProductViewController 没有 动画的实例。 StoreKit View Controller 的代码片段来自: objective-C SKStore
我已经为 SKStoreProductViewController 实现了一个委托(delegate)。我将该 View Controller 添加到关键窗口的 View Controller 中。我
我正在尝试使用 SKStoreProductViewController 在我的应用程序中以模态方式打开 App Store。我在网上看过很多例子,人们有两种方法可以做到这一点。 SKStorePr
我正在使用 SKStoreProductViewController 来实现“更多应用”功能,但是当我点击列表中的产品时,我只看到空白屏幕,控制台中也有警告: Could not request vi
我刚刚添加了 SKStoreProductViewController 并从我自己的 UIViewController 中呈现它。如果我将设备旋转到横向模式 - 只有标题适合宽度,其他部分被截断 ..
我在我的应用程序中使用 SKStoreProductViewController。它显示正确,但有几秒钟的延迟,这会降低用户体验。 我的代码有问题吗?或者我应该通知用户 VC 正在加载吗?因为现在人们
我正在尝试从我的应用中展示 App Store 表: https://gist.github.com/valeIT/bf9b357d8ef470fc559c 我的 ViewController 符合
我用适用于 iOS 9 的 Action Extension 制作了一个快速示例项目。它在我包含的应用程序中正常工作,但在我的扩展程序中不起作用。我在两个 View Controller 中使用了相同
当您在您的应用程序中呈现 SKStoreProductViewController 时,网络状况不佳或处于飞行模式时,不会呈现模态视图(因为它当然可以从应用商店检索数据),并且在代表。 那么在这种情况
我正在使用 SKStoreProductViewController 来显示所选应用程序的 App Store View 。单击“安装”时,按钮内显示进度条但未安装应用程序。我知道我并没有真正连接到
在我的应用中,我使用了一些广告 SDK。在其中许多情况下,当用户点击广告下载应用程序时,SDK 使用 SKStoreProductViewController 使用户能够获取应用程序。商店页面以模态视
我正在展示一个 SKStoreProductViewController,并遇到一些约束冲突。我可以验证以前取消激活的约束是否正在重新激活。我不明白为什么会这样。 见下文,标记为*** ———> P
在 iOS 6 中,引入了 SKStoreProductViewController 以在应用程序中显示 iTunes Store 项目,因此用户无需离开应用程序即可查看它们。 到目前为止,我还没有找
使用下面的代码,SKStoreProductViewController 可以呈现应用程序的描述。 当我触摸“免费”按钮时,它显示“安装应用程序”。然后我触摸“安装应用程序”,一个进度条显示在应用程序
我发现在 iOS 8 设备(真实设备)上运行: [storeProductViewController loadProductWithParameters:@{SKStoreProductParame
跟进此线程 targeting specific app with iOS in app purchase ,所有启动都很好,我看到了目标应用程序,但是当我按下“取消”(因为这是沙盒中唯一真正的选择)
在 iOS7 中,当出现 SKStoreProductViewController 时,它会显示状态栏,因此很难点击 [Cancel] 按钮。 可以禁用吗? 在我的应用中,UIViewControll
我目前正在通过 dispatch_async 调用 storeViewController loadProductWithParameters。是否可以设置一个超时值,以便它只尝试获取 X 秒的结果然
在我的应用程序中,我展示了更多带有 SKStoreProductViewController 的应用程序,但 Apple 商店审核团队拒绝了它,原因是: "An error message displ
我是一名优秀的程序员,十分优秀!