【问题标题】:iOS app to MacOS error: 'transactionReceipt' is unavailable: not available on macCatalyst [duplicate]iOS 应用程序到 MacOS 错误:“transactionReceipt”不可用:在 macCatalyst 上不可用 [重复]
【发布时间】:2020-02-07 07:24:39
【问题描述】:

我有一个 iOS/iPadOS 应用程序已在 App Store 中发布和销售。现在使用 Xcode 11.1 到 MacOS 10.15 Catalina 或更高版本的“自动”端口,我只是标记了“Mac”复选框并尝试在我的 Mac 上运行该应用程序,但我得到了这个编译错误:

'transactionReceipt' 不可用:在 macCatalyst 上不可用

如何解决?我正在使用 StoreKit 框架,必须使用另一个?有没有办法调整 StoreKit 以使其与 macCatalyst 一起使用?

【问题讨论】:

  • “解决”是什么意思?错误信息的意思很清楚。
  • 我正在使用StoreKit框架,必须使用另一个?有没有办法调整 StoreKit 以使其与 macCatalyst 一起使用?
  • 您指的是什么transactionReceipt 属性? SKPaymentTransaction 上的那个在 iOS 7 中被弃用了?
  • 好吧,在这个 Apple 页面中,它看起来并没有被弃用,它说 SKPaymentTransaction 类适用于 iOS 3.0+ macOS 10.7+ Mac Catalyst 13.0+ 和 tvOS 9.0+:link
  • @Heitor 类,是的。但这不是你说的。你说transactionReceiptdeveloper.apple.com/documentation/storekit/skpaymenttransaction/…

标签: ios macos in-app-purchase porting mac-catalyst


【解决方案1】:

一切都是为了替换:

transaction.transactionReceipt

与:

[NSData dataWithContentsOfURL:[[NSBundle mainBundle] appStoreReceiptURL]];

this SOF answer 上找到它。在我的情况下,不需要将 NSData 转换为 NSString。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-12
    • 2018-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-12
    相关资源
    最近更新 更多