appStoreReceiptURL 有啥用?

Posted

技术标签:

【中文标题】appStoreReceiptURL 有啥用?【英文标题】:What is appStoreReceiptURL for?appStoreReceiptURL 有什么用? 【发布时间】:2013-11-10 01:17:15 【问题描述】:

我刚刚向我的 iTunes 添加了一个 IAP,并添加了一个测试用户,一切看起来都很好,并且 IAP 已为我的游戏启用。在 Apple Docs 中,它说将此代码放在 AppDelegate 中

 // Locate the receipt
    NSString *receiptPath = [[[NSBundle mainBundle] appStoreReceiptURL] path];

    // Test whether the receipt is present at the above path
    if (![[NSFileManager defaultManager] fileExistsAtPath:receiptPath]) 

        NSLog(@"Exit");
        // Validation fails
        exit(173);
    

我不太明白这段代码的意义是什么?当我在其中运行包含该代码的游戏时,它会立即退出,我做错了什么?

【问题讨论】:

developer.apple.com/library/ios/releasenotes/General/… 谢谢,但我仍然不知道它是做什么用的,或者为什么我运行它时它不起作用。 【参考方案1】:

appStoreReceiptURL 是一种用于提供执行收据验证所需收据的方法 (Docs)

您描述的显示exit(173) 代码的方法是特定于OSX 的,不应在iOS7 上使用。如果无法在路径中加载收据,使​​用此代码退出应用程序将使 OSX 尝试刷新收据。

对于 iOS7(在 iOS7 之前不可用),您应该改用 SKReceiptRefreshRequest 类。这将强制刷新收据。

【讨论】:

以上是关于appStoreReceiptURL 有啥用?的主要内容,如果未能解决你的问题,请参考以下文章

dowhile(0) 有啥用? [复制]

DataContext 有啥用?

UnmanagedMemoryStream 有啥用?

有啥用?和:[重复]

XlaBuilder 有啥用?

构造函数有啥用? [关闭]