2

Google App EngineでUADetectorを使用して、このユーザーエージェントを次のように解析しています。

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

これどうやってするの?

ありがとう

4

1 に答える 1

3

この機能はよくリクエストされますが、現在実装されていません。これを実装するには、対応するデバイスに関する情報を含む User-Agent 文字列の大きなリストが必要です。このリストは入手できないと思いますが、部分的に (必要に応じて) 実装できるはずです。

ここ数日、既知のフラグメントのセットを実装することを考えていたので、次のようなものを書くことができます:

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の作者です。)

于 2013-03-05T07:32:31.350 に答える