如何检查iPhone是否支持CDMA或GSM

时间:2011-09-29 10:39:11

标签: iphone ios4 gsm cellular-network cdma

有没有办法确定iPhone是否支持CDMA或GSM网络。 Objective-C中的任何Apple API都可以提供此信息。

1 个答案:

答案 0 :(得分:5)

您可以使用函数(credits)检查模型ID:

#include <sys/types.h>
#include <sys/sysctl.h>
NSString* machine () {
        size_t size;

            // Set 'oldp' parameter to NULL to get the size of the data
            // returned so we can allocate appropriate amount of space
        sysctlbyname("hw.machine", NULL, &size, NULL, 0); 

            // Allocate the space to store name
        char *name = malloc(size);

            // Get the platform name
        sysctlbyname("hw.machine", name, &size, NULL, 0);

            // Place name into a string
        NSString *machineid = [NSString stringWithUTF8String:name];

            // Done with this
        free(name);

        return machineid;
    }

函数将返回类似@“iPhone3,3”的字符串,代表iPhone 4(CDMA / Verizon)。可能很难收集各种型号的完整表格。可以找到一些模型描述here。当新模型出现时,您必须扩展模型表。