我正在为Android开发Push通知库(http://deaconproject.org/),如果网络连接中断或更改,需要采取措施 - 即需要重新初始化服务器连接或暂停操作,直到网络连接可用。使用Android BroadcastReceiver的 "android.net.ConnectivityManager.CONNECTIVITY_ACTION" 似乎可以正常工作。
我的问题在于测试库 - 我想自动测试库对各种配置条件下断网连接或从3G转换到WiFi的响应。但是,我不想整天坐在模拟器前按 F8。
有没有一种方法可以在jUnit测试中从Android内部以编程方式操纵网络连接,而不必切换飞行模式?我已经尝试通过控制台向模拟器发出命令、操纵GSM模式等,但是虽然手机状态在显示屏上更改了,但互联网连接仍然保持连接。