Как создать приложение для Mac App Store, которое проверяет квитанции?

Я создал приложение, которое подтверждает свое получение, используя код ValidateStoreReceipt на GitHub в соответствии с документация Apple. В документах говорится, что нужно подписать ваше приложение, создать пакет (с подписью), а затем установить его через командную строку. Затем запустите приложение, посмотрите, нет ли квитанции, верните код 173, и оно предложит вам войти в тестовую учетную запись (что оно и делает). Я предоставляю тестовую учетную запись (из настройки тестового пользователя в iTunesConnect). Тогда ничего не происходит. Затем он должен загрузить квитанцию ​​в комплект приложения и перезапустить приложение, но ничего не делает. Консоль говорит только это:

12/22/10 1:06:01 PM store_helper[75986] -[ISURLOperation run]
12/22/10 1:06:01 PM store_helper[75986] port created: 'com.apple.storeClient-23457' (75986)
12/22/10 1:06:01 PM store_helper[75986] Creating run loop source
12/22/10 1:06:01 PM store_helper[75986] adding source to run loop
12/22/10 1:06:01 PM storeagent[81090]   promptResponse: <CKSignInPromptResponse:0x10101ce20 returnCode:1>
12/22/10 1:06:01 PM storeagent[81090]   wrote primary DSID: 1391703719
12/22/10 1:06:01 PM storeagent[81090]   wrote primary DSID: 1391703719
12/22/10 1:06:01 PM storeagent[81090]   -[ISURLOperation run]
12/22/10 1:06:02 PM storeagent[81090]   unsignedBags: 0
12/22/10 1:06:02 PM storeagent[81090]   -[ISURLOperation run]

Мой сценарий пост-сборки выглядит так:

codesign -f -s "3rd Party Mac Developer Application: MYCOMPANYNAME" -v build/Release/AppStoreTest.app    
cd build/Release
productbuild --component AppStoreTest.app /Applications --sign "3rd Party Mac Developer Installer: MYCOMPANYNAME"  AppStoreTest.pkg

Я делаю что-то неправильно??


person Paul    schedule 22.12.2010    source источник
comment
Какая версия OS X у вас установлена? 10.6.5 или 10.6.6?   -  person Yann Ramin    schedule 22.12.2010


Ответы (1)


Кажется, я нашел ответ! Похоже, вам нужно на самом деле настроить все свое приложение на itunesconnect, вплоть до того момента, когда вы собираетесь его загрузить, прежде чем оно заработает. Просто иметь идентификатор пакета недостаточно; он должен ожидать загрузки. Просто подумал, что выкину это на случай, если кто-то еще столкнется с этим.

person Paul    schedule 22.12.2010
comment
Ожидающая загрузка не требуется. Но полное определение приложения в iTunes Connect является обязательным, чтобы тестовая платформа могла генерировать для него тестовые квитанции. - person Laurent Etiemble; 30.04.2012