如何在ios中了解或关闭飞机模式

我想在布尔变量上打开或关闭飞行模式。 例如 :

Bool airplaneMode = airplanemode; if(airplaneMode) { NSLoag(@"Airplane mode on"); } else { NSLoag(@"Airplane mode Off"); } 

我不想检查网络是否可用我只需要打开或关闭飞机模式。

AFAIK,没有内置的api来确定飞行模式是否打开。 您必须检查相应的服务是否可用,具体取决于您在应用中的需求。

例如,如果您需要GPS位置,则可以检查GPS位置是否可用,然后处理您的不同情况。 对于网络连接和启用飞行模式时禁用的所有其他服务也是如此。

可更新性是检查网络连接的一个示例。

目前没有用于直接检查飞机模式是否开启的公共API。

最接近的解决方案是使用SystemConfiguration框架并监视设备是否可以连接到网络。

使用Reachability类(通过tonymillion)你可以做类似的事情

 Reachability* reach = [Reachability reachabilityWithHostname:@"www.google.com"]; reach.reachableBlock = ^(Reachability*reach) { // do something to prevent the app to be used // NOTE: this block is called on a background thread // so if you need to change the UI, do dispatch_async(dispatch_get_main_queue(), ^{ // UI related stuff }); }; reach.unreachableBlock = ^(Reachability*reach) { // ok continue using the app }; [reach startNotifier];