MacOS In-App Покупка в среде песочницы не разрешена - PullRequest
0 голосов
/ 27 августа 2018

Я пытаюсь заставить покупки в приложении (IAP) работать в приложении macOS, используя тот же код Swift, тесты песочницы и учетную запись Itunes Connect, которые я использовал для своего приложения iOS.Тем не менее, я не могу заставить его работать.Я использую macOS High Sierra 10.13.6.

Открытое приложение

Рекомендации по тестированию IAP от Apple найдены здесь :

Наразработка устройства MacOS, выйдите из Mac App Store.Затем создайте свое приложение в Xcode и запустите его из Finder.

Если текст «[Environment: Sandbox]» не появляется, вы используете производственную среду.Убедитесь, что вы используете сборку приложения, подписанную разработчиком.В сборках, подписанных для производства, используется производственная среда.

Я выполнил эти шаги, выйдя из Mac App Store и собрав свое приложение, подписанное для разработки, а затем запустив его из Finder.Это означает, что, к сожалению, я не получаю журналы отладки.

Перейдите к таблице продуктов в приложении

Вот моя таблица продуктов:

Products table

Я могу купить товар, нажав кнопку «Бесплатно» или кнопку «£ 4.99».

Попытаться купить товар, нажав кнопку «Бесплатно»

После непродолжительного ожидания появляется всплывающее окно с надписью «Требуется вход в систему».Я вхожу в систему с помощью одного из своих тестеров в песочнице (примечание: сейчас я пробовал пять разных тестовых учетных записей, все из которых работали в приложении iOS под одной и той же учетной записью iTunes Connect), зарегистрированных с адресами электронной почты, которые не Apple ID:

Sign-in required

Выбрав «Купить», через некоторое время появится следующее всплывающее окно:

Account not in this store

После выбора «Отмена» (как рекомендуется здесь ), после небольшого ожидания появляется следующее всплывающее окно:

You are not authorised

Поэтому я не уверен, зарегистрировался ли он во мне или нет, и я предполагаю, что моя покупка не удалась (мой пользовательский интерфейс таблицы не обновляется, чтобы сказать «куплено»).Обратите внимание, что я также попытался нажать «Сменить магазин» здесь, но в конечном итоге все равно не получилось.

Попытаться купить товар, нажав «Бесплатно» еще раз

На этот раз мне не предлагаетсяавторизоваться;Вместо этого меня сразу спрашивают, хочу ли я купить продукт.Я нажимаю «Подтвердить».

Do you want to get

Однако теперь транзакция покупки никогда не завершается:

Processing

Что я могу делать не так?Нужно ли мне выходить из системы (например, iCloud) в Settings > Internet Accounts тоже?

1 Ответ

0 голосов
/ 05 декабря 2018

Кажется неубедительным, но в конце концов я решил эту проблему, создав новые учетные записи тестеров Sandbox (совет: на этот раз я настроил их как американские, чтобы избежать затруднений при смене магазинов во время потока платежей).

Я думаю, проблема была в том, что я не проверил учетные записи тестера Sandbox, которые я использовал.Это связано либо с тем, что электронное письмо Apple с просьбой подтвердить / активировать учетные записи тестировщика Sandbox было отсортировано в моей нежелательной почте, либо полностью пропущено, либо из-за проблем с их внутренним сервером, когда я нажимал на ссылку в их письмах (я испытал оба эти поведения).

...