关于 android 设备同时使用以太网和 Wi-Fi 或者以太网和 4G 的问题

2016-07-12 20:32:56 +08:00
 ybjaychou

这几天遇到这么个问题:客户的需求是以太网连接 IPCamera ,然后通过 Wi-Fi 或者 4G 把 camera 的数据传出去,但是 android 上貌似只能一个通道来传输数据,目前我在系统上的修改是可以让 3 个网卡同时获取的到 IP ,但是走数据的话只能有一个,不知道能否通过修改路由表什么的来解决这个问题,网络这块的东西不是很熟悉,希望有解决办法的人帮帮忙 (客户天天呆在我们公司,说没弄好就不走了。。。)

25925 次点击
所在节点    Android
34 条回复
ybjaychou
2016-07-16 11:51:49 +08:00
@pangliang 可能 android 上的 route 命令跟 Linux 上的有点不一样,执行你这命令执行不了,
=====================================
root@rk3288:/ # ip route add 192.168.2.0 mask 255.255.255.0 192.168.2.123
Error: either "to" is duplicate, or "mask" is a garbage.
255|root@rk3288:/ #
255|root@rk3288:/ # ip route
192.168.2.0/24 dev eth0 proto kernel scope link src 192.168.2.123
root@rk3288:/ #
oute add 192.168.2.0 mask 255.255.255.0 192.168.2.123 <
1|root@rk3288:/ #
1|root@rk3288:/ #
1|root@rk3288:/ #
1|root@rk3288:/ # ip route
192.168.2.0/24 dev eth0 proto kernel scope link src 192.168.2.123
root@rk3288:/ #
root@rk3288:/ # busybox route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.2.0 * 255.255.255.0 U 0 0 0 eth0
root@rk3288:/ # youngdeMacBook-Pro:~ a_Bin$
=====================================
ps :浏览器插件今天上传图片上传不了。。
uglyer
2017-04-27 15:25:18 +08:00
想问下楼主,最后是否解决了,现在我也有类似需求。^
csrbot
2017-05-27 16:38:50 +08:00
楼主,你系统里面修改了哪些让 Android 系统能同时连接 wifi 和以太网,能提供一个方向吗?谢谢了。
ybjaychou
2017-05-27 17:25:46 +08:00
主要是修改了 framework 里的 ConnectivityService,我这边是以太网优先级比 Wi-Fi 高,所以就在网络连接准备注册网络时把以太网处理下,这样的话,Wi-Fi 和以太网都有 IP 了,然后设置下路由表,指定什么网段走什么网卡就可以了
ybjaychou
2017-05-27 17:26:04 +08:00
hefj
2017-08-07 11:41:15 +08:00
楼主,我这边也有这样的需求,修改 connectivityservice 之后目前两个网络都能够链接,以太网优先级高,功能正常。wifi 连接后图标有一个感叹号,设备无法 ping 通 wifi 所链接的路由器的网关,但是和 wifi 同一个网段的其他设备可以 ping 通此设备,请问该如何配置路由?
hefj
2017-08-07 11:54:18 +08:00
@ybjaychou
具体情况是这样,
我的机器以太网 IP: 192.168.1.100, WIFI IP 192.168.56.102
我的电脑 IP 192.168.1.106 ,我的手机 IP 192.168.56.107

用 adb 进入机器 shell 环境,ping 192.168.1.106 可以通,ping IP 192.168.56.107 不通
用电脑 ping 192.168.1.100 可以通
用手机 ping 192.168.56.102 可以通
也就是说目前机器无法通过 wifi 向外发数据
如何修改理由或者源码来让 wifi 也能够往外发数据,或者指定 ip 通过 wifi 进行往外发数据?
writeapoemforyou
2017-08-11 16:06:08 +08:00
我的是参考这里的 http://blog.csdn.net/roger__wong/article/details/8603275#reply
第一个回复就是我的, 开启了移动数据,wlan 无法 ping 通,路由配置一直不行,不知道怎么配置路由.
writeapoemforyou
2017-08-11 16:11:03 +08:00
@hefj 和你一样的情况
hefj
2017-08-14 11:10:45 +08:00
我这边让同事写了一个 demo,通讯是没有问题的,也就是说 socket 通讯没问题,但是就是没法 ping,现在忙,我就没有去纠结这个问题了,等有时间在研究,android 网络这一块确实还是不太懂 @writeapoemforyou
ChanghuiN
2017-08-31 15:27:07 +08:00
@ybjaychou 楼主您好,我这边也有实现同时使用 4g、wifi 的需求,我在开发者着模式中选择了始终开启移动数据,可以获取两个 ip,不过我用 4g ip 的时候,手机为什么会走 wifi 的通道啊
hicai
2017-12-02 22:28:13 +08:00
@killeder 你好具体是怎么做的呢?能不能请教下。。。
hicai
2017-12-02 22:33:55 +08:00
@killeder 因为最近也有这方面的需求.
jyb
2018-05-20 08:48:59 +08:00
@killeder @ChanghuiN @hicai 我的需求也是一样,网上相关资料很少啊

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/292053

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX