首页> 中国专利> 一种基于手机网络共享服务的网络连接的方法及手机

一种基于手机网络共享服务的网络连接的方法及手机

摘要

本发明公开了一种基于手机网络共享服务的网络连接的方法及手机,所述方法包括:开启手机的网络共享服务,当接收到该手机上运行的应用程序发送的请求时,控制所述应用程序通过该手机系统默认的默认类型的PDP连接上网;当接收到终端发送的连接网络的请求时,判断是否可建立一个拨号网络类型的PDP连接,若是,则建立一个拨号网络类型的PDP连接,控制所述终端通过所述拨号网络类型的PDP连接上网;若否,则控制所述终端通过该手机系统中默认的默认类型的PDP连接上网。通过本发明,手机上运行的应用程序可通过默认类型APN设置上网,同时连接该手机的终端可通过拨号网络APN设置上网。

著录项

  • 公开/公告号CN103052170A

    专利类型发明专利

  • 公开/公告日2013-04-17

    原文格式PDF

  • 申请/专利权人 TCL通讯(宁波)有限公司;

    申请/专利号CN201210561489.0

  • 发明设计人 王丙勤;汤立正;

    申请日2012-12-21

  • 分类号H04W76/02(20090101);

  • 代理机构44268 深圳市君胜知识产权代理事务所;

  • 代理人王永文;刘文求

  • 地址 315100 浙江省宁波市高新区扬帆路999弄5号6楼

  • 入库时间 2024-02-19 18:53:05

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-04-13

    授权

    授权

  • 2013-11-27

    实质审查的生效 IPC(主分类):H04W76/02 申请日:20121221

    实质审查的生效

  • 2013-04-17

    公开

    公开

说明书

技术领域

本发明涉及移动终端领域,尤其涉及的是一种基于手机网络共享服务的网络连接的方法及手机。

背景技术

Android(安卓)是现有智能移动终端常用的操作系统,基于WCDMA网络的Android手机必须通过PDP(分组数据协议)连接才能上网, 而PDP连接需根据某一个APN(访问接入点)建立。手机的APN有defaul (默认)、 dun (拨号网络)、mms(彩信)等多种类型。Android手机建立的PDP连接时默认使用default类型的APN,因此Android手机上运行的浏览器等应用程序通过default类型的APN连接到因特网。

基于WCDMA网络的Android手机在启动Tethering服务(网络共享,即手机将它的上网功能分享给其他终端使用的功能)时,其他终端可通过USB绑定或便携式WLAN热点服务等方式连接该手机,并以该手机作为调制解调器,通过该手机上的default类型APN建立PDP连接上网。

但连接到所述手机的其他终端通过网络共享服务上网时最适合的PDP连接是通过dun类型的APN建立的连接,现有技术需要用户手动设置,给用户带来了不便。

因此,现有技术还有待于改进和发展。

发明内容

本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种基于手机网络共享服务的网络连接的方法及手机,旨在当手机启动网络共享服务时,连接该手机的终端可通过dun类型APN建立PDP连接上网,同时手机上运行的应用程序可通过default类型APN建立PDP连接上网。

本发明解决技术问题所采用的技术方案如下:

一种基于手机网络共享服务的网络连接的方法,其中,包括步骤:

A、开启手机的网络共享服务,接收该手机上运行的应用程序或通过该手机上网的终端发送的连接网络的请求;

B、当接收到所述应用程序发送的请求时,控制所述应用程序通过该手机系统默认的默认类型的PDP连接上网;当接收到所述终端发送的连接网络的请求时,建立一个拨号网络类型的PDP连接,获取该拨号网络类型的PDP连接的网卡信息,并根据所述网卡信息控制所述终端通过所述拨号网络类型的PDP连接上网。

所述的基于手机网络共享服务的网络连接的方法,其中,所述步骤B还包括:

B1、当接收到所述终端发送的连接网络的请求时,对该手机系统中对应的网络共享的接口进行配置,并保存所述接口的信息,同时判断是否可建立一个拨号网络类型的PDP连接。

所述的基于手机网络共享服务的网络连接的方法,其中,所述步骤B1中所述的判断是否可建立一个拨号网络类型的PDP连接,包括:

B11、从所述手机系统属性中读取对应运营商的标识,所述标识包括运营商的国家码和网号;

B12、根据所述运营商的标识,从所述手机系统对应的数据库中获得该运营商的所有APN信息;

B13、遍历所述APN信息,判断其中是否存在拨号网络类型的APN;当存在拨号网络类型的APN时,则判断为可建立一个拨号网络类型的PDP连接。

所述的基于手机网络共享服务的网络连接的方法,其中,所述步骤B中所述的建立一个拨号网络类型的PDP连接,包括:

B21、新建一个拨号网络类型的PDP连接;并设置对应的网络热点;

B22、当所述拨号网络类型的PDP连接建立成功后, 将到所述PDP连接对应的网卡的路由信息添加到所述手机系统中对应的路由表中;并更新所述手机的DNS服务器地址对应的路由信息。

所述的基于手机网络共享服务的网络连接的方法,其中,所述步骤B中所述的获取该拨号网络类型的PDP连接的网卡信息,并根据所述网卡信息控制所述终端通过所述拨号网络类型的PDP连接上网,包括:

B31、从所述手机的DNS服务器地址对应的路由信息中查询到所述拨号网络类型的PDP连接的网卡信息;

B32、根据所述网卡信息启动NAT网址转换功能,以控制所述终端通过所述拨号网络类型的PDP连接上网。

一种采用所述基于手机网络共享服务的网络连接的方法的手机,其中,包括:

请求接收模块,用于当手机的网络共享服务开启时,接收该手机上运行的应用程序或通过该手机上网的终端发送的连接网络的请求;

控制模块,用于当接收到所述应用程序发送的请求时,控制所述应用程序通过该手机系统默认的默认类型的PDP连接上网;当接收到所述终端发送的连接网络的请求时,建立一个拨号网络类型的PDP连接,获取该拨号网络类型的PDP连接的网卡信息,并根据所述网卡信息控制所述终端通过所述拨号网络类型的PDP连接上网。

所述的手机,其中,所述控制模块还包括:

第一控制单元、用于当接收到所述应用程序发送的请求时,控制所述应用程序通过该手机系统默认的默认类型的的PDP连接上网;

第二控制单元、当接收到所述终端发送的连接网络的请求时,建立一个拨号网络类型的PDP连接,获取该拨号网络类型的PDP连接的网卡信息,并根据所述网卡信息控制所述终端通过所述拨号网络类型的PDP连接上网。

所述的手机,其中,所述第二控制单元还包括:

配置子单元,用于当收到所述终端发送的连接网络的请求时,对手机系统中对应的网络共享的接口进行配置,并保存所述接口的信息;

判断子单元、用于当收到所述终端发送的连接网络的请求时,判断是否可建立一个拨号网络类型的PDP连接。

所述的手机,其中,所述第二控制单元还包括:

连接建立子单元,用于新建一个拨号网络类型的PDP连接;并设置对应的网络热点;

路由更新子单元,用于当拨号网络类型的PDP连接建立成功后, 将到所述PDP连接对应的网卡的路由信息添加到对应的路由表中;并更新该手机的DNS服务器地址对应的路由信息。

所述的手机,其中,所述第二控制单元还包括:

查询子单元,用于从所述对应的DNS服务器地址对应的路由信息中获取所述拨号网络类型的PDP连接的网卡信息;

控制子单元,用于根据所述网卡信息启动NAT网址转换功能,以控制所述终端通过所述拨号网络类型的PDP连接上网。

本发明所提供的一种基于手机网络共享服务的网络连接的方法及手机,当手机启动Tethering服务时,为接入该手机的终端适应性的建立一个dun类型的PDP连接,使得所述终端可通过该dun类型的PDP连接上网;与此同时,手机中运行的应用程序可通过系统默认的default类型APN建立PDP连接上网。使手机增加了新功能:当手机开启网络共享服务时,手机上运行的应用程序可通过系统默认的default类型APN连接网络,同时连接该手机的终端可通过dun类型APN连接到网络。无需用户手动设置,为用户提供了方便。

附图说明

图1是本发明一种基于手机网络共享服务的网络连接的方法的基本流程图。

图2是本发明一种基于手机网络共享服务的网络连接的方法中判断是否可建立一个dun类型的PDP连接的流程图。

图3是本发明为手机网络共享服务开启后建立一个dun类型的PDP连接的具体实施流程图。

图4是本发明一种手机的实施例原理框图。

图5是本发明一种手机的实施例的类型控制模块原理框图。

图6是本发明一种手机的实施例的控制模块的第二控制单元原理框图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

请参见图1,图1是本发明一种基于手机网络共享服务的网络连接的方法的基本流程图。本实施例中,所述的基于手机网络共享服务的网络连接的方法包括以下步骤:

步骤S100、开启手机的网络共享服务,接收手机上运行的应用程序或通过该手机上网的终端发送的连接网络的请求。

在启动手机的网络共享服务功能时,其他终端可通过USB绑定或WLAN热点接入该手机,以该手机为调制解调器,向该手机发送连接网络的请求,以通过该手机提供的网络热点连接网络。并且,在默认状态下使用default类型的APN建立PDP连接上网。

步骤S200、当接收到所述应用程序发送的请求时,控制所述应用程序通过该手机系统默认的默认类型的PDP连接上网;当接收到所述终端发送的连接网络的请求时,建立一个拨号网络类型的PDP连接,获取该拨号网络类型的PDP连接的网卡信息,并根据所述网卡信息控制所述终端通过所述拨号网络类型的PDP连接上网。

具体实施时,当接收到所述的终端发送的连接网络的请求时,对该手机系统中对应的网络共享的接口进行配置,并保存所述接口的信息;同时,判断是否可建立一个拨号网络类型的PDP连接,若是,则建立一个拨号网络类型的PDP连接,控制所述终端通过所述拨号网络类型的PDP连接上网;若否,控制所述终端通过该手机系统默认的默认类型的PDP连接上网。

本实施例中,检测所述手机对应运营商提供的APN的类型,判断是否可根据运营商提供的APN为接入所述手机的终端建立一个dun类型的PDP连接。当所述手机对应的运营商提供有dun类型的APN时,则可建立一个dun类型的PDP连接。在建立dun类型的PDP连接后,获取该dun类型的PDP连接的网卡信息,并根据所述网卡信息启动手机的NAT网址转换功能,控制所述终端通过所述dun类型的PDP连接上网。

较佳的,本实施例中优选基于WCDMA网络的安卓手机为例,如图2所示,为本发明判断是否可根据手机运营商的APN信息为连接手机的终端建立一个dun类型的PDP连接的过程,具体步骤包括:

步骤S201: 从手机系统属性读取运营商标识:MCC+MNC(即运营商的国家码+网号);

步骤S202: 根据该运营商的标识,从存储该运营商APN信息的数据库表Carriers中获得该运营商的所有APN信息;

步骤S203: 遍历所述APN信息,判断是否存在dun类型的APN。若是,执行步骤S204;否则,执行步骤S205;

步骤S204:根据该运营商的dun类型的APN新建一个dun类型的PDP连接;

步骤S205: 如果不存在dun类型的APN,则将默认的default类型的PDP连接提供给接入该手机Tethering的终端。

如图3所示,以Android4.0系统为例,本实施例中对其中的Tethering.java的代码进行修改,以实现接入手机Tethering的终端可通过dun类型的PDP连接上网,具体实施过程包括:

S01、首先接收接入该手机的终端发送的连接网络的请求,并完成对应接口的配置与添加。具体包括步骤S11-S14。 

S11、当收到开启手机网络共享服务的用户指令时,安卓4.0系统的 TetherInterfaceSM状态机进入InitialState状态,以接收通过该手机上网的终端发送的连接网络的请求(即CMD_TETHER_REQUESTED),当收到所述请求时,发送确认连接类型的消息CMD_TETHER_MODE_REQUESTED给系统的TetherMasterSM状态机;所述TetherInterfaceSM状态机进入 StartingState状态。

S12、在进入 StartingState后,对该手机系统中对应的接口(Usb接口为rndis, WIFI接口为wlan)进行配置,即调用NetworkManagementService.setInterfaceConfig 配置Tethering接口的属性。以USB绑定的接口rndis为例:通过调用configureUsbIface()函数配置对应的接口,具体命令为:interface setcfg rndis0 192.168.42.129 24 [up broadcast multicast]。配置Tethering接口属性成功后,所述TetherInterfaceSM状态机进入TetheredState状态。

S13、进入TetheredState状态后,保存所述配置的Tethering接口的信息, 通过调用NetworkManagementService.tetherInterface()添加所述tethering接口。以USB绑定的接口rndis为例,添加接口的具体命令为:tether interface add rndis0。

S14、添加所述tethering接口成功后,所述TetherInterfaceSM状态机等待所述TetherMasterSM返回dun类型的PDP连接的网卡信息。

与所述过程S01同时执行的还有图3中S02所示过程,系统的TetherMasterSM状态机在手机网络共享服务开启时进入InitialState状态,准备建立dun类型的PDP连接。具体包括步骤S21-S26。

S21、当收到TetherInterfaceSM在InitialState状态下发送的CMD_TETHER_MODE_REQUESTED消息时,所述TetherMasterSM状态机进入TetherModeAliveState状态。

S22、在TetherModeAliveState状态中,调用chooseUpstreamType函数建立一个dun类型的PDP连接。

S23、在TetherModeAliveState状态中, 设置对应的网络热点,即通过调用      turnOnMasterTetherSettings函数设置对应的Tethering热点,具体包括:

(1). 通过调用NetworkManagementService.setIpForwardingEnabled()启动ip地址转发功能,命令为:ipfwd enable;

(2). 调用NetworkManagementService.startTethering()设置Tethering热点可分配的ip地址,命令为:tether start 192.168.42.2 192.168.42.254……;

(3). 调用NetworkManagementService.setDnsForwarders()设置Tethering热点的DNS服务器地址,命令为:tether dns set 8.8.8.8 8.8.4.4。

S24、当所述dun类型的PDP连接建立成功后, 将到所述PDP连接对应的网卡的路由信息添加到对应的路由表中,即通过函数connectivityService.hanleConnectivityChange()进一步调用addRoute(newLp, r, TO_SECONDARY_TABLE) 函数,以向系统的secondary路由表中增加到所述新建的dun类型的PDP连接的网卡接口的路由信息。

S25、根据所述新建的dun类型的PDP连接的网卡信息更新手机的DNS服务器地址对应的路由信息。即在TetherModeAliveState状态下,若接收到CMD_UPSTREAM_CHANGED消息,则再次调用chooseUpstreamType函数,并通过chooseUpstreamType函数中进一步调用函数connectivityService.requestRouteToHostAddress(),以设置Tethering热点的DNS服务器地址的路由为所述新建的dun类型PDP连接的网卡接口。

具体实施时,需先判断是否存在dun类型的APN(如图2及其实施例所述);如果存在,将对应的Tethering热点的DNS服务器地址的路由设置为所述dun类型PDP连接的网卡接口。

S26、向所述TetherInterfaceSM状态机返回所述dun类型PDP连接的相关信息。具体为,通过chooseUpstreamType函数获得所述dun类型PDP连接的网卡信息,然后过消息CMD_TETHER_CONNECTION_CHANGED发送所述网卡信息给所述TetherInterfaceSM。

S03、当所述TetherInterfaceSM在TetheredState状态下获得所述网卡信息时,调用函数NetworkManagementService.enableNat()启动NAT网址转换功能。以USB绑定热点的接口rndis为例,即发送命令:nat enable rndis0 rmnet0 2 fe80::/64 192.168.42.0/24。进而使得所述终端通过所述dun类型的PDP连接上网。

需要说明是的, 所述手机上的应用程序通过default类型的PDP连接上网,或者所述终端通过手机的default类型的PDP连接上网,以及在Tethering热点服务结束时中断dun类型PDP连接等属于现有技术,在本实施例中不作赘述。

并且,基于类似的原理,除Android4.0系统的手机之外,可将上述实施例的基于手机网络共享服务的网络连接的方法移植到其他操作系统的手机中。

由上可见,通过本发明的上述实施例的基于手机网络共享服务的网络连接的方法,可以在手机网络共享服务开启时,建立一个dun类型的PDP连接,使得连接该手机的终端可通过dun类型的PDP连接上网,同时手机上运行的应用程序可通过系统原有的default类型的PDP连接上网,无需用户手动进行设置,为用户提供了方便。

基于上述实施例,本发明还提供了一种采用上述所述基于手机网络共享服务的网络连接的方法的手机,如图4所示,本实施例的手机包括:

请求接收模块510,用于当手机的网络共享服务开启时,接收手机上运行的应用程序或通过该手机上网的终端发送的连接网络的请求; 

控制模块520,用于当接收到所述应用程序发送的请求时,控制所述应用程序通过该手机系统默认的默认类型的PDP连接上网;当接收到所述终端发送的连接网络的请求时,建立一个拨号网络类型的PDP连接,获取该拨号网络类型的PDP连接的网卡信息,并根据所述网卡信息控制所述终端通过所述拨号网络类型的PDP连接上网。

较佳的,如图5所示,所述控制模块520还包括:

第一控制单元521、用于当接收到所述应用程序发送的请求时,控制所述应用程序通过该手机系统默认的默认类型的的PDP连接上网;

第二控制单元522、当接收到所述终端发送的连接网络的请求时,建立一个拨号网络类型的PDP连接,获取该拨号网络类型的PDP连接的网卡信息,并根据所述网卡信息控制所述终端通过所述拨号网络类型的PDP连接上网。具体如上述实施例所述。

其中,如图6所示,所述第二控制单元522还包括:

配置子单元201,用于当收到所述终端发送的连接网络的请求时,对手机系统中对应的网络共享的接口进行配置,并保存所述接口的信息;

判断子单元202、用于当收到所述终端发送的连接网络的请求时,判断是否可建立一个拨号网络类型的PDP连接。

较佳的,所述第二控制单元522还包括:

连接建立子单元203,用于新建一个拨号网络类型的PDP连接;并设置对应的网络热点;具体如上述图3的实施例所述。

路由更新子单元204,用于当拨号网络类型的PDP连接建立成功后, 将到所述PDP连接对应的网卡的路由信息添加到对应的路由表中;并更新该手机的DNS服务器地址对应的路由信息。具体如上述图3的实施例所述。

较佳的,所述第二控制单元522还包括:

查询子单元205,用于从所述对应的DNS服务器地址对应的路由信息中获取所述拨号网络类型的PDP连接的网卡信息;具体如上述图3的实施例所述。

控制子单元206,用于根据所述网卡信息启动NAT网址转换功能,以控制所述终端通过所述拨号网络类型的PDP连接上网。具体如上述图3的实施例所述。

 其中,所述判断子单元202还包括:

获取细胞,用于从所述手机系统属性中读取对应的运营商的标识,所述标识包括国家码和网号;并根据所述运营商的标识,从手机系统中对应的数据库中获得该运营商的所有APN信息;具体如上述图2的实施例所述。

判断细胞,用于遍历所述运营商的所有APN,判断是否存在拨号网络类型的APN;当存在拨号网络类型的APN时,则判断为可建立一个拨号网络类型的PDP连接;具体如上述图2的实施例所述。

综上所述,本发明所提供的一种基于手机网络共享服务的网络连接的方法及手机,通过在手机的网络共享服务开启时,适应性的为连接该手机的终端建立一个dun类型的PDP连接,使得所述终端可通过该dun类型的 PDP连接上网;与此同时,手机中运行的应用程序通过default类型的PDP连接上网。使手机增加了新功能:当手机处于网络共享服务状态时,手机上运行的应用程序可通过default类型APN建立PDP连接上网,同时连接该手机的终端可通过dun类型APN建立PDP连接上网。无需用户手动设置,为用户提供了方便。

应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号