iTunes应用程序被拒绝:缺少提供订阅内容的功能

时间:2016-08-05 08:43:14

标签: ios in-app-purchase itunesconnect

我第一次在iOS应用中实现了应用内购买功能。我正确地通过了所有测试阶段并提交了应用程序进行审核,但由于这个原因它被拒绝了:

  

您的应用提供内容订阅,但没有适当的机制来支持用户在其所有iOS设备上都可以使用订阅内容的要求。

要解决我必须解决的问题:

  

包括可选的用户注册功能,以向所有用户的iOS设备提供订阅内容。

我的应用不需要用户注册,所以我想知道它是否真的有必要。 假设答案是"是的!",我不知道我到底要做什么。 用户注册后,我需要在主机上保存收据数据,然后在用户更换设备时检索数据吗?

实际上我以这种方式获得收据数据:

func validateReceipt() {
    let receiptUrl = NSBundle.mainBundle().appStoreReceiptURL
    let isSandox = receiptUrl?.absoluteString.containsString("sandboxReceipt")
    if let receipt: NSData = NSData(contentsOfURL: receiptUrl!) {
        let receiptdata: NSString = receipt.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue: 0))
        let transaction = GTLAppleTransactionBeanApiAppleTransactionBean()
        transaction.receiptData = receiptdata as String
        transaction.sandbox = isSandox
        ReceiptService().validate(transaction, completion: validated)
    } else {
        receiptDetected = false
        delegate.subscriptionUpdate()
    }
}

" GTLAppleTransactionBeanApiAppleTransactionBean()"是我的GAE Bean和" ReceiptService()"打电话给我的GAE端点服务。此服务使用Apple检查收据数据。

非常感谢Swift的例子。 :P

抱歉我的英文。 谢谢,Alessio。

0 个答案:

没有答案