基于Android系统的以太网共享方法
阅读说明:本技术 基于Android系统的以太网共享方法 (Ethernet sharing method based on Android system ) 是由 王安兴 程玉 胡锐生 于 2021-07-16 设计创作,主要内容包括:本发明公开了一种基于Android系统的以太网共享方法,包括以下步骤:S1,开启以太网共享开关,包括在设置界面中增加一个以太网共享的开关按钮提供了代码接口,或者将开关功能集成到APK源码中,设置开启以太网共享的接口函数,指定一个开启参数即可完成打开的功能;S2,判断以太网是否已就绪,如果以太网已经准备就绪就继续下一步,否则返回一个错误信息提示共享失败;S3,判断指定源网络并判断源网络是否已就绪,系统通过调用Android自带网络管理工具类中的“检查网络是否连接”的方法,来判断指定的网络是否已连接成功;S4,配置包括子网的网段和DNS的信息;S5,开启DHCP服务和网络转发,进入网络共享状态。(The invention discloses an Ethernet sharing method based on an Android system, which comprises the following steps: s1, turning on the Ethernet sharing switch, including adding an Ethernet sharing switch button in the setting interface to provide a code interface, or integrating the switch function into APK source code, setting the interface function for turning on the Ethernet sharing, and designating a turn-on parameter to complete the turn-on function; s2, judging whether the Ethernet is ready, if the Ethernet is ready, continuing the next step, otherwise returning an error message to prompt the sharing failure; s3, judging whether the specified source network is ready or not, and judging whether the specified network is successfully connected or not by calling a method for checking whether the network is connected or not in the Android self-contained network management tool class by the system; s4, configuring information including the network segment of the subnet and the DNS; s5, starting DHCP service and network forwarding, and entering into network sharing state.)
技术领域
本发明属于Android系统应用技术领域,具体涉及一种基于Android系统的以太网共享方法。
背景技术
市场上有众多的安卓工控设备包含以太网口,并且有大量的用户在购买了这类工控设备后,还有一些其他的设备需要使用以太网口来实现外网访问的需求,例如一个网络摄像头。为了方便用户,减少不必要的有线组网和额外开支,急需一种可以在空旷环境中使用的4G路由设备。
在Android原生系统中,有一个功能叫做“便携式WLAN热点”,此功能可以将Android手机配置成为一个AP热点,类似一个简化版4G路由器的功能。开启后,称此时的4G为源网络,而WIFI为共享网络。但其存在如下缺点:(1)无法配置以太网口为共享网络实现以太网共享;(2)无法指定源网络(只能使用系统自己默认的源网络);(3)无法配置子网的网段和DNS;(4)无法监听检查已连接到共享网络的所有子网设备的连接状态和信息;(5)没有提供API接口来控制打开和关闭网络共享功能。
发明内容
鉴于以上存在的技术问题,本发明用于提供一种基于Android系统的以太网共享方法。
为解决上述技术问题,本发明采用如下的技术方案:
一种基于Android系统的以太网共享方法,包括以下步骤:
S1,开启以太网共享开关,包括在设置界面中增加一个以太网共享的开关按钮提供了代码接口,或者将开关功能集成到APK源码中,设置开启以太网共享的接口函数,指定一个开启参数即可完成打开的功能;
S2,判断以太网是否已就绪,如果以太网已经准备就绪就继续下一步,否则返回一个错误信息提示共享失败;
S3,判断指定源网络并判断源网络是否已就绪,系统通过调用Android自带网络管理工具类中的“检查网络是否连接”的方法,来判断指定的网络是否已连接成功,如果该网络已连接,说明源网络已就绪,则将它作为以太网共享的源网络,如果是未连接的状态,说明源网络未就绪,将返回一个对应的错误码;
S4,配置包括子网的网段和DNS的信息;
S5,开启DHCP服务和网络转发,进入网络共享状态。
优选地,S2具体包括:先找到以太网的网络节点,通过该节点来监听底层以太网网口的连接状态变化信息,如果出现了网口的Linkup信息,那么以太网链路层已连接成功,说明以太网已就绪,将以太网作为共享网络;如果出现了Link down的信息,那么以太网链路层已断开,此时不能将以太网作为共享网络,以太网共享失败,如果之前已经打开了共享,则此时关闭以太网共享功能。
优选地,S4具体包括:在开启网络共享功能的具体代码中,删除原来的固定IP地址和DNS的功能,在配置以太接口configureEthIface方法中,每次都先从内存中读取指定的IP地址和DNS变量信息,在共享服务启动完成后分配指定的IP地址池,并配置到DHCP服务当中,网络设备获取到的IP地址就在配置的网段中,或者将指定的DNS地址配置到系统的DNS服务中,调用网络管理模块的接口设置指定的DNS服务器。
优选地,进一步包括监听所有子网设备的连接状态和信息,如果用户需要监听子网设备的连接状态,那么用户需要先注册一个网络监听器,调用网络监听模块注册一个监听器,定期向所有子网设备发送网络包,通过检查所有子网设备回复的网络包情况来判断连接状态,如果能够收到回复就说明该子网设备处于连接状态,否则说明已断开;如果本次检查的结果和上一次不同,那么向监听器发送一个状态变化的通知,并附带具体的状态变化信息,如果需要停止监听,调用网络监听模块即可。
优选地,进一步包括提供API接口让客户在程序中开关以太网共享和调整以太网共享的配置情况。
采用本发明具有如下的有益效果:
(1)可以配置以太网来实现以太网共享;
(2)可以指定网络源来作为以太网共享的源网络;
(3)可以自由配置共享后的子网络的网段IP地址和DNS等信息;
(4)可以监听检查已连接到共享网络的所有子网设备的连接状态和信息;
(5)提供API接口让客户在程序中来开关以太网共享和调整以太网共享的配置情况。
附图说明
图1为本发明实施例的基于Android系统的以太网共享方法的步骤流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参照图1,所示为本发明实施例的基于Android系统的以太网共享方法的步骤流程图,包括以下步骤:
S1,开启以太网共享开关,包括在设置界面中增加一个以太网共享的开关按钮提供了代码接口,或者将开关功能集成到APK源码中,设置开启以太网共享的接口函数,指定一个开启参数即可完成打开的功能;
S2,判断以太网是否已就绪,如果以太网已经准备就绪就继续下一步,否则返回一个错误信息提示共享失败;
S3,判断指定源网络并判断源网络是否已就绪,系统通过调用Android自带网络管理工具类中的“检查网络是否连接”的方法,来判断指定的网络是否已连接成功,如果该网络已连接,说明源网络已就绪,则将它作为以太网共享的源网络,如果是未连接的状态,说明源网络未就绪,将返回一个对应的错误码;
S4,配置包括子网的网段和DNS的信息;
S5,开启DHCP服务和网络转发,进入网络共享状态。
具体应用实例中,S2具体包括:先找到以太网的网络节点,通过该节点来监听底层以太网网口的连接状态变化信息,如果出现了网口的Link up信息,那么以太网链路层已连接成功,说明以太网已就绪,将以太网作为共享网络;如果出现了Link down的信息,那么以太网链路层已断开,此时不能将以太网作为共享网络,以太网共享失败,如果之前已经打开了共享,则此时关闭以太网共享功能。
具体应用实例中,S4具体包括:在开启网络共享功能的具体代码中,删除原来的固定IP地址和DNS的功能,在配置以太接口方法中,每次都先从内存中读取指定的IP地址和DNS变量信息,在共享服务启动完成后分配指定的IP地址池,并配置到DHCP服务当中,网络设备获取到的IP地址就在配置的网段中,或者将指定的DNS地址配置到系统的DNS服务中,调用网络管理服务的接口设置指定的DNS服务器。
具体应用实例中,进一步包括监听所有子网设备的连接状态和信息,如果用户需要监听子网设备的连接状态,那么用户需要先注册一个网络监听器,调用网络监听模块注册一个监听器,定期向所有子网设备发送网络包,通过检查所有子网设备回复的网络包情况来判断连接状态,如果能够收到回复就说明该子网设备处于连接状态,否则说明已断开;如果本次检查的结果和上一次不同,那么向监听器发送一个状态变化的通知,并附带具体的状态变化信息,如果需要停止监听,调用网络监听模块即可。
具体应用实例中,进一步包括提供API接口让客户在程序中开关以太网共享和调整以太网共享的配置情况。
应当理解,本文所述的示例性实施例是说明性的而非限制性的。尽管结合附图描述了本发明的一个或多个实施例,本领域普通技术人员应当理解,在不脱离通过所附权利要求所限定的本发明的精神和范围的情况下,可以做出各种形式和细节的改变。