我如何知道 ios 中飞行模式的开启或关闭
How can i know airplane mode on or off in ios
我想在布尔变量上检查飞行模式的开启或关闭。
例如:
Bool airplaneMode = airplanemode;
if(airplaneMode)
{
NSLoag(@"Airplane mode on");
}
else
{
NSLoag(@"Airplane mode Off");
}
我不想检查网络是否可用我只需要检查打开或关闭飞行模式。
据我所知,没有内置 api 来确定飞行模式是否打开。您必须检查相应的服务是否可用,具体取决于您的应用程序中需要什么。
例如,如果您需要 GPS 位置,您可以检查 GPS 位置是否可用,然后处理不同的情况。网络连接和飞行模式打开时禁用的所有其他服务也是如此。
Rechability 是检查网络连接的一个示例。
目前没有publicAPI可以直接查看飞行模式是否开启。
最接近的解决方案是使用 SystemConfiguration 框架并监控设备是否可以连接到网络。
使用可达性class(来自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];
我想在布尔变量上检查飞行模式的开启或关闭。 例如:
Bool airplaneMode = airplanemode;
if(airplaneMode)
{
NSLoag(@"Airplane mode on");
}
else
{
NSLoag(@"Airplane mode Off");
}
我不想检查网络是否可用我只需要检查打开或关闭飞行模式。
据我所知,没有内置 api 来确定飞行模式是否打开。您必须检查相应的服务是否可用,具体取决于您的应用程序中需要什么。
例如,如果您需要 GPS 位置,您可以检查 GPS 位置是否可用,然后处理不同的情况。网络连接和飞行模式打开时禁用的所有其他服务也是如此。
Rechability 是检查网络连接的一个示例。
目前没有publicAPI可以直接查看飞行模式是否开启。
最接近的解决方案是使用 SystemConfiguration 框架并监控设备是否可以连接到网络。
使用可达性class(来自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];