码迷,mamicode.com
首页 > 移动开发 > 详细

ios获取手机状态 idfa   idfv   网络类型   分辨率   获取运营商

时间:2016-06-23 22:29:46      阅读:389      评论:0      收藏:0      [点我收藏+]

标签:ios

//idfa

[[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];


//idfv

[[[UIDevice currentDevice] identifierForVendor] UUIDString];




//网络类型

- (NSString *) getNet

{

    UIApplication *application = [UIApplication sharedApplication];

    NSArray *subviews = [[[application valueForKey:@"statusBar"] valueForKey:@"foregroundView"]subviews];

    NSNumber *dataNetWorkItemView = nil;

    for (id subView in subviews) {

           if ([subView isKindOfClass:[NSClassFromString(@"UIStatusBarDataNetworkItemView") class]]) {

            dataNetWorkItemView = subView;

            break;

        }

    }

        switch ([[dataNetWorkItemView valueForKey:@"dataNetworkType"] integerValue]) {

        case 0:

            NSLog(@"No wifi or cellular");

                return @"null";

            break;

        case 1:

            NSLog(@"2G");

                return @"2G";

            break;

        case 2:

            NSLog(@"3G");

            return @"3G";

            break;

        default:

            NSLog(@"Wifi");

            return @"Wifi";

            break;

    }

    return @"null";

}


//分辨率

- (NSString *) getFbl

{

    //屏幕尺寸

    

    CGRect rect = [[UIScreen mainScreen] bounds];

    

    CGSize size = rect.size;

    

    CGFloat width = size.width;

    

    CGFloat height = size.height;

    

    NSLog(@"print %f,%f", width, height);

    

    

    //分辨率

    

    CGFloat scale_screen = [UIScreen mainScreen].scale;


    return [NSString stringWithFormat:@"%d*%d", (int)(width * scale_screen), (int)(height * scale_screen)];


}


//获取运营商

- (NSString *)getOp

{

    

    NSString * ret = @"";

    

    

    

    CTTelephonyNetworkInfo *info = [[CTTelephonyNetworkInfo alloc] init];

    

    

    

    CTCarrier *carrier = [info subscriberCellularProvider];

    

    

    

    if (carrier == nil)

        

    {

        

        [info release];

        return @"null1";

        

    }

    

    

    NSString *code = [carrier mobileNetworkCode];

    

    if (code == nil)

        

    {

        

        [info release];

        return @"null2";

        

    }

    

    

    if ([code isEqualToString:@"00"] || [code isEqualToString:@"02"] || [code isEqualToString:@"07"])

    {

        ret = @"China Mobile";

    }

    

    if ([code isEqualToString:@"01"] || [code isEqualToString:@"06"])

    {

        ret = @"China Unicom";

    }

    

    

    if ([code isEqualToString:@"03"] || [code isEqualToString:@"05"])

    {

        ret = @"China Telecom";

    }

    

    

    if ([code isEqualToString:@"20"])

    {

        ret = @"China Tietong";

    }

    

    

    

    [info release];

    

    

    return ret;

    

}


本文出自 “陪你度过漫长岁月” 博客,请务必保留此出处http://4774721.blog.51cto.com/4764721/1792324

ios获取手机状态 idfa   idfv   网络类型   分辨率   获取运营商

标签:ios

原文地址:http://4774721.blog.51cto.com/4764721/1792324

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!