Я работаю над Apache Wicket WebApplication в Java. В этом приложении у меня есть общий метод для обнаружения пользовательского устройства с помощью пользовательского агента. Однако, поскольку обновление iOS 13, моя проверка больше не работает для iPad, поскольку пользовательский агент возвращает MacIntel или Intel Ma c для iPad и P C. Я проверил и обнаружил, что эта проблема уже обсуждалась здесь:
Ссылка 1
Ссылка 2
Ссылка 3
Но эти решения только для JavaScript. Мне нужно обработать это в Java (org. apache .wicket.protocol.http.WebSession). В свойствах WebSession не существует метода для извлечения количества точек касания. Может кто-нибудь помочь мне получить количество точек соприкосновения или есть другая идея, как решить эту проблему. Спасибо.
Мой текущий код выглядит так:
public static boolean isTablet(WebSession pWebSession) {
String userAgent = pWebSession.getClientInfo().getUserAgent();
if (userAgent != null && (userAgent.contains("iPad")
|| (userAgent.contains("Android") && !userAgent.contains("Mobile")))
|| (userAgent.contains("PlayBook"))) {//BlackBerry tablet
return true;
}
return false;
}