gpt4 book ai didi

java - 如何使用 Java 中的 apache WebSession 检测 iOS 13 上 Safari 中的设备名称?

转载 作者:行者123 更新时间:2023-12-02 01:05:01 26 4
gpt4 key购买 nike

我正在使用 Java 开发 Apache Wicket Web 应用程序。在此应用程序中,我有一种使用用户代理检测用户设备的通用方法。然而,自从 iOS 13 更新以来,我的支票不再适用于 iPad,因为用户代理为 iPad 和 PC 返回了 MacIntel 或 Intel Mac。我查了一下,发现这个问题已经在这里讨论过:
Link 1
Link 2
Link 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;
}

最佳答案

您可以尝试使用yauaa而不是 Wicket 内部用户代理,后者相当旧,因此已在版本 8 中弃用,并将在版本 9 中删除。

关于java - 如何使用 Java 中的 apache WebSession 检测 iOS 13 上 Safari 中的设备名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60166887/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com