Реализация Storekit на Apple Watch?

Недавно Apple объявила о возможности совершать покупки на Apple Watch. Я использую Watch OS 6.2 и совершил покупку в песочнице на iPhone, но на часах нет чека (по крайней мере, с использованием кода Bundle.main.appStoreReceiptURL ниже). Должны ли мы сами обрабатывать передачу чека с iPhone на часы? Насколько я понял, на часах будет сохранена эквивалентная квитанция, которую мы сможем разобрать.

    private func loadReceipt() -> Data? {
        guard let url = Bundle.main.appStoreReceiptURL else {
            return nil
        }

        do {
            let data = try Data(contentsOf: url)
            return data
        } catch {
            print("Error loading receipt data: \(error.localizedDescription)")
            return nil
        }
    }
}

person GarySabo    schedule 03.03.2020    source источник
comment
Привет, ты смог это исправить?   -  person aj20010319    schedule 18.08.2020
comment
@aj20010319 я еще не смог   -  person GarySabo    schedule 18.08.2020
comment
Возможно, вы могли бы попробовать реализовать это: github.com/RevenueCat/purchases-ios/commit/ У меня это не сработало на watchOS 7 Beta 4.   -  person aj20010319    schedule 19.08.2020
comment
@aj20010319 aj20010319 спасибо за предупреждение, я проверю это!   -  person GarySabo    schedule 20.08.2020
comment
@aj20010319 aj20010319 Я не могу следить за Obj-C по ссылке, каким именно должен быть URL-адрес? Это типичный рабочий URL-адрес "https://buy.itunes.apple.com/verifyReceipt", они говорят добавить sandbox в конец? ????   -  person GarySabo    schedule 21.08.2020
comment
Нет, вы по-прежнему используете конечную точку /verifyReceipt для проверки квитанций. Они говорят, что место хранения квитанции на устройстве неверно, т. е. квитанция песочницы хранится в URL-адресе производственной квитанции. Например. Квитанция должна была храниться по адресу: /private/var/mobile/Containers/Data/Application/.../StoreKit/sandboxReceipt Но она хранится по адресу: /private/var/mobile/Containers/Data/Application/.../StoreKit/receipt Что-то вроде этого должно работать: github.com/aj20010319/279b93181bd0b6e250bb1fc0699c9a8f   -  person aj20010319    schedule 22.08.2020
comment
Спасибо за то, что @aj20010319 протестировал его с Xcode 11.6 Watch OS 6.2.8, но до сих пор не получил возвращенный массив квитанций.   -  person GarySabo    schedule 22.08.2020
comment
Тогда я понятия не имею, что происходит не так, может быть, код Swift, который я написал, неверен, или есть что-то еще, что нужно сделать. В любом случае, для моего варианта использования я использовал SKPaymentQueue.default().restoreCompletedTransactions().   -  person aj20010319    schedule 23.08.2020