Когда я использую XCode 11.1 для тестирования моего гибридного приложения с использованием WKWebView в симуляторе «iPhone 8» и проверки агента пользователя с помощью Safari 13, я получаю следующую строку:
"Mozilla/5.0 (iPhone; CPU iPhone OS 13_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
Однако при тестированииВ приложении в симуляторе iPad Pro (11 дюймов) я обнаружил, что для userAgent задана следующая строка:
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit/605.1.15 (KHTML, like Gecko)"
Обратите внимание, что в этой строке нет подстроки iPad", ни используемая версия IOS, ни тот факт, что это мобильное приложение.
Поскольку мое приложение проверяет userAgent, чтобы определить, работает ли оно под IOS, на iPhone это работает нормально, но представляетпроблема в том, как теперь запустить этот тест на iPad, работающих под управлением iPadOS 13. Обратите внимание, что это не имеет ничего общего с отображением веб-представления, оно связано с тем, устанавливать ли связь между JavaScript и Objective C или нет. .
Мое приложение отлично работало на всех iPad, работающих под управлением IOS 12, так как пользовательский агент - это то, что я ожидал:
"Mozilla/5.0 (iPad; CPU OS 12_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/16B92"
Как мне теперь определить frвнутри Javascript, работает ли мой код на iPad с iPadOS 13 или более поздней версии?