Ios 打开WiFi时如何在iPhone中获取移动数据状态

Ios 打开WiFi时如何在iPhone中获取移动数据状态,ios,iphone,reachability,Ios,Iphone,Reachability,目前我正在开发一个iPhone应用程序,它需要显示移动数据状态(开/关)。对于网络检查,im使用可达性类,但当任何一个网络启用(即WiFi/移动数据)时,它会给出正确的结果,但如果两个网络都启用,它会给出WiFi状态,但我的要求是我也只需要查看移动数据状态。 如果有人能给我建议解决方案,那就太好了 Thankq设置一些逻辑,如检查网络是否连接到Wifi或蜂窝数据,然后在蜂窝数据中设置代码 Reachability *reachability = [Reachability reachabilit

目前我正在开发一个iPhone应用程序,它需要显示移动数据状态(开/关)。对于网络检查,im使用可达性类,但当任何一个网络启用(即WiFi/移动数据)时,它会给出正确的结果,但如果两个网络都启用,它会给出WiFi状态,但我的要求是我也只需要查看移动数据状态。 如果有人能给我建议解决方案,那就太好了


Thankq

设置一些逻辑,如检查网络是否连接到Wifi或蜂窝数据,然后在蜂窝数据中设置代码

Reachability *reachability = [Reachability reachabilityForInternetConnection];
[reachability startNotifier];

NetworkStatus status = [reachability currentReachabilityStatus];
if(status == NotReachable) 
{
    //No internet
}
else if (status == ReachableViaWiFi)
{
    //WiFi
}
else if (status == ReachableViaWWAN) 
{
    //3G // Set your code here for cellular data
}
根据您的要求,查找有关集合的更多详细信息

注意:-我认为当您的iPhone连接wifi时,它会自动离开手机数据,如果断开wifi,则会再次连接手机数据

编辑:-我不确定,但试试这个

if(status == NotReachable) 
    {
        //No internet
    }
   else if (status == ReachableViaWWAN) 
    {
        //3G // Set your code here for cellular data
       if (status == ReachableViaWiFi)
      {
        //WiFi // Keep Wifi and cellulardata both on.
      }
    }
    else if (status == ReachableViaWiFi)
    {
        //WiFi
    }


     else if (status == ReachableViaWWAN) 
    {
      // keep status only cellularadat on
     }

可悲的是,当WiFi开启时,似乎无法检查移动数据是否开启。您可以检测是否存在WiFi连接、是否只有移动数据连接而没有WiFi连接,或者是否根本没有连接。但如果有WiFi连接,似乎无法检测是否也有数据连接

使用电话类,您可以检测设备是否有SIM卡,还可以检测应用程序的设置中是否禁用了移动数据。据我所知,您无法检测整个设备是否启用了移动数据


您也无法区分Wifi已关闭、Wifi已打开但附近或未选择网络以及飞机模式已打开

你能把你写的代码发出去吗?如果我们看不到任何代码,就很难诊断出什么;[可达性启动通知];NetworkStatus状态=[reachability currentReachabilityStatus];如果(状态==不可访问){//No internet}如果(状态==可通过WWAN访问){//cellular data}如果(状态==可通过Wifi访问){//Wifi}如果两者(Wifi和移动数据)都在其上,则在执行最后一个块时,我们可以在单独检查时获得网络状态,无论其是否已启用,即(WiFi打开和移动数据关闭,反之亦然)。当两者都打开时,我们得到的状态是什么(WiFi打开和移动数据打开)。它显示WiFi状态,但我也想读取移动数据状态。请检查说明。当您的设备与WiFi连接时,它将离开手机数据。当您与两者连接时,哪个条件满足?WiFi或手机数据?WiFi条件,即使我先写入手机数据条件是的,我同意它将当WiFi开启时eft蜂窝数据,但我也只想检查移动数据状态。除了可达性类,还有其他解决方案吗