使用Objective-C获取IPHONE手机IMSI序列号
获取IPhone 的IMSI序列号
#include <dlfcn.h> #define PRIVATE_PATH "/System/Library/PrivateFrameworks/CoreTelephony.framework/CoreTelephony" - void getImsi(){ #if !TARGET_IPHONE_SIMULATOR void *kit = dlopen(PRIVATE_PATH,RTLD_LAZY); NSString *imsi = nil; int (*CTSIMSupportCopyMobileSubscriberIdentity)() = dlsym(kit, "CTSIMSupportCopyMobileSubscriberIdentity"); imsi = (NSString*)CTSIMSupportCopyMobileSubscriberIdentity(nil); dlclose(kit); UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"IMSI" message:imsi delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil]; [alert show]; [alert release]; #endif }
通过IMSI获取运营商
NSString *imsi = CTSIMSupportCopyMobileSubscriberIdentity(); NSString *userMobileType = [StatisticsOperation getCarrier:imsi]; getCarrier 方法如下 + (NSString *)getCarrier:(NSString *)imsi { if (imsi == nil || [imsi isEqualToString:@"SIM Not Inserted"] ) { return @"Unknown"; } else { if ([[imsi substringWithRange:NSMakeRange(0, 3)] isEqualToString:@"460"]) { NSInteger MNC = [[imsi substringWithRange:NSMakeRange(3, 2)] intValue]; switch (MNC) { case 00: case 02: case 07: return @"China Mobile"; break; case 01: case 06: return @"China Unicom"; break; case 03: case 05: return @"China Telecom"; break; case 20: return @"China Tietong"; break; default: break; } } } return @"Unknown"; }
获取手机号
+ (NSString*)getPhoneNumber { NSString *num = [[NSUserDefaults standardUserDefaults] stringForKey:@"SBFormattedPhoneNumber"]; NSLog(@"Phone Number: %@", num); return num; }
以上所述就是本文的全部内容了,希望大家能够喜欢。
赞 (0)