Обнаружить, если приложение загружается с помощью TestFlight от Apple [дубликат]
На этот вопрос уже есть ответ здесь:
- Как определить во время выполнения, выполняется ли приложение iOS через бета-установку TestFlight 5 ответов
В прошлом у меня были отдельные конфигурации сборки для производства и бета-сборки, распространяемые через TestFlight. Это позволило легко вносить изменения в бета-сборки, такие как предоставление дополнительных возможностей настройте приложение, чтобы тестировщики могли более тщательно тестировать вещи и просматривать дополнительную техническую информацию о состоянии приложения.
Есть ли способ проверить, было ли приложение распространено через тестовый полет Apple, чтобы внести изменения в способ работы приложения? Директивы компилятора больше не имеют смысла, поскольку одна и та же сборка может быть распространена бета-тестерам и отправлена в хранилище, но, возможно, есть способ проверить во время выполнения.
1 ответ:
Это работает:
if ([[NSBundle mainBundle] pathForResource:@"embedded" ofType:@"mobileprovision"]) { // TestFlight } else { // App Store (and Apple reviewers too) }
Обновить
Вышеописанный метод, похоже, больше не работает , Apple изменила способ, которым они подписывают сборки TestFlight. Однако это работает:
BOOL isRunningTestFlightBeta = [[[[NSBundle mainBundle] appStoreReceiptURL] lastPathComponent] isEqualToString:@"sandboxReceipt"];