2011-03-17 44 views
2

我有一个应用程序用于连接用户家用电脑上运行的服务。可以选择使用哪个网络接口?

有两个“简单”的情景......

  1. 用户已经在他们的设备上的Wi-Fi功能,只需连接使用他们的家庭WLAN。
  2. 用户从一个Wi-Fi连接的路程,他们能够与移动互联网连接

我现在面对的是一个更加复杂的情况是,当用户在他们的工作场所和他们的设备检测/连接到他们的办公室WLAN并且没有通往外部世界的路线。

问题是,即使他们的设备上同时启用了Wi-Fi和移动互联网,当任何应用程序尝试连接到互联网时,Wi-Fi界面通常会优先用于移动互联网界面。

所以问题是,我可以以某种方式绑定到移动界面,并建立一个传出连接,即使在Wi-Fi接口优先?如果是这样,任何有关如何实现这一目标的信息的指针都会很有用。谢谢。

+0

我期待做类似的事情。你是否能够得到这个工作? – rhnoble 2014-05-23 04:15:17

回答

1

这是我开始挖掘的地方。 ConnectivityManager.requestRouteToHost

这个类的主要职责是:

监视网络连接(无线网络,GPRS,UMTS等)

发送广播意图时的网络连接改变

尝试在连接网络失败时尝试“故障转移”到另一个网络

提供API,允许应用程序查询粗粒度ned或fine-grained状态的可用网络

我也尝试grep'ing AOSP代码以查看它在哪里以及如何使用它。