我正在开发一个使用odroid u3和android的平台,用于定制应用程序。我将mptcp内核源代码与android内核源代码合并,得到一个支持mptcp的android内核。
唯一的问题是android默认情况下会在无线网络可用时禁用3g连接,我希望mptcp可以通过共享加载来实现这两种功能。
我可以手动管理所有的东西,但我没有找到什么禁用3G连接和如何绕过它。如果需要,我也有bsp来绕过它。
有人知道我在哪里可以绕过或在哪里断开3G?
注:我已经看到了Android的高优先级连接,但这并不适用于我。我需要两个连接工作,我使mptcp路由为网络访问透明。另外,我知道这不是我可以在非根设备上做的事情。我有根目录,还可以从bsps重新编译整个android系统。我在网上到处搜索,但没有找到任何相关信息(只有高优先级连接)
我已经试过了:
1-高优先级连接:工作正常,但应用程序需要打开。我想让mptcp系统知道而不是应用程序知道。
2-打开WiFi,连接。他们通过终端手动打开移动连接接口:不工作。由于某些原因,移动连接无法从DHCP获取IP。
3-在android bsp上搜索任何可以关闭/打开移动连接的地方:没有找到任何特定的东西。
谢谢!

最佳答案

我在这里找到了解决方案:https://sites.google.com/site/lotuseaterarpit/news/3g4gwififorandroidconcurrently
所以基本上你需要从android上禁用wifi服务(使用svc wifi disable,他们手动配置无线网络,如下所示:
让我们在wlan0拥有无线互联网,我们将:
禁用WiFi接口服务

svc wifi disable

打开WiFi接口
busybox ifconfig wlan0 up

配置WLAN接口
iwconfig wlan0 mode managed essid YOUR_SSID
iwconfig wlan0 key s:WIRELESS_KEY
iwconfig wlan0 commit

获取IP的DHCP接口
dhcpcd eth0

因此,有了这个,你就可以把你的3g连接和无线网络连接起来。您需要自己配置路由,但这将使您能够做到这一点。
希望有帮助!

07-24 09:49
查看更多