SKStoreProductViewController没有显示任何内容

时间:2015-06-10 18:15:03

标签: ios swift storekit

我试图从我的应用内部展示App Store表单:

https://gist.github.com/valeIT/bf9b357d8ef470fc559c

我的ViewController符合SKStoreProductViewControllerDelegate。似乎问题出现在" loadProductWithParameters"因为我尝试从完成块之外调用presentViewController并且它呈现和解散就好了,只是它完全是空的(白色屏幕)。我尝试将字符串或nsnumber作为字典传递,但没有任何变化。有什么想法吗?

3 个答案:

答案 0 :(得分:1)

我知道这个问题很疯狂,但我遇到了同样的问题。

根据文档,您要点的唯一部分是,ml-auto的值应为SKStoreProductParameterITunesItemIdentifier类型,但您提供了NSNumber。尝试将其更改为

String

看看是否有效。

答案 1 :(得分:0)

如果没有要加载的产品,SKStoreProductViewController loadProductWithParameters似乎无声地失败...如果产品是Mac应用程序或仅限iPad,并且您要求从iPhone请求它,或者您要求来自iPad的iPhone专用应用程序,loadProductWithParameters永远不会返回。

ol'久经考验的UIApplication openURL:使用iTunes URL的技术可以在每种情况下都可靠地响应 - 即使对于Mac应用程序 - 通过浏览器:

NSString *itunesiOSURL = @"https://itunes.apple.com/us/app/myiOSapp/id123456789?mt=8";
NSString *itunesMacURL = @"https://geo.itunes.apple.com/us/app/myMacApp/id123456789?mt=8";
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:itunesURL]];

答案 2 :(得分:0)

SKStoreProductViewController类不支持子类化或嵌入,必须按原样使用。

重要

如果使用iOS 13 SDK进行编译,则尝试实例化SKStoreProductViewController的子类将导致runtimeException

Documentation