Как получить IMEI на iPhone?
Я хочу получить IMEI на iPhone. Я пытаюсь использовать следующий код:
#import "Message/NetworkController.h"
NetworkController *ntc=[[NetworkController sharedInstance] autorelease];
NSString *imeistring = [ntc IMEI];
Но NetworkController не найден.
Я также обнаружил, что могу получить uniqueIdentifier, используя:
UIDevice *myDevice = [UIDevice currentDevice];
NSString *identifier = myDevice.uniqueIdentifier;
Но это не может помочь мне получить IMEI.
Как получить IMEI на iPhone?
Ответы
Ответ 1
Вы не можете получить IMEI на iPhone больше. Возможно, вам придется использовать UDID вместо. Смотрите другие ответы.
В прошлом вы могли использовать заголовочный файл "Message/NetworkController.h", размещенный на ericasadun.com. http://ericasadun.com/iPhoneDocs300/_network_controller_8h-source.html (сейчас удалено)
Вы должны добавить файл NetworkController.h и частную платформу "Message.framework" в свой проект, а затем импортировать этот файл заголовка, чтобы использовать оригинальный метод, который я нашел для получения номера imei:
NetworkController *ntc = [NetworkController sharedInstance];
NSString *imeistring = [ntc IMEI];
Этот хак больше не работает. Приложение будет отклонено Apple.
Ответ 2
Вы не можете найти IMEI программно на iPhone.
Ответ 3
Нет официального способа его получить, но в частной инфраструктуре Apples CoreTelephony.framework
существует способ CTGetIMEI
, который может вам помочь.
Ответ 4
Я уверен, что есть причины, по которым вы не можете сделать это легко. Автоматическое разблокирование приложения? Я так не думаю. Я уверен, что Apple и AT & T тоже не понравятся.
* # 06 # - это способ получить его вручную.
Ответ 5
Я сделал поиск только здесь, в stackoverflow, и вывод заключается в том, что Apple больше не может найти телефон EMEI после iOS 6.
Вы можете идентифицировать устройство с использованием UDID.
Я нашел здесь свой ответ fooobar.com/questions/176851/...
Ответ 6
добавить файл заголовка "CoreTelephony.h" в ваш проект
CoreTelephony.h
struct CTServerConnection
{
int a;
int b;
CFMachPortRef myport;
int c;
int d;
int e;
int f;
int g;
int h;
int i;
};
struct CTResult
{
int flag;
int a;
};
struct CTServerConnection * _CTServerConnectionCreate(CFAllocatorRef, void *, int *);
void _CTServerConnectionCopyMobileIdentity(struct CTResult *, struct CTServerConnection *, NSString **);
добавьте следующий код в класс
#import "CoreTelephony.h"
struct CTServerConnection *sc=NULL;
struct CTResult result;
void callback() { }
теперь вы можете легко получить imei
NSString *imei;
_CTServerConnectionCopyMobileIdentity(&result, sc, &imei);