hum*_*an4 5 iphone localization ios
有没有办法知道我的设备(iPhone)何时插入电源,如带USB端口的电脑或汽车音响系统?我在我的应用程序中使用本地化服务,我想在kCLLocationAccuracyBestForNavigation插入设备时自动更改.谢谢...
您可以通过UIDevice类启用电池监控,并检查电池状态以查看是否正在充电:
typedef enum {
UIDeviceBatteryStateUnknown,
UIDeviceBatteryStateUnplugged,
UIDeviceBatteryStateCharging,
UIDeviceBatteryStateFull,
} UIDeviceBatteryState;
Run Code Online (Sandbox Code Playgroud)
在启用最佳GPS准确度之前,您需要检查充电或充电.
您可以注册以便在配件连接或断开连接时收到通知。
例子:
[[EAAccessoryManager sharedAccessoryManager] registerForLocalNotifications];
NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter];
[notificationCenter addObserver:self
selector:@selector(accessoryDidConnect:)
name:EAAccessoryDidConnectNotification
object:nil];
[notificationCenter addObserver:self
selector:@selector(accessoryDidDisconnect:)
name:EAAccessoryDidDisconnectNotification
object:nil];
Run Code Online (Sandbox Code Playgroud)
收到此通知后,您可以使用 for 循环来遍历每个配件,例如:
NSArray *accessories = [[EAAccessoryManager sharedAccessoryManager] connectedAccessories];
EAAccessory *accessory = nil;
for (EAAccessory *obj in accessories)
{
// See if you're interested in this particular accessory
}
Run Code Online (Sandbox Code Playgroud)
在某些时候(也许是释放)您会想要取消注册这些通知。你可以这样做:
NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter];
[notificationCenter removeObserver:self
name:EAAccessoryDidDisconnectNotification
object:nil];
[notificationCenter removeObserver:self
name:EAAccessoryDidConnectNotification
object:nil];
[[EAAccessoryManager sharedAccessoryManager] unregisterForLocalNotifications];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3389 次 |
| 最近记录: |