首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >检测特定的iPhone/iPod touch型号

检测特定的iPhone/iPod touch型号
EN

Stack Overflow用户
提问于 2009-07-10 10:40:36
回答 5查看 86.2K关注 0票数 107

可能重复:

Determine device (iPhone, iPod Touch) with iOS

我正在制作一款利用iPhone (可能还有第二代iPod touch )的点对点蓝牙功能的游戏。然而,为了阻止用户尝试在第一代iPod和iPhone 2G上玩多人游戏,我需要检查特定的设备型号。

[UIDevice currentDevice型号]只会告诉我设备是"iPhone“还是"iPod touch”。有没有办法检查具体的设备型号,比如:"iPhone 3GS","iPod touch for“之类的。

编辑:

UIDevice有一个类别(我认为它是由Erica Sadun创建的,我不认为是它的功劳),它使用以下代码来获取特定的设备型号。你可以在这里找到整个类别以及其他有用的东西:https://github.com/erica/uidevice-extension

代码语言:javascript
复制
#include <sys/types.h>
#include <sys/sysctl.h>

@implementation UIDevice (Hardware)

/*
 Platforms
 iPhone1,1 -> iPhone 1G
 iPhone1,2 -> iPhone 3G 
 iPod1,1   -> iPod touch 1G 
 iPod2,1   -> iPod touch 2G 
*/

- (NSString *) platform
{
  size_t size;
  sysctlbyname("hw.machine", NULL, &size, NULL, 0);
  char *machine = malloc(size);
    sysctlbyname("hw.machine", machine, &size, NULL, 0);
    NSString *platform = [NSString stringWithCString:machine encoding:NSUTF8StringEncoding];
  free(machine);
  return platform;
}

这是可行的,使用它的应用程序最近已经在AppStore中获得批准。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1108859

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档