utsname 和 systemInfo 是啥?

Posted

技术标签:

【中文标题】utsname 和 systemInfo 是啥?【英文标题】:What is utsname and systemInfo?utsname 和 systemInfo 是什么? 【发布时间】:2015-03-26 23:26:51 【问题描述】:

当我找到获取 ios 设备类型(例如,iPhone 6、iPhone 6 Plus)的方法时,我找到了一种方法,它做到了help

但它给了我这两个问题?

    什么是utsname和systemInfo,为什么我们可以通过它获取设备类型?

    为什么需要这样的转换?

    ^ @"iPhone5,4" :@"iPhone 5c",       // (model A1507, A1516, A1526 (China), A1529 | Global)
    @"iPhone6,1" :@"iPhone 5s",       // (model A1433, A1533 | GSM)
    @"iPhone6,2" :@"iPhone 5s",  
    

【问题讨论】:

为什么必须知道 iOs 设备类型? 经理认为把用户的手机类型静态化比较好,然后检查用户的手机类型和他们使用我们软件的时间是否有关系 【参考方案1】:

    POSIX 将struct utsname 定义为uname 函数返回的结构。 The uname function 返回当前系统的信息。

    标识符systemInfo 只是一个变量名。没有特殊意义。

    之所以存在“需要转换”,是因为utsname.machine 包含一个供程序、程序员和技术人员使用的字符串,而不是最终用户。某些设备有多个硬件版本,例如 iPhone 5S。苹果在与用户交谈时称它们为“iPhone 5S”。在内部,您可以通过查看utsname.machine 字符串来判断您使用的是哪个硬件版本。如果要通过用户友好名称引用用户设备,则需要将utsname.machine字符串转换为用户友好名称。

【讨论】:

但是我的手机是iPhone 5s,为什么我显示“iPhone6,1”,我不明白这个

以上是关于utsname 和 systemInfo 是啥?的主要内容,如果未能解决你的问题,请参考以下文章

iOS判断判断设备类型信息

用systeminfo命令查看win7修补程序显示暂缺是啥情况?

swift 获取iphone设备型号

获取iOS设备的型号

批处理 - 尝试获取 systeminfo.exe 的详细信息

C++ 中的 utsname/uname [关闭]