主权项 |
一种并发传输文件的方法,其特征在于:包括如下步骤:步骤(1),使手机3G与WiFi数据连接功能同时打开,实现3G与WiFi双待,该步骤包括:(1.1)修改手机操作系统源代码,依照现有网络类型,添加一种新的网络连接类型TYPE_WIFI_OFFLOAD;(1.2)在ConnectivityService构造函数中,添加TYPE_WIFI_OFFLOAD类型网络跟踪器,之后对该网络类型的操作都通过相应跟踪器执行;(1.3)添加对TYPE_WIFI_OFFLOAD的特殊处理,删除属于WiFi的默认路由,以保证只存在即3G数据连接的默认路由,实现只使用3G发送上行数据;(1.4)系统默认优先网络为WiFi,为防止初始时WiFi链路导致3G链路连接不上,在ConnectivityService中新增方法setNetworkPreferenceEx,将优先网络改为3G;(1.5)新增方法:setType,用于修改NetworkStateTracker.mNetworkInfo.mNetworkType,以保证后续对于TYPE_WIFI_OFFLOAD类型的数据连接,3G连接时,启动WiFi,ConnectivityService.handleConnect不再进入teardown流程,从而实现双待;步骤(2),在手机与服务器之间建立IPIP隧道;步骤(3),使用3G上行发起socket连接,发送文件下载请求;步骤(4),服务器接收并处理文件下载请求,将数据包发送至3G与WiFi两个通道上,手机在3G接口和WiFi接口上收到数据包。 |