本發(fā)明涉及移動(dòng)終端領(lǐng)域,尤其涉及的是一種基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法及手機(jī)。
背景技術(shù):Android(安卓)是現(xiàn)有智能移動(dòng)終端常用的操作系統(tǒng),基于WCDMA網(wǎng)絡(luò)的Android手機(jī)必須通過PDP(分組數(shù)據(jù)協(xié)議)連接才能上網(wǎng),而PDP連接需根據(jù)某一個(gè)APN(訪問接入點(diǎn))建立。手機(jī)的APN有default(默認(rèn))、dun(撥號(hào)網(wǎng)絡(luò))、mms(彩信)等多種類型。Android手機(jī)建立的PDP連接時(shí)默認(rèn)使用default類型的APN,因此Android手機(jī)上運(yùn)行的瀏覽器等應(yīng)用程序通過default類型的APN連接到因特網(wǎng)?;赪CDMA網(wǎng)絡(luò)的Android手機(jī)在啟動(dòng)Tethering熱點(diǎn)(網(wǎng)絡(luò)共享或叫手機(jī)便攜式熱點(diǎn),即手機(jī)將它的上網(wǎng)功能分享給其他終端使用的功能,例如USB綁定或便攜式WLAN熱點(diǎn))服務(wù)時(shí),其它的終端可通過該Tethering熱點(diǎn)連接Android手機(jī),并通過該Android手機(jī)上默認(rèn)建立的PDP連接(調(diào)用的是default類型的APN設(shè)置)上網(wǎng),但通過Tethering熱點(diǎn)服務(wù)上網(wǎng)最合適的PDP連接應(yīng)該使用dun類型的APN設(shè)置,現(xiàn)有技術(shù)需要用戶手動(dòng)設(shè)置,給用戶帶來了許多不便。因此,現(xiàn)有技術(shù)還有待于改進(jìn)和發(fā)展。
技術(shù)實(shí)現(xiàn)要素:本發(fā)明要解決的技術(shù)問題在于,針對現(xiàn)有技術(shù)的上述缺陷,提供一種基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法及手機(jī),旨在當(dāng)手機(jī)啟動(dòng)網(wǎng)絡(luò)共享服務(wù)時(shí),該手機(jī)的應(yīng)用程序可自動(dòng)從網(wǎng)絡(luò)連接默認(rèn)建立的default類型PDP連接切換到網(wǎng)絡(luò)共享最合適的dun類型的PDP連接,為用戶提供方便。本發(fā)明解決技術(shù)問題所采用的技術(shù)方案如下:一種基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法,其中,包括步驟:A、開啟手機(jī)的網(wǎng)絡(luò)共享服務(wù),接收通過該手機(jī)上網(wǎng)的終端發(fā)送的網(wǎng)絡(luò)共享服務(wù)的網(wǎng)絡(luò)連接請求;B、當(dāng)接收到所述網(wǎng)絡(luò)連接請求時(shí),控制斷開該手機(jī)默認(rèn)類型的PDP連接,對該手機(jī)中對應(yīng)的網(wǎng)絡(luò)共享的接口進(jìn)行配置,并新建一撥號(hào)網(wǎng)絡(luò)類型的PDP連接;C、當(dāng)所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接成功后,配置該連接的DNS和路由,并獲取該撥號(hào)網(wǎng)絡(luò)類型的PDP連接的網(wǎng)卡信息,并根據(jù)所述網(wǎng)卡信息控制所述終端通過所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接上網(wǎng)。所述基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法,其中,還包括步驟D:當(dāng)關(guān)閉手機(jī)的網(wǎng)絡(luò)共享服務(wù)時(shí),控制斷開所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接,將網(wǎng)絡(luò)連接方式切換到該手機(jī)系統(tǒng)默認(rèn)類型的PDP連接。所述所述基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法,其中,所述步驟B中建立一個(gè)撥號(hào)網(wǎng)絡(luò)類型的PDP連接的步驟具體包括:B1、從所述手機(jī)系統(tǒng)屬性中讀取對應(yīng)運(yùn)營商的標(biāo)識(shí),所述標(biāo)識(shí)包括運(yùn)營商的國家碼和網(wǎng)號(hào),并根據(jù)所述運(yùn)營商的標(biāo)識(shí),從所述手機(jī)系統(tǒng)對應(yīng)的數(shù)據(jù)庫中獲得該運(yùn)營商的所有APN信息;B2、遍歷所述APN信息,判斷是否存在撥號(hào)網(wǎng)絡(luò)類型的APN;當(dāng)是時(shí)進(jìn)入步驟B3;當(dāng)否時(shí),則使用手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接;B3、判斷手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接的連接狀態(tài)是否連接完成,若連接完成,則斷開手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接,新建一個(gè)撥號(hào)網(wǎng)絡(luò)類型的PDP連接;若連接狀態(tài)為正在連接,則延遲到所述連接狀態(tài)為連接完成后,再進(jìn)行上述操作。所述所述基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法,其中,所述步驟B和步驟C之間還包括:步驟C0、對手機(jī)網(wǎng)絡(luò)共享服務(wù)進(jìn)行設(shè)置,其包括:啟動(dòng)IP地址轉(zhuǎn)發(fā)功能,設(shè)置網(wǎng)絡(luò)共享服務(wù)可分配的IP地址以及設(shè)置網(wǎng)絡(luò)共享服務(wù)的DNS服務(wù)器地址。所述基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法,其中,所述步驟C中獲取該撥號(hào)網(wǎng)絡(luò)類型的PDP連接的網(wǎng)卡信息,并根據(jù)所述網(wǎng)卡信息控制所述終端通過所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接上網(wǎng)的步驟包括:C21、從所述手機(jī)的DNS服務(wù)器地址對應(yīng)的路由信息中獲取到所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接的網(wǎng)卡信息;C22、根據(jù)所述網(wǎng)卡信息啟動(dòng)NAT網(wǎng)址轉(zhuǎn)換功能,以控制所述終端通過所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接上網(wǎng)。一種采用所述基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法的手機(jī),其中,包括:請求接收模塊,用于開啟手機(jī)的網(wǎng)絡(luò)共享服務(wù),接收通過該手機(jī)上網(wǎng)的終端發(fā)送的網(wǎng)絡(luò)共享服務(wù)的網(wǎng)絡(luò)連接請求;控制切換模塊,用于當(dāng)接收到所述網(wǎng)絡(luò)連接請求時(shí),控制斷開該手機(jī)默認(rèn)類型的PDP連接,對該手機(jī)中對應(yīng)的網(wǎng)絡(luò)共享的接口進(jìn)行配置,并新建一撥號(hào)網(wǎng)絡(luò)類型的PDP連接;配置連接模塊,用于當(dāng)所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接成功后,配置該連接的DNS和路由,并獲取該撥號(hào)網(wǎng)絡(luò)類型的PDP連接的網(wǎng)卡信息,并根據(jù)所述網(wǎng)卡信息控制所述終端通過所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接上網(wǎng)。所述的手機(jī),其中,還包括:恢復(fù)默認(rèn)模塊,用于當(dāng)關(guān)閉手機(jī)的網(wǎng)絡(luò)共享服務(wù)時(shí),控制斷開所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接,將網(wǎng)絡(luò)連接方式切換到該手機(jī)系統(tǒng)默認(rèn)類型的PDP連接。所述的手機(jī),其中,所述控制切換模塊中包括以下單元:APN信息獲取單元、從所述手機(jī)系統(tǒng)屬性中讀取對應(yīng)運(yùn)營商的標(biāo)識(shí),所述標(biāo)識(shí)包括運(yùn)營商的國家碼和網(wǎng)號(hào),并根據(jù)所述運(yùn)營商的標(biāo)識(shí),從所述手機(jī)系統(tǒng)對應(yīng)的數(shù)據(jù)庫中獲得該運(yùn)營商的所有APN信息;判斷類型單元,遍歷所述APN信息,判斷是否存在撥號(hào)網(wǎng)絡(luò)類型的APN;當(dāng)是時(shí)進(jìn)入步驟B3;當(dāng)否時(shí),則使用手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接;類型切換單元,判斷手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接的連接狀態(tài)是否連接完成,若連接完成,則斷開手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接,新建一個(gè)撥號(hào)網(wǎng)絡(luò)類型的PDP連接;若連接狀態(tài)為正在連接,則延遲到所述連接狀態(tài)為連接完成后,再進(jìn)行上述操作。所述的手機(jī),其中,所述系統(tǒng)還包括以下單元:網(wǎng)絡(luò)共享服務(wù)設(shè)置單元,用于對手機(jī)網(wǎng)絡(luò)共享服務(wù)進(jìn)行設(shè)置,其包括,啟動(dòng)IP地址轉(zhuǎn)發(fā)功能;設(shè)置網(wǎng)絡(luò)共享服務(wù)可分配的IP地址以及設(shè)置網(wǎng)絡(luò)共享服務(wù)的DNS服務(wù)器地址。所述的手機(jī),其中,所述配置連接模塊還包括:查詢子單元,用于從所述對應(yīng)的DNS服務(wù)器地址對應(yīng)的路由信息中獲取所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接的網(wǎng)卡信息;控制子單元,用于根據(jù)所述網(wǎng)卡信息啟動(dòng)NAT網(wǎng)址轉(zhuǎn)換功能,以控制所述終端通過所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接上網(wǎng)。有益效果:本發(fā)明所提供的一種基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法及手機(jī),當(dāng)該手機(jī)在進(jìn)行網(wǎng)絡(luò)共享服務(wù)時(shí),其可以自動(dòng)從手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接切換到網(wǎng)絡(luò)共享服務(wù)最為合適的撥號(hào)網(wǎng)絡(luò)類型的PDP連接上網(wǎng),無需用戶手動(dòng)設(shè)置,為用戶提供了方便。附圖說明圖1為本發(fā)明提供的一種基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法的流程圖。圖2為本發(fā)明提供的一種基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法中建立一個(gè)撥號(hào)網(wǎng)絡(luò)類型的PDP連接的流程圖。圖3為本發(fā)明提供的一種基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法的最佳應(yīng)用實(shí)施例的流程圖。圖4為本發(fā)明提供的一種手機(jī)的原理結(jié)構(gòu)框圖。圖5為本發(fā)明提供的一種手機(jī)中控制切換模塊的原理結(jié)構(gòu)框圖。具體實(shí)施方式為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚、明確,以下參照附圖并舉實(shí)施例對本發(fā)明進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。請參見圖1,圖1是本發(fā)明一種基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法步驟流程圖。本實(shí)施例中,所述方法包括以下步驟:S1、開啟手機(jī)的網(wǎng)絡(luò)共享服務(wù),接收通過該手機(jī)上網(wǎng)的終端發(fā)送的網(wǎng)絡(luò)共享服務(wù)的網(wǎng)絡(luò)連接請求。在啟動(dòng)手機(jī)的網(wǎng)絡(luò)共享服務(wù)功能時(shí),其他終端可通過USB綁定或WLAN熱點(diǎn)接入該手機(jī),以該手機(jī)為調(diào)制解調(diào)器,向該手機(jī)發(fā)送連接網(wǎng)絡(luò)的請求,以通過該手機(jī)提供的網(wǎng)絡(luò)熱點(diǎn)連接網(wǎng)絡(luò),并且,在默認(rèn)狀態(tài)下使用default類型的APN建立PDP連接上網(wǎng)。S2、當(dāng)接收到所述網(wǎng)絡(luò)連接請求時(shí),控制斷開該手機(jī)系統(tǒng)默認(rèn)類型的PDP連接,對該手機(jī)系統(tǒng)中對應(yīng)的網(wǎng)絡(luò)共享的接口進(jìn)行配置,并新建一撥號(hào)網(wǎng)絡(luò)類型的PDP連接。當(dāng)手機(jī)系統(tǒng)接收到其他終端發(fā)出的網(wǎng)絡(luò)共享服務(wù)的網(wǎng)絡(luò)連接請求時(shí),先斷開手機(jī)系統(tǒng)默認(rèn)的default類型的PDP連接,并新建一撥號(hào)網(wǎng)絡(luò)類型(dun類型)的PDP連接。具體的,本實(shí)施例中優(yōu)選基于WCDMA網(wǎng)絡(luò)的安卓手機(jī)為例,如圖2所示為提供的一種基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法中建立一個(gè)撥號(hào)網(wǎng)絡(luò)類型的PDP連接的流程圖,新建一撥號(hào)網(wǎng)絡(luò)類型的PDP連接包含以下步驟:S201、從所述手機(jī)系統(tǒng)屬性中讀取對應(yīng)運(yùn)營商的標(biāo)識(shí),所述標(biāo)識(shí)包括運(yùn)營商的國家碼和網(wǎng)號(hào),并根據(jù)所述運(yùn)營商的標(biāo)識(shí),從所述手機(jī)系統(tǒng)對應(yīng)的數(shù)據(jù)庫中獲得該運(yùn)營商的所有APN信息。S202、遍歷手機(jī)系統(tǒng)中的所有APN信息,判斷是否存在撥號(hào)網(wǎng)絡(luò)類型的APN;當(dāng)是時(shí)進(jìn)入步驟S204;當(dāng)否時(shí),進(jìn)入步驟S203。S203、使用手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接進(jìn)行其他移動(dòng)終端的網(wǎng)絡(luò)共享服務(wù)。S204、判斷手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接的連接狀態(tài)是否為連接中,若連接已經(jīng)完成,則進(jìn)入步驟S205,否則進(jìn)入步驟S206。S205、斷開手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接,新建一個(gè)撥號(hào)網(wǎng)絡(luò)類型的PDP連接。S206、延遲到所述連接狀態(tài)為連接完成后,再進(jìn)行切換網(wǎng)絡(luò)連接類型的操作。所述所述基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法,其中,所述步驟S2和步驟S3之間還包括:步驟23、對手機(jī)網(wǎng)絡(luò)共享服務(wù)進(jìn)行設(shè)置,其包括:1)啟動(dòng)IP地址轉(zhuǎn)發(fā)功能;2)設(shè)置網(wǎng)絡(luò)共享服務(wù)可分配的IP地址;3)設(shè)置網(wǎng)絡(luò)共享服務(wù)的DNS服務(wù)器地址。S3、當(dāng)所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接成功后,配置該連接的DNS和路由,并獲取該撥號(hào)網(wǎng)絡(luò)類型的PDP連接的網(wǎng)卡信息,并根據(jù)所述網(wǎng)卡信息控制所述終端通過所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接上網(wǎng)。所述配置撥號(hào)網(wǎng)絡(luò)類型的PDP連接的DNS和路由,具體包括:步驟311、重復(fù)上述步驟S201-S204,判斷是否存在撥號(hào)網(wǎng)絡(luò)類型的APN,若不存在則使用手機(jī)系統(tǒng)默認(rèn)類型的PDP連接,如果存在則進(jìn)行步驟312;步驟312、對所述新建的撥號(hào)網(wǎng)絡(luò)類型的PDP連接配置DNS服務(wù)器;步驟313、對所述新建的撥號(hào)網(wǎng)絡(luò)類型的PDP連接配置路由。具體的,在上述步驟S3中所述的獲取該撥號(hào)網(wǎng)絡(luò)類型的PDP連接的網(wǎng)卡信息,并根據(jù)所述網(wǎng)卡信息控制所述終端通過所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接上網(wǎng),具體步驟包括:步驟321、從所述手機(jī)的DNS服務(wù)器地址對應(yīng)的路由信息中獲取到所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接的網(wǎng)卡信息;步驟322、根據(jù)所述網(wǎng)卡信息啟動(dòng)NAT網(wǎng)址轉(zhuǎn)換功能,以控制所述終端通過所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接上網(wǎng)。下面以具體應(yīng)用實(shí)施例對上述方法進(jìn)行詳細(xì)的說明。如圖3所示,以Android4.0系統(tǒng)為例,本實(shí)施例中對手機(jī)其中Android系統(tǒng)的Tethering.java文件和ConnectivityService.java文件的代碼進(jìn)行修改,以實(shí)現(xiàn)接入手機(jī)網(wǎng)絡(luò)共享服務(wù)(也即是Tethering熱點(diǎn))的終端可通過dun類型的PDP連接上網(wǎng),具體實(shí)施過程包括:S01、首先接收接入該手機(jī)的終端發(fā)送的連接網(wǎng)絡(luò)的請求,并完成對應(yīng)接口的配置與添加。具體包括步驟S11-S14。S11、當(dāng)收到開啟手機(jī)網(wǎng)絡(luò)共享服務(wù)的用戶指令時(shí),安卓4.0系統(tǒng)的TetherInterfaceSM狀態(tài)機(jī)進(jìn)入InitialState狀態(tài),以接收通過該手機(jī)上網(wǎng)的終端發(fā)送的連接網(wǎng)絡(luò)的請求(即CMD_TETHER_REQUESTED),當(dāng)收到所述請求時(shí),發(fā)送確認(rèn)連接類型的消息CMD_TETHER_MODE_REQUESTED給系統(tǒng)的TetherMasterSM狀態(tài)機(jī);所述TetherInterfaceSM狀態(tài)機(jī)進(jìn)入StartingState狀態(tài)。S12、在進(jìn)入StartingState后,對該手機(jī)系統(tǒng)中對應(yīng)的接口(Usb接口為rndis,WIFI接口為wlan)進(jìn)行配置,即調(diào)用NetworkManagementService.setInterfaceConfig配置Tethering接口的屬性。以USB綁定的接口rndis為例:通過調(diào)用configureUsbIface()函數(shù)配置對應(yīng)的接口,具體命令為:interfacesetcfgrndis0192.168.42.12924[upbroadcastmulticast]。配置Tethering接口屬性成功后,所述TetherInterfaceSM狀態(tài)機(jī)進(jìn)入TetheredState狀態(tài)。S13、進(jìn)入TetheredState狀態(tài)后,保存所述配置的Tethering接口的信息,通過調(diào)用NetworkManagementService.tetherInterface()添加所述tethering接口。以USB綁定的接口rndis為例,添加接口的具體命令為:tetherinterfaceaddrndis0。S14、添加所述tethering接口成功后,所述TetherInterfaceSM狀態(tài)機(jī)等待所述TetherMasterSM返回dun類型的PDP連接的網(wǎng)卡信息。與所述過程S01同時(shí)執(zhí)行的還有圖3中S02所示過程,系統(tǒng)的TetherMasterSM狀態(tài)機(jī)在手機(jī)網(wǎng)絡(luò)共享服務(wù)開啟時(shí)進(jìn)入InitialState狀態(tài),準(zhǔn)備建立dun類型的PDP連接。具體包括步驟S21-S25。S21、當(dāng)收到TetherInterfaceSM在InitialState狀態(tài)下發(fā)送的CMD_TETHER_MODE_REQUESTED消息時(shí),所述TetherMasterSM狀態(tài)機(jī)進(jìn)入TetherModeAliveState狀態(tài)。S22、在TetherModeAliveState狀態(tài)中,調(diào)用chooseUpstreamType函數(shù)先斷開default類型APN的PDP連接,并建立一個(gè)dun類型的PDP連接。在上述步驟S22中新建一個(gè)dun類型的PDP連接的具體步驟為:(1).從系統(tǒng)屬性讀取運(yùn)營商標(biāo)識(shí)MCC+MNC,即運(yùn)營商的國家碼+網(wǎng)號(hào);(2).根據(jù)該運(yùn)營商的標(biāo)識(shí),從存儲(chǔ)APN設(shè)置的數(shù)據(jù)庫表Carriers中獲得該運(yùn)營商的所有APN;(3).循環(huán)讀取獲得的APN設(shè)置,判斷是否為dun類型的APN;(4).如果不存在dun類型的APN,維持Android4.0系統(tǒng)默認(rèn)類型的PDP連接,即使用默認(rèn)的default類型APN的PDP連接提供給Tethering熱點(diǎn)服務(wù)上網(wǎng);(5).如果存在dun類型的APN,判斷當(dāng)前DefaultAPN的連接狀態(tài)是否為CONNECTING。如果不是,先斷開default類型的PDP連接,然后新建dun類型APN的PDP連接;(6):如果當(dāng)前DefaultAPN的連接狀態(tài)是CONNECTING。則延時(shí)發(fā)送CMD_RETRY_UPSTREAM消息,收到消息后再執(zhí)行PDP連接的切換。需要強(qiáng)調(diào)的是:如果當(dāng)前DefaultAPN的連接狀態(tài)是CONNECTING(即正在連接),此時(shí)執(zhí)行該P(yáng)DP連接的斷開會(huì)失敗,因此要延遲一段時(shí)間,等DefaultAPN的PDP連接完成,即連接狀態(tài)變?yōu)镃ONNECTED。此時(shí)再執(zhí)行該P(yáng)DP連接的斷開才會(huì)成功。S23、在TetherModeAliveState狀態(tài)中,調(diào)用turnOnMasterTetherSettings函數(shù)設(shè)置對應(yīng)的網(wǎng)絡(luò)共享服務(wù)(Tethering熱點(diǎn)),具體包括:(1).通過調(diào)用NetworkManagementService.setIpForwardingEnabled()啟動(dòng)ip地址轉(zhuǎn)發(fā)功能,命令為:ipfwdenable;(2).調(diào)用NetworkManagementService.startTethering()設(shè)置Tethering熱點(diǎn)可分配的ip地址,命令為:tetherstart192.168.42.2192.168.42.254……;(3).調(diào)用NetworkManagementService.setDnsForwarders()設(shè)置Tethering熱點(diǎn)的DNS服務(wù)器地址,命令為:tetherdnsset8.8.8.88.8.4.4。S24、當(dāng)所述dun類型的PDP連接建立成功后,dun類型的PDP連接建立成功后,connectivityService.hanleConnectivityChange()函數(shù)中配置該連接的DNS(域名解析服務(wù)器)和route(路由)。S25、TetherModeAliveState狀態(tài)接收到CMD_UPSTREAM_CHANGED消息,再次調(diào)用chooseUpstreamType函數(shù),向所述TetherInterfaceSM狀態(tài)機(jī)返回所述dun類型PDP連接的相關(guān)信息。具體為,通chooseUpstreamType函數(shù)獲得所述dun類型PDP連接的網(wǎng)卡信息,然后過消息CMD_TETHER_CONNECTION_CHANGED發(fā)送所述網(wǎng)卡信息給所述TetherInterfaceSM。S03、當(dāng)所述TetherInterfaceSM在TetheredState狀態(tài)下獲得所述網(wǎng)卡信息時(shí),調(diào)用函數(shù)NetworkManagementService.enableNat()啟動(dòng)NAT網(wǎng)址轉(zhuǎn)換功能。以USB綁定熱點(diǎn)的接口rndis為例,即發(fā)送命令:natenablerndis0rmnet02fe80::/64192.168.42.0/24。進(jìn)而使得所述終端通過所述dun類型的PDP連接上網(wǎng)。最后,在Android系統(tǒng)結(jié)束Tethering熱點(diǎn)服務(wù)時(shí),,將PDP連接切換回去,即將斷開新建的dun類型APN的PDP連接并重建default類型APN的PDP連接。1).系統(tǒng)結(jié)束Tethering熱點(diǎn)服務(wù)時(shí)TetherMasterSM狀態(tài)機(jī)會(huì)退出TetherModeAliveState狀態(tài)。2).TetherModeAliveState狀態(tài)退出時(shí),手機(jī)系統(tǒng)會(huì)調(diào)用函數(shù)turnOffUpstreamMobileConnection(),中斷當(dāng)前的PDP連接。即中斷我們新建的dun類型APN的PDP連接。3).重建default類型APN的PDP連接,從而使手機(jī)系統(tǒng)恢復(fù)到普通上網(wǎng)時(shí)使用的default類型APNA的PDP連接。并且,基于類似的原理,除Android4.0系統(tǒng)的手機(jī)之外,可將上述實(shí)施例的基于手機(jī)網(wǎng)絡(luò)共享服務(wù)的網(wǎng)絡(luò)連接的方法移植到其他操作系統(tǒng)的手機(jī)中。由上可見,通過本發(fā)明的上述實(shí)施例的一種基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法,可以在手機(jī)網(wǎng)絡(luò)共享服務(wù)開啟時(shí),建立一個(gè)dun類型的PDP連接,使得連接該手機(jī)的終端可通過dun類型的PDP連接上網(wǎng)。當(dāng)連接該手機(jī)的終端中斷與該手機(jī)的網(wǎng)絡(luò)共享服務(wù)時(shí),該手機(jī)恢復(fù)到普通上網(wǎng)時(shí)手機(jī)系統(tǒng)默認(rèn)類型的PDP連接上網(wǎng),即Android手機(jī)在普通上網(wǎng)時(shí)使用default類型APN的PDP連接,在接受與其他終端網(wǎng)絡(luò)共享時(shí),系統(tǒng)會(huì)自動(dòng)切換到最合適的dun類型的PDP連接,無需用戶手動(dòng)進(jìn)行設(shè)置,為用戶提供了方便?;谏鲜鰧?shí)施例,本發(fā)明還提供了一種采用上述所述基于手機(jī)網(wǎng)絡(luò)共享服務(wù)的網(wǎng)絡(luò)連接的方法的手機(jī),如圖4所示為所述手機(jī)的原理結(jié)構(gòu)框圖,其中,包括:請求接收模塊10,用于開啟手機(jī)的網(wǎng)絡(luò)共享服務(wù),接收通過該手機(jī)上網(wǎng)的終端發(fā)送的網(wǎng)絡(luò)共享服務(wù)的網(wǎng)絡(luò)連接請求;控制切換模塊20,用于當(dāng)接收到所述網(wǎng)絡(luò)連接請求時(shí),控制斷開該手機(jī)默認(rèn)類型的PDP連接,對該手機(jī)中對應(yīng)的網(wǎng)絡(luò)共享的接口進(jìn)行配置,并新建一撥號(hào)網(wǎng)絡(luò)類型的PDP連接;配置連接模塊30,用于當(dāng)所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接成功后,配置該連接的DNS和路由,并獲取該撥號(hào)網(wǎng)絡(luò)類型的PDP連接的網(wǎng)卡信息,并根據(jù)所述網(wǎng)卡信息控制所述終端通過所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接上網(wǎng)。所述的手機(jī),其中,還包括:恢復(fù)默認(rèn)模塊,用于當(dāng)關(guān)閉手機(jī)的網(wǎng)絡(luò)共享服務(wù)時(shí),控制斷開所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接,將網(wǎng)絡(luò)連接方式切換到該手機(jī)系統(tǒng)默認(rèn)類型的PDP連接。所述的手機(jī),其中,如圖5所示,所述控制切換模塊中包括以下單元:APN信息獲取單元21、從所述手機(jī)系統(tǒng)屬性中讀取對應(yīng)運(yùn)營商的標(biāo)識(shí),所述標(biāo)識(shí)包括運(yùn)營商的國家碼和網(wǎng)號(hào),并根據(jù)所述運(yùn)營商的標(biāo)識(shí),從所述手機(jī)系統(tǒng)對應(yīng)的數(shù)據(jù)庫中獲得該運(yùn)營商的所有APN信息;判斷類型單元22,遍歷所述APN信息,判斷是否存在撥號(hào)網(wǎng)絡(luò)類型的APN;當(dāng)是時(shí)進(jìn)入步驟B3;當(dāng)否時(shí),則使用手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接;類型切換單元23,判斷手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接的連接狀態(tài)是否連接完成,若連接完成,則斷開手機(jī)系統(tǒng)默認(rèn)類型的APN的PDP連接,新建一個(gè)撥號(hào)網(wǎng)絡(luò)類型的PDP連接;若連接狀態(tài)為正在連接,則延遲到所述連接狀態(tài)為連接完成后,再進(jìn)行上述操作。所述的手機(jī),其中,所述系統(tǒng)還包括以下單元:網(wǎng)絡(luò)共享服務(wù)設(shè)置單元,用于對手機(jī)網(wǎng)絡(luò)共享服務(wù)進(jìn)行設(shè)置,其包括,啟動(dòng)IP地址轉(zhuǎn)發(fā)功能;設(shè)置網(wǎng)絡(luò)共享服務(wù)可分配的IP地址以及設(shè)置網(wǎng)絡(luò)共享服務(wù)的DNS服務(wù)器地址。所述的手機(jī),其中,所述配置連接模塊還包括:查詢子單元,用于從所述對應(yīng)的DNS服務(wù)器地址對應(yīng)的路由信息中獲取所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接的網(wǎng)卡信息;控制子單元,用于根據(jù)所述網(wǎng)卡信息啟動(dòng)NAT網(wǎng)址轉(zhuǎn)換功能,以控制所述終端通過所述撥號(hào)網(wǎng)絡(luò)類型的PDP連接上網(wǎng)。因上述模塊中的功能與上述方法步驟中的功能一一對應(yīng),在此不再贅述。綜上所述,本發(fā)明所提供的一種基于手機(jī)熱點(diǎn)的網(wǎng)絡(luò)連接切換方法及手機(jī),通過在手機(jī)的網(wǎng)絡(luò)共享服務(wù)開啟時(shí),當(dāng)接收到其他終端發(fā)出的網(wǎng)絡(luò)共享服務(wù)的網(wǎng)絡(luò)連接請求時(shí),可以自動(dòng)中斷該手機(jī)系統(tǒng)默認(rèn)類型的PDP連接,為該手機(jī)的終端建立一個(gè)dun類型的PDP連接,使得所述終端可通過該dun類型的PDP連接上網(wǎng);當(dāng)手機(jī)中斷網(wǎng)絡(luò)共享服務(wù)狀態(tài)時(shí),系統(tǒng)會(huì)自動(dòng)中斷新建的dun類型的PDP連接,恢復(fù)手機(jī)系統(tǒng)默認(rèn)類型的PDP,該手機(jī)的網(wǎng)絡(luò)共享服務(wù)的網(wǎng)絡(luò)連接類型可以根據(jù)其他終端是否與該手機(jī)進(jìn)行網(wǎng)絡(luò)共享來自動(dòng)進(jìn)行切換,無需用戶手動(dòng)設(shè)置,為用戶提供了方便。應(yīng)當(dāng)理解的是,本發(fā)明的應(yīng)用不限于上述的舉例,對本領(lǐng)域普通技術(shù)人員來說,可以根據(jù)上述說明加以改進(jìn)或變換,所有這些改進(jìn)和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護(hù)范圍。