java - 使用UADetector从用户代理获取Android设备名称

标签 java android google-app-engine user-agent

我正在使用UADetector在 Google App Engine 中解析此用户代理,如下所示:

Mozilla/5.0 (Linux; U; Android 2.2; en-ca; GT-P1000M Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1

我可以 getOperatingSystem(),但无法获取 Android 设备名称,如 GT-P1000M

我该怎么做?

谢谢

最佳答案

经常需要此功能,但目前尚未实现。为了能够实现这一点,我们需要大量用户代理字符串,其中包含有关相应设备的信息。我认为我们没有得到这个列表,但我们应该能够部分实现它(按需)。

在过去的几天里,我考虑过实现一组已知的 fragment ,以便您可以编写如下内容:

UserAgentStringParser parser = UADetectorServiceFactory.getResourceModuleParser();
UserAgent ua = parser.parse(anyUserAgentString);
if (ua.getKnownFragments().contains(KnownFragments.GT_P1000M)) {
    System.out.println("Seems to be a Galaxy Tab GT-P1000.");
} else if (ua.getKnownFragments().contains(KnownFragments.IPAD)) {
    System.out.println("Seems to be an iPad.");
} else if (ua.getKnownFragments().contains(KnownFragments.IPHONE)) {
    System.out.println("Seems to be an iPhone.");
}

如果此功能可以帮助您,请参与。此功能将在 https://github.com/before/uadetector/issues/20 上讨论。非常感谢任何反馈或帮助。

(我是UADetector的作者。)

关于java - 使用UADetector从用户代理获取Android设备名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15214936/

相关文章:

java - Android 中的 Consumer-rules.pro 和 proguard-rules.pro 有什么区别?

java - 如何重置 hibernate 序列生成器?

android - 验证新用户后,Google SignIn 永远不会调用 onActivityResult

java - Java 的 REST 和 HTTP API 客户端,如 RestSharp(http ://restsharp. org/)

android - 如何从动态创建的单选按钮中选择一个单选按钮?

java - Google App Engine JPA + 对象化

node.js - 在 Google App Engine 上运行的 NextJs 应用程序的正确配置是什么?

python - 如何提高memcache命中率?

java - 如何根据图像在屏幕上的放置位置显示消息

Java I/O 与 NIO : Quick Benchmark Comparison