2014-10-05 65 views
6

在調查爲什麼我有iOS8上的WebView我發現的WebView用戶代理是一個錯誤:iOS8上的模擬器用戶代理

的Mozilla/5.0(iPhone; CPU iPhone OS 10_9_5,例如Mac OS X)爲AppleWebKit/600.1.4 (KHTML,例如Gecko)手機/ 12A365(2072607680)

然而,因爲我在競選iOS8上,它更應該是:

的Mozilla/5.0(iPhone; CPU iPhone OS 8_0_2,例如Mac OS X)爲AppleWebKit /600.1.4(KHTML,如Gecko)Mobile/12A405kalturaNativeCordovaPlayer(350612576)

當然,目前還沒有運行10.10版本的iPhone,因此Xcode6以某種方式從Mac OS X中獲取版本。對於iOS的iOS <模擬器,它工作得很好。

那麼你有一個解決方案,我現在該怎麼這是我的JavaScript方法發現,如果它是iOS8上的模擬器或不

爲:

isIOS8 = function(){ 
    return (/OS 8_/.test(userAgent) || /Version\/8/.test(userAgent)) && isIOS(); 
}; 

回答

1

此問題已修復了iOS 8.3模擬器運行。該版本和更新版本不再受此問題的困擾。

如果您確實需要確定您是在iOS 8上運行,但建議您查找「iPhone OS」和「AppleWebKit/600.1.4」子字符串,但您應該不會以這種方式解決問題。相反,您可能最好根據功能而不是版本號進行確定。