Тестирование перехода от клипа приложения к полноценному приложениюIOS

Программируем под IOS
Ответить
Anonymous
 Тестирование перехода от клипа приложения к полноценному приложению

Сообщение Anonymous »

Мое приложение уже давно находится в магазине приложений. Теперь я хочу добавить клип приложения, в котором есть кнопка, которая предлагает пользователям загрузить полную версию приложения из магазина приложений (с использованием SKOverlay). Кроме того, я хочу, чтобы клип приложения передавал параметры в полное приложение (этот шаг имеет решающее значение).
например, имя пользователя будет передано в полное приложение и представлено в основном действии. Это делается путем помещения этой информации в общие пользовательские настройки по умолчанию в клипе приложения и извлечения этой информации из общих пользовательских настроек по умолчанию в полной версии приложения.
Я создал клип приложения с этими функциями и теперь хочу протестировать переход от клипа приложения к полному приложению.
Я пробовал 3 разных подхода, но ни один из них не позволил мне полностью смоделировать переход от клипа приложения к полному приложению:
  • Запуск клипа приложения в Xcode и тестирование с использованием переменной среды _XCAppClipURL. Появился SKOverlay, но на самом деле я не могу открыть магазин приложений.
  • Настройка локального интерфейса на моем тестовом устройстве (как описано здесь) также показала SKOverlay, но не позволила мне фактически открыть магазин приложений.
  • Тестовый полет: я загрузил сборку в магазин приложений, чтобы использовать тестовый полет, и добавил URL-адрес вызова клипа приложения для внутреннего и внешнего тестирования. При открытии клипа приложения с помощью Test Flight кнопка «Получить полную версию приложения» фактически отправила меня в магазин приложений, но на старую версию приложения. Излишне говорить, что старая версия приложения не имеет отношения к тесту, поскольку в ней нет кода, необходимого для извлечения имени пользователя из общих настроек пользователя по умолчанию.
Есть ли способ протестировать этот переход, не выпуская новейшую версию в магазин приложений?
РЕДАКТИРОВАТЬ: Я использую UserDefaults с группой приложений. Я определил группу приложений с одинаковым именем в разделе «подпись и возможности» как в полной версии приложения, так и в клипе приложения. И добавил следующий код:
В делегате сцены клипа приложения:

let username = "Oded"
guard let sharedUserDefaults = UserDefaults(suiteName: "group.fruitapp.appClipToFullApp") else {
return true
}

if sharedUserDefaults.string(forKey: "username") == nil {
sharedUserDefaults.set(username, forKey: "username")
}

return true

В делегате приложения полной версии:
guard let sharedUserDefaults = UserDefaults(suiteName: "group.fruitapp.appClipToFullApp"),
let username = sharedUserDefaults.url(forKey: "username")
else {
print("Could not find the App Group or the usename from the app clip")
return
}
print("username is \(username)")

//Do more stuff



Подробнее здесь: https://stackoverflow.com/questions/688 ... o-full-app
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»