2011-09-01 40 views
1

我必須執行用戶代理(UA)到iOS的相關UA的應用程序映射。大多數應用程序的用戶代理的在他們的應用程序的名稱,像Facebook的應用程序似乎是iOS中的哪些應用程序生成這些用戶代理?

Facebook/3440 CFNetwork/485.13.9 Darwin/11.0.0 

但是我看到很多通用的UA。我找不到與這些相關的應用程序。有人可以告訴我是什麼產生了這些。例如:

Apple-iPhone3C1/812.1 
Apple-iPhone2C1/812.1 
Apple-iPhone3C1/807.4 
Apple-iPhone3C1/810.2 etc. 

此外,是否有任何開放的應用程序或資源將UA映射到適用於iOS的應用程序?

+0

可以是activesync? –

回答

2

所有這些UA字符串和更多的都在那裏,可以用來識別特定的配置/組合等(有時甚至是當前的載體!)...檢查列表here

3

這些通用UA不屬於應用程序。這是硬件和WebKit版本的ID。

這部分是硬件型號:

iPhone3C3 = 4 (Verizon) 
iPhone3C1 = 4 
iPhone2C1 = 3Gs 
iPhone1C2 = 3G 
iPad2C3 = iPad 2 (Verizon) 
iPad2C2 = iPad 2 (AT&T) 
iPad2C1 = iPad 2 (WiFi) 
iPad1C1 = iPad 
iPod2C1 = iPod Touch 2 
iPod3C1 = iPod Touch 3 
iPod4C1 = iPod Touch 4 

此代碼

UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectZero]; 
NSString *ua = [webView stringByEvaluatingJavaScriptFromString:@"navigator.userAgent"]; 

給你這個字符串:

Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_5 like Mac OS X; en-us) 
AppleWebKit/533.17.9 (KHTML, like Gecko) Mobile/8L1 

包含在一個版本的WebKit(533.17.9例)。

相關問題