Код подтверждения получения в App Store для Mac? - PullRequest
39 голосов
/ 24 ноября 2010

Хотите знать, есть ли у кого-нибудь учебник или рабочий код для проверки квитанций в новом Mac App Store? О единственных ссылках, которые мне удалось найти, - это звездная документация Apple по этой теме и один проект с открытым исходным кодом, который компилируется, но не имеет много встроенных комментариев, так что это трудно понять, если вы не крипто-умник.

Документы Apple только для зарегистрированных разработчиков:

https://developer.apple.com/devcenter/mac/documents/validating.html

ValdiateStoreReceipt Родди (выглядит многообещающе, но редко документировано):

https://github.com/roddi/ValidateStoreReceipt

Также интересно, почему Apple не просто предоставляет рабочий код для проверки?

Есть еще какие-нибудь хорошие ссылки?

Ответы [ 13 ]

0 голосов
/ 11 июля 2012
ValidateStoreReceipt

Родди работал у меня раньше, но он больше не работает.Я написал сообщение в блоге о решении: http://vinceyuan.blogspot.com/2012/07/validate-mac-app-store-receipt-2012.html

Скопировано здесь: код родди все еще работает.Вам не нужно менять это.(Просто нужно получить последнюю версию) Выполните следующие действия (требуется Интернет):

  1. Выйдите из приложения Mac App Store.
  2. Удалите флаг USE_SAMPLE_RECEIPT из настроек своего проекта -> ПрепроцессорМакросы.
  3. Скомпилируйте ваш проект
  4. Найдите это приложение в Finder
  5. Дважды щелкните его в Finder для запуска.Не запускайте его в Xcode.
  6. ОС попросит вас войти под своим Apple ID.Не входите под своей реальной учетной записью iTunes.Вам необходимо войти в систему с тестовой учетной записью.Найдите его или создайте на веб-сайте iTunesconnect.
  7. ОС скажет что-то вроде: «Ваше приложение сломано. Загрузите его в App Store».Игнорировать это сообщение.Если вы «Показать содержимое пакета» этого приложения в Finder, вы увидите, что есть файл _MASReceipt / Квитанция.ОС установила чек на разработку.Нам больше не понадобится квитанция старого образца.Вот почему мы убираем флаг отладки USE_SAMPLE_RECEIPT.

Готово.Вы можете отладить ваше приложение сейчас.

0 голосов
/ 11 апреля 2011

Даже с NPReceiptValidation вы все равно должны проверить безопасность вашего пакета приложений, включая сертификаты подписи. Это задокументировано в рекомендациях WWDR для разработчиков.

Решение: http://itunes.apple.com/us/app/apptight-pro-app-store-code/id427083596?mt=12

Одна потенциальная проблема с NPReceiptValidation - то, что селекторы методов на объектах Какао очень легко перехватить. Это самый популярный способ расширения приложений.

Вот еще один инструмент для помощи в разборе покупок в приложении:

http://itunes.apple.com/us/app/pkcs-7viewer/id547539804?mt=12

0 голосов
/ 01 декабря 2010

Да, в своих документах говорится: «Важно, чтобы вы использовали решение, уникальное для вашего приложения».

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