目录

获取UiDevice设备信息

// 获取设备名称
NSString *name = [[UIDevice currentDevice] name];
// 获取设备系统名称
NSString *systemName = [[UIDevice currentDevice] systemName];
// 获取系统版本
NSString *systemVersion = [[UIDevice currentDevice] systemVersion];
// 获取设备模型
NSString *model = [[UIDevice currentDevice] model];
// 获取设备本地模型
NSString *localizedModel = [[UIDevice currentDevice] localizedModel];

获取Bundle的相关信息

NSDictionary *infoDict = [[NSBundle mainBundle] infoDictionary];
// app名称
NSString *appName = infoDict[@"CFBundleName"];
// app版本
NSString *appVersion = infoDict[@"CFBundleShortVersionString"];
// app build版本
NSString *appBuild = infoDict[@"CFBundleVersion"];

NSLocal获取本地化数据:

// 获取用户的语言偏好设置列表
NSLog(@"%@", [NSLocale preferredLanguages]);

// 获取系统所有本地化标识符数组列表
NSLog(@"%@", [NSLocale availableLocaleIdentifiers]);
// 获取所有已知合法的国家代码数组列表
NSLog(@"%@", [NSLocale ISOCountryCodes]);
// 获取所有已知合法的ISO货币代码数组列表
NSLog(@"%@", [NSLocale ISOCurrencyCodes]);
// 获取所有已知合法的ISO语言代码数组列表
NSLog(@"%@", [NSLocale ISOLanguageCodes]);

// 获取当前系统设置语言的标识符
// 方法一
NSLog(@"%@", [[NSLocale currentLocale] localeIdentifier]);
// 方法二
NSLog(@"%@", [[NSLocale currentLocale] objectForKey:NSLocaleIdentifier]);

获取电池的相关信息

获取电池当前的状态,共有4种状态

@implementation BatterMonitor
//获取电池当前的状态,共有4种状态
-(NSString*) getBatteryState {
    UIDevice *device = [UIDevice currentDevice];
    if (device.batteryState == UIDeviceBatteryStateUnknown) {
        return @"UnKnow";
    }else if (device.batteryState == UIDeviceBatteryStateUnplugged){
        return @"Unplugged";
    }else if (device.batteryState == UIDeviceBatteryStateCharging){
        return @"Charging";
    }else if (device.batteryState == UIDeviceBatteryStateFull){
        return @"Full";
    }
    return nil;
}

获取电池的等级,0.00~1.00

-(float) getBatteryLevel {
return [UIDevice currentDevice].batteryLevel;
}

-(void) getBatteryInfo
{
NSString *state = getBatteryState();
float level = getBatteryLevel()*100.0;
//yourControlFunc(state, level); //写自己要实现的获取电量信息后怎么处理
}

打开对电量和电池状态的监控,类似定时器的功能

-(void) didLoad
{
[[UIDevice currentDevice] setBatteryMonitoringEnable:YES];

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getBatteryInfo:) name:UIDeviceBatteryStateDidChangeNotification object:nil];

[NSTimer scheduledTimerWithTimeInterval:0.5f target:self selector:@selector(getBatteryInfo:) userInfo:nil repeats:YES];
}

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!


hetaodie

Mobile development

简单,深入的研究移动客户端开发技术"