DefaultHttpClient在用wifi网络时候连接没有问题,而用2g移动网络的时候报Network is unreachable

huoyin 2015-07-04 10:49:11
我有一个程序,需要后台一直不断地和服务器获取状态,包括用户通话状态中。现在的问题是如果android手机在接听电话是,应用可以通过wifi网络继续获取状态,而2g的移动网络不行,请教一下大家有没有什么办法!
...全文
288 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
huoyin 2015-07-06
  • 打赏
  • 举报
回复
在用户摘机后,打印了一下mobile network发现其状态是suspended,这个状态可以重设吗?
huoyin 2015-07-06
  • 打赏
  • 举报
回复
从http://developer.android.com/reference/android/telephony/TelephonyManager.html#DATA_SUSPENDED上看到下列的话 public static final int DATA_SUSPENDED Added in API level 1 Data connection state: Suspended. The connection is up, but IP traffic is temporarily unavailable. For example, in a 2G network, data activity may be suspended when a voice call arrives. Constant Value: 3 (0x00000003) 应该是2G网络有问题, 不知道3G和4G怎么样。
huoyin 2015-07-05
  • 打赏
  • 举报
回复
另外,通话应该用的是GSM网络吧,与移动网络是两个网络吗?
huoyin 2015-07-05
  • 打赏
  • 举报
回复
现在要做一个东西就是要求通话的时候也可以更新的,理论上2g通话网络和数据网络应该是隔离的,是否有设置可以配置。 另外就是这个查询操作不是在service中,而是通过activity起来的一个线程,不知道这个个有没有关系?
huoyin 2015-07-05
  • 打赏
  • 举报
回复
有没有办法是通话和数据连接共享网络?
Hare_ 2015-07-05
  • 打赏
  • 举报
回复
1楼正解,打电话时用户也不会跟你的程序交互,电话结束,你程序的Activity执行onResume时再请求网络,给用户显示最新的状态即可
beyondma 2015-07-04
  • 打赏
  • 举报
回复
由于信道问题,通话和任何数据连接都互斥,这时网络必然中断,除非有wifi。

80,472

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧