Как проверить, поддерживает ли iPhone CDMA или GSM
Есть ли способ определить, поддерживает ли iPhone сеть CDMA или GSM. Любой Apple API в Objective-C, который может предоставить эту информацию.
1 ответ
Решение
Вы можете проверить идентификатор модели с помощью функции ( титры):
#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). Может быть трудно собрать полную таблицу с различными номерами моделей. Некоторые описания моделей можно найти здесь. Вам придется расширять таблицу моделей по мере появления новых моделей.