Android - 以太网 - 以编程方式

时间:2014-02-14 09:14:07

标签: android static settings ethernet dhcp

我正在开发一个Android应用程序,它将被自定义设备使用,它将支持以太网(以及wifi)。

该应用必须启用以太网的设置活动。

请注意,此设置必须由应用程序运行,而不是由android设置运行,因为应用程序将是设备上运行的唯一内容,用户将无法访问Android中的运行背景

用户必须能够:  1.启用/禁用以太网  2.选择DHCP或STATIC  3.如果选择STATIC - 设置IP,网关

问题是我无法以编程方式访问android.net.ethernet,并且没有关于此问题的在线解释。

所以如果有人做过这样的事情,请帮助我走向正确的方向。

感谢。

1 个答案:

答案 0 :(得分:0)

我知道它已经很晚了,但它可能对其他人有帮助。

我有一些你为我的Android应用程序提到的要求。 这就是我实现一些要点的方法

<强> 1。启用/禁用以太网

//启用以太网

 ifconfig eth0 up

//禁用以太网

 ifconfig eth0 down

第3。如果选择STATIC - 设置IP,网关

从java代码中激活这些命令。

su -c ifconfig eth0 172.19.10.105 netmask 255.255.255.0 up
route add default gw 172.19.10.2 dev eth0

您可以使用以下代码执行这些命令。

此处command变量是上述命令之一。

                Process p;
                try {
                    p = Runtime.getRuntime().exec(command);
                    p.waitFor();
                    BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));

                    String line = "";
                    while ((line = reader.readLine())!= null) {
                        output.append(line + "n");
                    }

                } catch (Exception e) {
                    e.printStackTrace();
                }
                String response = output.toString();