IOS設備 UIDevice 獲取操作系統 版本 電量 臨近手機觸發消息檢測 (真機親測可用) – iPhone手機開發技術文章 iPhone軟體開發教學課程

– (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

}

}

發佈留言