当前位置: 代码迷 >> Android >> 在APK中强制使用移动数据网络的可行性有关问题
  详细解决方案

在APK中强制使用移动数据网络的可行性有关问题

热度:52   发布时间:2016-04-28 01:53:16.0
在APK中强制使用移动数据网络的可行性问题
   最近项目中遇到个问题,就是手机连着一个路由wifi热点,这个路由没有连在公网上,然后手机的移动(非中国移动)数据网络打开,SDK是否有相关API可以强制让应用走移动网络?或者说调用了这个API,APK里可以浏览一个网页?
------解决思路----------------------
强制走应该没吧。
不过你使用该功能可以试着判断是否联网,是否开启了wifi

//是否为wifi状态
 ConnectivityManager connManager = (ConnectivityManager) this  
    .getSystemService(CONNECTIVITY_SERVICE);  
  // 获取代表联网状态的NetWorkInfo对象  
  NetworkInfo networkInfo = connManager.getActiveNetworkInfo();  
  // 获取当前的网络连接是否可用  
  boolean available = networkInfo.isAvailable();  
  if(available){  
   Log.i("通知", "当前的网络连接可用");  
  }  
  else{  
   Log.i("通知", "当前的网络连接可用");  
  }  
 State state = connManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();  
  if(State.CONNECTED==state){  
   Log.i("通知", "GPRS网络已连接");  
  }

依据你的需要给出提示。不过不太人性化,毕竟大多数人是有wifi选wifi

------解决思路----------------------
开关在用户而不在普通的应用,不然手机的主人不再是主人了。不过如果是定制的系统当然可以这样实现,把数据打开,WiFi关闭。
------解决思路----------------------
这个问题应该由另一个方面来理解, 在WIFI连接成功的情况下,移动数据默认是关闭的.
如果无法连网, 可以尝试关掉WIFI打开移动数据, 但是这种逻辑确实太霸道了.
------解决思路----------------------
引用:
Quote: 引用:

这个问题应该由另一个方面来理解, 在WIFI连接成功的情况下,移动数据默认是关闭的.
如果无法连网, 可以尝试关掉WIFI打开移动数据, 但是这种逻辑确实太霸道了.

你的这种方法是没错,但是我的情况就是wifi必须连着,而且移动数据开的,要强制走移动
数据,有办法么?


定制rom,因为从rom层级就决定了,wifi连接状态下走wifi,移动数据关闭。从楼上的文字看,其实lz这个需求有一些矫情,wifi内网,但是需要客户端联网,其实没有任何实际意义。无论是安全性上还是其他特性上。
  相关解决方案