【问题标题】:IPhone: Detect if iPhone entering application is an original iPhoneiPhone:检测进入应用程序的 iPhone 是否为原装 iPhone
【发布时间】:2011-10-05 09:53:23
【问题描述】:

我需要检测进入我的应用程序的 iPhone 是否是原始 iPhone(最早出售的 iPhone 之一)

我知道这条线会检测到 iPhone:

if (Request.UserAgent.ToUpper().Contains("IPHONE")) 
{
   //Do something
}

但我想确保我得到的是正确的。我在想这样的事情:

if (Request.UserAgent.ToUpper().Contains("IPHONE")) 
{
   if (double.Parse(Request.Browser.Version) > 1)
   {
       //Do Something
   }
}

但我担心可能会有其他更新的 iPhone 版本为 1。

此代码对于查找非常旧的 iPhone 是否正确,还是有更好的方法?

【问题讨论】:

  • 您的要求是什么?应用程序计算密集吗?如果是,我将执行基准测试,例如 stackoverflow.com/questions/3093899/…
  • 该应用程序用于 facebook 连接。显然,facebook javascript SDK 的新更新会导致原始 iPhone 出现重定向错误。我设置了一个解决方法,我只需要能够在那里发送正确的电话

标签: c# iphone user-agent


【解决方案1】:

iPhone 的用户代理字符串只包含操作系统版本。例如:

Mozilla/5.0(iPhone;U;CPU *iPhone OS 4_1*,如 Mac OS X;en-us) AppleWebKit/532.9 (KHTML, like Gecko) 版本/4.0.5 Mobile/8B117 Safari/6531.22.7

这是一个包含完整列表的网站。
http://www.useragentstring.com/

我认为您可能遇到的麻烦是浏览器版本,甚至操作系统版本可能无法指示手机本身的实际代号。值得庆幸的是,在 wiki 上有一个关于所有版本及其应用程序的列表,因此您可以轻松找出最有效的方法。

http://en.wikipedia.org/wiki/IOS_version_history

【讨论】:

    猜你喜欢
    • 2011-10-14
    • 2011-11-26
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    • 2011-04-04
    • 2011-04-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多