Подтверждение получения от MacOS App Extensions? - PullRequest
0 голосов
/ 01 июля 2018

Как MacOS Расширение приложения может проверить квитанцию ​​магазина приложений? То есть, чтобы проверить, являются ли покупки в приложении для приложения действительными (и остаются действительными)

Очевидно, что основной пакет указывает на пакет расширения приложения, следовательно, свойство appStoreReceiptURL Bundle возвращает несуществующий файл квитанции - даже если основное приложение имеет файл квитанции App Store.

Например, следующий код распечатывает пути получения основного пакета и магазина приложений соответственно.

let mainBundle = Bundle.main
print("main bundle path: \(mainBundle.bundleURL)")
print("receipt path: \(String(describing: mainBundle.appStoreReceiptURL))")

При размещении в контроллере представления расширений приложения viewDidLoad, он возвращает результаты, подобные этим:

main bundle path: file:///Users/${userName}/Library/Developer/Xcode/DerivedData/${projectBuild}/Build/Products/Debug/${mainAppName}.app/Contents/PlugIns/${appExtensionName}.appex/
receipt path: Optional(Contents/_MASReceipt/receipt -- file:///Users/${userName}/Library/Developer/Xcode/DerivedData/${projectBuild}/Build/Products/Debug/${mainAppName}.app/Contents/PlugIns/${appExtensionName}.appex/)

Однако, глядя внутрь пакета .appex, папка Contents/_MASReceipt/ не существует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...