iOS8模拟器用户代理

时间:2014-10-05 08:01:24

标签: uiwebview ios8 ios-simulator

在调查为什么我在iOS8 webview上有错误时,我发现WebView的用户代理是:

Mozilla / 5.0(iPhone; CPU iPhone OS 10_9_5,如Mac OS X)AppleWebKit / 600.1.4(KHTML,如Gecko)Mobile / 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)

当然还没有iPhone正在运行版本10.10,所以Xcode6在某种程度上从Mac OS X中获取版本。对于iOS< iOS8模拟器,它工作正常。

所以你有一个解决方案,如何发现它是否是iOS8模拟器

现在这是我的javascript方法:

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

1 个答案:

答案 0 :(得分:1)

此问题已在iOS 8.3 Simulator Runtime中修复。该版本和更新版本不再受此问题的影响。

如果您确实需要确定自己是在iOS 8上运行,我建议您查找“iPhone OS”和“AppleWebKit / 600.1.4”子字符串,但您可能不会以这种方式解决问题。相反,你可能最好根据功能而不是版本号来做出决定。