- (void)viewDidLoad
{
[super viewDidLoad];
// 操作系統
NSString * osName =[[UIDevice currentDevice]systemName];
// 操作系統版本
NSString * systemVersion =[[UIDevice currentDevice]systemVersion];
NSLog(@"os =%@ ",osName);
NSLog(@"version =%@",systemVersion);
// IOS設備模型
NSString *iosmodel =[[UIDevice currentDevice]model];
NSLog(@"%@",iosmodel);
// 電量的范圍從0.0(全部瀉出)-1.0(100%)在訪問這個屬性之前要確保batterymonitoring這個屬性是可用的
// 電量查詢
float batteryLevel = [UIDevice currentDevice].batteryLevel;
NSLog(@"%f",batteryLevel);
// 檢測電池狀態
UIDeviceBatteryState batteryState = [[UIDevice currentDevice]batteryState];
// 有如下幾個狀態
// UIDeviceBatteryStateUnknown 0 未識別 0
// UIDeviceBatteryStateUnplugged, 充電中 1
// UIDeviceBatteryStateCharging, 少於100% 2
// UIDeviceBatteryStateFull, 充滿了 3
NSLog(@"%d",batteryState);
// 檢測是否支持多任務處理
BOOL support =[[UIDevice currentDevice]isMultitaskingSupported];
if(support)
{
NSLog(@"supportmultiTask");
}
else
{
NSLog(@"don,t supportmultiTask");
}
// 檢測當前設備方向是否改變
// YES 方向改變
// NO 方向未改變
BOOL status =[UIDevice currentDevice].generatesDeviceOrientationNotifications ;
NSLog(@"%d",status);
// 開始改變設備方向 如果需要在改變方向的時候處理一些事情可以重寫這個方法
// [[UIDevice currentDevice]beginGeneratingDeviceOrientationNotifications ];
// 結束改變設備方向 同上
// [[UIDevice currentDevice]endGeneratingDeviceOrientationNotifications];
// 臨近狀態檢測
// 當你的身體靠近iPhone而不是觸摸的時候,iPhone將會做出反應。(需要一定的面的影射,約5mm左右的時候就會觸發)
// YES 臨近 消息觸發
// NO
BOOL proximityState = [[UIDevice currentDevice]proximityState];
NSLog(@"%d",proximityState);
UIDevice *device = [UIDevice currentDevice ];
device.proximityMonitoringEnabled=YES; // 允許臨近檢測
// 臨近消息觸發
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(proximityChanged:)
name:UIDeviceProximityStateDidChangeNotification object:device];
}
// 臨近手機消息觸發
- (void) proximityChanged:(NSNotification *)notification {
UIDevice *device = [notification object];
NSLog(@"In proximity:%i",device.proximityState);
if(device.proximityState==1){
//do something
}
}