切換內(nèi)外置Wi-Fi的方法和Android終端的制作方法
【專利摘要】本發(fā)明公開了切換內(nèi)外置Wi-Fi的方法和Android終端,其方法包括A、在Android終端的Wi-Fi設(shè)置功能開啟時(shí),獲取當(dāng)前Wi-Fi模塊的數(shù)量;B、判斷Wi-Fi模塊的數(shù)量是大于1還是等于1;當(dāng)大于1時(shí),判斷內(nèi)置Wi-Fi模塊被選擇還是外置Wi-Fi模塊被選擇;C、當(dāng)內(nèi)置Wi-Fi模塊被選擇時(shí),加載內(nèi)置Wi-Fi模塊;當(dāng)外置Wi-Fi模塊被選擇時(shí),判斷內(nèi)置Wi-Fi模塊是否被加載;若內(nèi)置Wi-Fi模塊已被加載,則卸載內(nèi)置Wi-Fi模塊后開啟外置Wi-Fi模塊。本發(fā)明實(shí)現(xiàn)了內(nèi)置Wi-Fi模塊和外置Wi-Fi模塊的智能切換,使Android終端的上網(wǎng)功能不受內(nèi)置Wi-Fi模塊的限制。
【專利說明】切換內(nèi)外置W1-Fi的方法和Android終端
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信【技術(shù)領(lǐng)域】,特別涉及一種切換內(nèi)外置W1-Fi的方法和Android終端。
【背景技術(shù)】
[0002]移動(dòng)互聯(lián)網(wǎng)設(shè)備(如智能手機(jī)、平板電腦等)一般只有一個(gè)內(nèi)置的W1-Fi模塊,隨著智能系統(tǒng)的普及,越來越多的智能操作系統(tǒng)被移植到電視平臺(tái)上。目前智能電視的主流操作系統(tǒng)一般采用Android系統(tǒng),然而Android智能電視只能支持一個(gè)內(nèi)置W1-Fi設(shè)備,處于各種因素的影響可能會(huì)導(dǎo)致內(nèi)置W1-Fi的效果不是很理想,或者當(dāng)用戶想要選擇性能更好的W1-Fi適配器時(shí),無法自行更換W1-Fi模塊,使智能電視的上網(wǎng)功能受到了限制。
[0003]另外,即使有些Android終端通過USB 口外擴(kuò)了 W1-Fi模塊,但Android系統(tǒng)沒有提供對應(yīng)的驅(qū)動(dòng)來加載該外置的W1-Fi模塊,無法實(shí)現(xiàn)智能的切換用戶想用的W1-Fi模塊,影響了用戶的使用體驗(yàn),不利于智能終端的推廣。
【發(fā)明內(nèi)容】
[0004]鑒于上述現(xiàn)有技術(shù)的不足之處,本發(fā)明的目的在于提供一種切換內(nèi)外置W1-Fi的方法和Android終端,以解決現(xiàn)有Android終端不能更換外置W1-Fi模塊的問題。
[0005]為了達(dá)到上述目的,本發(fā)明采取了以下技術(shù)方案:
一種Android終端切換內(nèi)外置W1-Fi的方法,其包括:
A、在Android終端的W1-Fi設(shè)置功能開啟時(shí),獲取當(dāng)前W1-Fi模塊的數(shù)量;
B、判斷所述W1-Fi模塊的數(shù)量是大于I還是等于I;當(dāng)W1-Fi模塊的數(shù)量大于I時(shí),判斷內(nèi)置W1-Fi模塊被選擇還是外置W1-Fi模塊被選擇;
C、當(dāng)內(nèi)置W1-Fi模塊被選擇時(shí),加載內(nèi)置W1-Fi模塊;當(dāng)外置W1-Fi模塊被選擇時(shí),判斷所述內(nèi)置W1-Fi模塊是否被加載;若內(nèi)置W1-Fi模塊已被加載,則卸載所述內(nèi)置W1-Fi模塊后開啟外置W1-Fi模塊。
[0006]所述的Android終端切換內(nèi)外置W1-Fi的方法中,在所述步驟B中,當(dāng)W1-Fi模塊的數(shù)量等于I時(shí),直接加載所述內(nèi)置W1-Fi模塊,開啟Android終端的W1-Fi功能。
[0007]所述的Android終端切換內(nèi)外置W1-Fi的方法中,在所述步驟C中,若內(nèi)置W1-Fi模塊未被加載,則關(guān)閉內(nèi)置W1-Fi模塊供電后開啟所述外置W1-Fi模塊。
[0008]所述的Android終端切換內(nèi)外置W1-Fi的方法中,在所述步驟C中,所述若內(nèi)置W1-Fi模塊已被加載,則卸載所述內(nèi)置W1-Fi模塊后開啟外置W1-Fi模塊具體包括:
Cl、若內(nèi)置W1-Fi模塊已被加載,則通過Android終端的第一接口關(guān)閉內(nèi)置W1-Fi模
塊;
C2、通過Android終端的第二接口關(guān)閉內(nèi)置W1-Fi模塊的GPIO的供電,卸載所述內(nèi)置W1-Fi模塊;
C3、開啟Android終端的外置W1-Fi模塊。[0009]所述的Android終端切換內(nèi)外置W1-Fi的方法中,在所述步驟A中,在獲取當(dāng)前W1-Fi模塊的數(shù)量時(shí),通過讀取W1-Fi模塊的pid和vid來獲取W1-Fi模塊的數(shù)量。
[0010]一種用于實(shí)現(xiàn)上述切換內(nèi)外置W1-Fi的方法的Android終端,其特征在于,包括: 內(nèi)置W1-Fi模塊;
外置W1-Fi模塊;
W1-Fi功能設(shè)置模塊,用于設(shè)置Android終端的W1-Fi功能;
獲取模塊,用于獲取當(dāng)前W1-Fi模塊的數(shù)量;
判斷模塊,用于判斷所述W1-Fi模塊的數(shù)量是大于I還是等于1,及判斷內(nèi)置W1-Fi模塊被選擇還是外置W1-Fi模塊被選擇,以及在外置W1-Fi模塊被選擇時(shí),判斷內(nèi)置W1-Fi模塊是否被加載;
卸載模塊,用于卸載所述內(nèi)置W1-Fi模塊;
加載模塊,用于加載所述內(nèi)置W1-Fi模塊或者外置W1-Fi模塊。
[0011]所述的Android終端中,W1-Fi功能設(shè)置模塊,還用于在W1-Fi模塊的數(shù)量為一個(gè)時(shí),控制所述加載模塊加載內(nèi)置W1-Fi模塊,開啟Android終端的W1-Fi功能。
[0012]所述的Android終端中,所述卸載模塊,包括:
第一接口,用于關(guān)閉內(nèi)置W1-Fi模塊;
第二接口,用于讀取內(nèi)置W1-Fi模塊的供電狀態(tài),及在關(guān)閉內(nèi)置W1-Fi模塊時(shí),關(guān)閉內(nèi)置W1-Fi模塊的GPIO的供電,卸載所述內(nèi)置W1-Fi模塊。
[0013]所述的Android終端中,所述第一接口為public booleansetffifiEnabled(boolean enabled)。
[0014]所述的Android終端中,所述第二接口包括用于讀取W1-Fi模塊的GPIO的供電狀態(tài)的讀接口和用于關(guān)閉W1-Fi模塊的GPIO的供電,卸載所述內(nèi)置W1-Fi模塊的設(shè)置接口。
[0015]相較于現(xiàn)有技術(shù),本發(fā)明提供的切換內(nèi)外置W1-Fi的方法和Android終端,通過先獲取當(dāng)前W1-Fi模塊的數(shù)量,在W1-Fi模塊的數(shù)量大于I時(shí),根據(jù)用戶的選擇判斷用戶選擇的是內(nèi)置W1-Fi模塊還是外置W1-Fi模塊,當(dāng)選擇了內(nèi)置W1-Fi模塊時(shí),直接加載內(nèi)置W1-Fi模塊即可;當(dāng)選擇了外置W1-Fi模塊時(shí),需要判斷內(nèi)置W1-Fi模塊是否被加載;若內(nèi)置W1-Fi模塊已被加載,則卸載所述內(nèi)置W1-Fi模塊后開啟外置W1-Fi模塊,實(shí)現(xiàn)了Android終端內(nèi)外置W1-Fi模塊的切換,從而實(shí)現(xiàn)了一個(gè)Android終端支持多個(gè)W1-Fi模塊的功能。
【專利附圖】
【附圖說明】
[0016]圖1為本發(fā)明較佳實(shí)施例Android終端切換內(nèi)外置W1-Fi的方法的流程圖。
[0017]圖2為本發(fā)明較佳實(shí)施例Android終端的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0018]本發(fā)明提供一種切換內(nèi)外置W1-Fi的方法和Android終端,通過Android終端的USB 口外擴(kuò)W1-Fi模塊,使得用戶在不用更換內(nèi)置W1-Fi模塊的情況下,通過Android終端預(yù)留的USB 口來外接一個(gè)W1-Fi模塊,并通過相應(yīng)的應(yīng)用程序任意的選擇使用內(nèi)置W1-Fi模塊還是外置W1-Fi模塊,實(shí)現(xiàn)了內(nèi)外置W1-Fi模塊的切換功能。[0019]為使本發(fā)明的目的、技術(shù)方案及效果更加清楚、明確,以下參照附圖并舉實(shí)施例對本發(fā)明進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0020]本發(fā)明的Android終端為帶Android操作系統(tǒng)的智能手機(jī)、平板電腦、智能電視等。請參閱圖1,其為本發(fā)明較佳實(shí)施例Android終端切換內(nèi)外置W1-Fi的方法的流程圖。如圖1所示,所述的Android終端切換內(nèi)外置W1-Fi的方法包括:
S100、在Android終端的W1-Fi設(shè)置功能開啟時(shí),獲取當(dāng)前W1-Fi模塊的數(shù)量。
[0021]以智能電視為例,當(dāng)智能電視通過USB 口外接了外置W1-Fi模塊時(shí),用戶如果想要設(shè)置智能電視的W1-Fi功能,需要通過用戶界面的“設(shè)置”選項(xiàng)開啟W1-Fi模塊的設(shè)置功能。
[0022]在獲取當(dāng)前W1-Fi模塊的數(shù)量時(shí),通過讀取W1-Fi模塊的pid和vid來獲取W1-Fi模塊的數(shù)量。在讀取W1-Fi模塊的pid和vid時(shí)通過在Android系統(tǒng)的HAL層(HardwareAbstraction Layer,硬件抽象層)實(shí)現(xiàn)接口 int wifi_get_deviceNum(),從 USB 總線上讀取USB設(shè)備(即外置W1-Fi模塊)的pid (product ID,產(chǎn)品標(biāo)識)和vid (vendor ID,廠商標(biāo)識),因?yàn)椴煌腢SB設(shè)備的pid和vid不同,本實(shí)施例根據(jù)判斷USB總線上注冊的pid和vid即可判斷該USB設(shè)備是否是W1-Fi設(shè)備并結(jié)合內(nèi)置W1-Fi模塊返回一個(gè)值,該接口的返回值即為當(dāng)前W1-Fi模塊數(shù)量。
[0023]應(yīng)當(dāng)說明的是,外置W1-Fi模塊還通過其它接口接入Android終端,只要能夠通過在相應(yīng)的總線讀取到外置W1-Fi模塊的pid和vid即可,本發(fā)明對此不作限制。
[0024]S200、判斷所述W1-Fi模塊的數(shù)量是大于I還是等于I ;當(dāng)W1-Fi模塊的數(shù)量大于I時(shí),判斷內(nèi)置W1-Fi模塊被選擇還是外置W1-Fi模塊被選擇。
[0025]本實(shí)施例中,在接口 int wifi_get_deviceNum()返回W1-Fi模塊的數(shù)量后,還需進(jìn)一步對W1-Fi模塊的數(shù)量進(jìn)行判斷。當(dāng)W1-Fi模塊的數(shù)量等于I時(shí)(即返回值為1),表示該Android終端中只有一個(gè)內(nèi)置W1-Fi模塊,故不存在W1-Fi模塊的切換問題,此時(shí)用戶只能選擇內(nèi)置W1-Fi模塊,用戶通過用戶界面的“設(shè)置”選擇打開W1-Fi即可直接加載內(nèi)置W1-Fi模塊,開啟Android終端的W1-Fi功能打開W1-Fi網(wǎng)絡(luò)。當(dāng)W1-Fi模塊的數(shù)量大于I時(shí),表示Android終端中有一個(gè)內(nèi)置W1-Fi模塊和至少一個(gè)外置W1-Fi模塊,此時(shí)用戶可通過用戶界面的“設(shè)置”選項(xiàng)進(jìn)行選擇,在用戶選擇后Android終端還需判斷用戶選擇了內(nèi)置W1-Fi模塊還是外置W1-Fi模塊。
[0026]S300、當(dāng)內(nèi)置W1-Fi模塊被選擇時(shí),加載內(nèi)置W1-Fi模塊;當(dāng)外置W1-Fi模塊被選擇時(shí),判斷所述內(nèi)置W1-Fi模塊是否被加載;若內(nèi)置W1-Fi模塊已被加載,則卸載所述內(nèi)置W1-Fi模塊后開啟外置W1-Fi模塊。
[0027]本發(fā)明實(shí)施例中,如果用戶選擇了內(nèi)置W1-Fi模塊,在打開W1-Fi時(shí),直接加載內(nèi)置W1-Fi模塊的驅(qū)動(dòng)文件即可打開內(nèi)置W1-Fi模塊,開啟Android終端的W1-Fi功能。如果用戶選擇了外置W1-Fi模塊,此時(shí)Android終端需要先判斷內(nèi)置W1-Fi模塊的狀態(tài),即判斷內(nèi)置W1-Fi模塊是否已被加載。若內(nèi)置W1-Fi模塊已被加載,則需先則通過Android終端的第一接口關(guān)閉內(nèi)置W1-Fi模塊;之后,通過Android終端的第二接口關(guān)閉內(nèi)置W1-Fi模塊的GPIO的供電,卸載所述內(nèi)置W1-Fi模塊,再開啟Android終端的外置W1-Fi模塊,開啟Android終端的W1-Fi功能。若內(nèi)置W1-Fi模塊未被加載,則只需通過第二接口關(guān)閉內(nèi)置W1-Fi模塊供電后開啟所述外置W1-Fi模塊即可。[0028]具體實(shí)施時(shí),在Android系統(tǒng)需要打開W1-Fi模塊時(shí),會(huì)產(chǎn)生一個(gè)wlanO (即無線局域網(wǎng)),通常情況下Android終端只需打開一個(gè)W1-Fi模塊,由此只會(huì)產(chǎn)生一個(gè)wlanO。由于W1-Fi在開啟時(shí)會(huì)注冊一個(gè)wlanO的interfacename (即設(shè)備節(jié)點(diǎn)),在開啟W1-Fi時(shí),Android系統(tǒng)的應(yīng)用會(huì)去獲取該interfacename,如果為NULL (零),則表示沒有任何W1-Fi模塊被打開,如果存在wlanO的interfacename,不論該wlanO是up狀態(tài)(即上電狀態(tài))還是down狀態(tài)(掉電狀態(tài)),都要再去判斷內(nèi)置W1-Fi模塊的GPIO (General PurposeInput Output,通用輸入/輸出)狀態(tài)。如果該GPIO為1,則表示內(nèi)置W1-Fi模塊驅(qū)動(dòng)文件已經(jīng)加載,此時(shí)調(diào)用 Android 終端的第一接口 public boolean setffif iEnabled (booleanenabled)去關(guān)閉內(nèi)置W1-Fi模塊[在第一接口關(guān)閉內(nèi)置W1-Fi模塊時(shí),令第一接口輸出false,即 public boolean setWifiEnabled(false)來關(guān)閉內(nèi)置 W1-Fi 模塊],之后通過第二接口讀取W1-Fi模塊的供電,在第一接口關(guān)閉內(nèi)置W1-Fi模塊時(shí),第二接口關(guān)閉內(nèi)置W1-Fi模塊的供電,使GPIO置0(即使該GPIO掉電)卸載內(nèi)置W1-Fi模塊,再打開外置W1-Fi模塊加載外置W1-Fi模塊的驅(qū)動(dòng)文件開啟Android終端的W1-Fi功能。如果該GPIO為0,則表示內(nèi)置W1-Fi模塊驅(qū)動(dòng)文件未被加載,此時(shí)只需通過第二接口關(guān)閉內(nèi)置W1-Fi模塊供電,使GPIO掉電卸載內(nèi)置W1-Fi模塊,再打開外置W1-Fi模塊加載外置W1-Fi模塊的驅(qū)動(dòng)文件開啟Android終端的W1-Fi功能。
[0029]但是,Android系統(tǒng)本身不支持讀寫GPIO的操作(即無法獲取和設(shè)置GPIO的狀態(tài)),因此需要W1-Fi芯片的廠商提供讀寫和設(shè)置GPIO的相應(yīng)接口(即第二接口),通過該第二接口的調(diào)用來完成GPIO的讀寫和設(shè)置。
[0030]本實(shí)施例中,所述第二接口包括:用于讀取W1-Fi模塊的GPIO的供電狀態(tài)的讀接口 int get_wifi_switch O和用于設(shè)置W1-Fi模塊的GPIO的供電狀態(tài)的設(shè)置接口 intset_wifi_switch(int state)。其中,int get_wifi_switch()接口的功能為獲取當(dāng)前內(nèi)置W1-Fi模塊的GPIO狀態(tài),即讀取W1-Fi芯片的上電/下電管腳的電平狀態(tài),而讀取該管腳需要驅(qū)動(dòng)的支持,Android—般支持該功能。int set_wifi_switch(int state)接口功能為設(shè)置內(nèi)置W1-Fi模塊的GPIO的狀態(tài),即完成對W1-Fi芯片上電/下電管腳的置位功能,在public boolean setffif iEnabled (false)接口關(guān)閉內(nèi)置 W1-Fi 模塊時(shí),該 int set_wif i_switch (int state)接口設(shè)置內(nèi)置W1-Fi模塊的GPIO為0,卸載該內(nèi)置W1-Fi模塊。由于W1-Fi芯片廠商出于對自己硬件設(shè)計(jì)的保護(hù),不會(huì)對外公開其操作方法和源碼,因此本發(fā)明只需要求W1-Fi芯片廠商提供W1-Fi芯片的操作方式(即二進(jìn)制文件),即上述兩個(gè)操作接口即可,通過上述兩個(gè)接口來完成對GPIO的讀寫和設(shè)置。
[0031]并且,由于Android系統(tǒng)本身不支持讀寫GPIO的操作,無法獲取和設(shè)置GPIO的狀態(tài),在設(shè)置Android終端的W1-Fi功能時(shí),需要Android終端自身實(shí)現(xiàn)讀接口 int get_wifi_switch O 和設(shè)置接口 int set_wifi_switch (int state)。對于讀接口 int get_wifi_switch O ,該讀接口 int get_wif i_switch O返回值即為當(dāng)前內(nèi)置W1-Fi模塊的GPIO狀態(tài),返回值為I時(shí)表示該GPIO為高電平,返回值為O時(shí)表示該GPIO為低電平。而對于設(shè)置接口 int set_wifi_switch(int state)的傳入?yún)?shù)state即為設(shè)置GPIO的電平狀態(tài),當(dāng)傳入?yún)?shù)為I時(shí),表示使該GPIO上電,傳入?yún)?shù)為O時(shí)表示使該GPIO掉電。
[0032]在具體設(shè)置W1-Fi功能的過程中,用戶通過Android終端的用戶界面選擇“設(shè)置”選項(xiàng)后,Android系統(tǒng)便會(huì)調(diào)用讀接口 int get_wifi_switch O ,獲取到內(nèi)置W1-Fi模塊的GPIO狀態(tài),如果為GPIO為I,并且如果用戶需要打開內(nèi)置W1-Fi模塊,則此時(shí)默認(rèn)開啟的是內(nèi)置W1-Fi模塊;當(dāng)內(nèi)外置W1-Fi模塊共同存在時(shí),如果不是用戶強(qiáng)制使用外置W1-Fi模塊,那么Android終端還是開啟內(nèi)置W1-Fi模塊,只有在用戶選擇開啟外置W1-Fi模塊的情況下,才會(huì)禁用內(nèi)置W1-Fi模塊而開啟外置W1-Fi模塊。
[0033]本發(fā)明實(shí)施例中,上述的int wifi_get_deviceNum()接口、int get_wifi_switch ()接口、int set_wif i_switch ()接口都需要在Android系統(tǒng)的HAL層獨(dú)立實(shí)現(xiàn),通過Android系統(tǒng)的Native層對上層應(yīng)用提供接口。在Android系統(tǒng)中Native層是對HAL層接口的封裝,因?yàn)锳ndroid系統(tǒng)上層應(yīng)用軟件為java程序,而java不能直接調(diào)用c文件(如C語言文件和C++文件),因此必須通過Native語言的封裝才可以訪問上述接口。在設(shè)計(jì)時(shí)軟件開發(fā)者可以通過Android系統(tǒng)的其他模塊Native層語言的規(guī)則完成對該接口的封裝。
[0034]應(yīng)當(dāng)說明的是:上述的int wifi_get_deviceNum()接口、int get_wifi_switch ()接口、int set_wifi_switch O接口均為程序?qū)崿F(xiàn)接口,最終的設(shè)置通過Android終端的用戶界面的“設(shè)置”選項(xiàng)自動(dòng)完成調(diào)用。用戶在選擇“設(shè)置”選項(xiàng)后,該程序自動(dòng)獲取當(dāng)前W1-Fi模塊數(shù)量,判斷出內(nèi)、外置W1-Fi模塊的數(shù)量,然后根據(jù)用戶的選擇自動(dòng)完成讀取GPIO狀態(tài)和設(shè)置GPIO狀態(tài)。[0035]以下為讀取和設(shè)置W1-Fi模塊的GPIO狀態(tài)的事例實(shí)現(xiàn)方式和說明: int get_wifi_switch O
{
return NativeGetffifiSwitchO ; //該接口為wifi芯片廠商提供的讀取GPIO接口
}
int set_wifi_switch(int state)
{
return NativeSetffifiSwitch (state) ; // 該接口 為 wifi 芯片廠商提供寫 GPIO 接口
}
基于上述的Android終端切換內(nèi)外置W1-Fi的方法,本發(fā)明實(shí)施例還相應(yīng)提供一種Android終端,請參閱圖2,其包括:內(nèi)置W1-Fi模塊10、外置W1-Fi模塊20、W1-Fi功能設(shè)置模塊30、獲取模塊40、判斷模塊50、卸載模塊60和加載模塊70。
[0036]其中,所述外置W1-Fi模塊20通過USB 口與W1-Fi功能設(shè)置模塊30連接。所述W1-Fi功能設(shè)置模塊30通過Android終端的用戶界面設(shè)置Android終端的W1-Fi功能。在W1-Fi功能設(shè)置模塊30設(shè)置Android終端的W1-Fi功能時(shí),通過獲取模塊40獲取當(dāng)前W1-Fi模塊的數(shù)量。之后由判斷模塊50判斷所述W1-Fi模塊的數(shù)量是大于I還是等于1,如果等于I表示Android終端只有一個(gè)內(nèi)置W1-Fi模塊10,此時(shí)W1-Fi功能設(shè)置模塊30直接控制加載模塊70加載所述內(nèi)置W1-Fi模塊10,開啟Android終端的W1-Fi功能;如果判斷模塊50判斷W1-Fi模塊的數(shù)量大于1,則還需判斷內(nèi)置W1-Fi模塊10被選擇還是外置W1-Fi模塊20被選擇。當(dāng)內(nèi)置W1-Fi模塊10被選擇時(shí),通過W1-Fi功能設(shè)置模塊30控制所述加載模塊70直接加載內(nèi)置W1-Fi模塊10,開啟Android終端的W1-Fi功能;當(dāng)外置W1-Fi模塊20被選擇時(shí),此時(shí)需要判斷模塊50判斷內(nèi)置W1-Fi模塊10是否被加載;或被加載則控制卸載模塊60先關(guān)閉內(nèi)置W1-Fi模塊10,再關(guān)閉內(nèi)置W1-Fi模塊10的供電卸載所述內(nèi)置W1-Fi模塊10后,再由加載模塊70加載所述外置W1-Fi模塊20。
[0037]具體實(shí)施時(shí),所述卸載模塊60包括第一接口和第二接口。其中,所述第一接口為public boolean setffif iEnabled (boolean enabled),用于關(guān)閉內(nèi)置 W1-Fi 模塊 10。第二接口用于讀取內(nèi)置W1-Fi模塊10的供電狀態(tài),及在關(guān)閉內(nèi)置W1-Fi模塊時(shí),關(guān)閉內(nèi)置W1-Fi模塊的GPIO的供電,卸載所述內(nèi)置W1-Fi模塊。所述第二接口具體包括:用于讀取W1-Fi模塊的GPIO的供電狀態(tài)的讀接口和,及在關(guān)閉內(nèi)置W1-Fi模塊時(shí),關(guān)閉內(nèi)置W1-Fi模塊的GPIO的供電,卸載所述內(nèi)置W1-Fi模塊。由于該Android終端切換中各個(gè)模塊的功能在上述方法中已進(jìn)行了詳細(xì)的描述,此處不再贅述。
[0038]綜上所述,本發(fā)明實(shí)現(xiàn)了內(nèi)置W1-Fi模塊和外置W1-Fi模塊的智能切換,其設(shè)置簡單方便,使Android終端的上網(wǎng)功能不受內(nèi)置W1-Fi模塊的限制,為用戶提供了選擇,提升了用戶體驗(yàn),有利于智能終端的推廣使用。
[0039]可以理解的是,對本領(lǐng)域普通技術(shù)人員來說,可以根據(jù)本發(fā)明的技術(shù)方案及其發(fā)明構(gòu)思加以等同替換或改變,而所有這些改變或替換都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
【權(quán)利要求】
1.一種Android終端切換內(nèi)外置W1-Fi的方法,其特征在于,包括: A、在Android終端的W1-Fi設(shè)置功能開啟時(shí),獲取當(dāng)前W1-Fi模塊的數(shù)量; B、判斷所述W1-Fi模塊的數(shù)量是大于I還是等于I;當(dāng)W1-Fi模塊的數(shù)量大于I時(shí),判斷內(nèi)置W1-Fi模塊被選擇還是外置W1-Fi模塊被選擇; C、當(dāng)內(nèi)置W1-Fi模塊被選擇時(shí),加載內(nèi)置W1-Fi模塊;當(dāng)外置W1-Fi模塊被選擇時(shí),判斷所述內(nèi)置W1-Fi模塊是否被加載;若內(nèi)置W1-Fi模塊已被加載,則卸載所述內(nèi)置W1-Fi模塊后開啟外置W1-Fi模塊。
2.根據(jù)權(quán)利要求1所述的Android終端切換內(nèi)外置W1-Fi的方法,其特征在于,在所述步驟B中,當(dāng)W1-Fi模塊的數(shù)量等于I時(shí),直接加載所述內(nèi)置W1-Fi模塊,開啟Android終端的W1-Fi功能。
3.根據(jù)權(quán)利要求1所述的Android終端切換內(nèi)外置W1-Fi的方法,其特征在于,在所述步驟C中,若內(nèi)置W1-Fi模塊未被加載,則關(guān)閉內(nèi)置W1-Fi模塊供電后開啟所述外置W1-Fi模塊。
4.根據(jù)權(quán)利要求1或3所述的Android終端切換內(nèi)外置W1-Fi的方法,其特征在于,在所述步驟C中,所述若內(nèi)置W1-Fi模塊已被加載,則卸載所述內(nèi)置W1-Fi模塊后開啟外置W1-Fi模塊具體包括: Cl、若內(nèi)置W1-Fi模塊已被加載,則通過Android終端的第一接口關(guān)閉內(nèi)置W1-Fi模塊; C2、通過Android終端的第二接口關(guān)閉內(nèi)置W1-Fi模塊的GPIO的供電,卸載所述內(nèi)置W1-Fi模塊; C3、開啟Android終端的外置W1-Fi模塊。
5.根據(jù)權(quán)利要求1所述的Android終端切換內(nèi)外置W1-Fi的方法,其特征在于,在所述步驟A中,在獲取當(dāng)前W1-Fi模塊的數(shù)量時(shí),通過讀取W1-Fi模塊的pid和vid來獲取W1-Fi模塊的數(shù)量。
6.一種用于實(shí)現(xiàn)權(quán)利要求1所述切換內(nèi)外置W1-Fi的方法的Android終端,其特征在于,包括: 內(nèi)置W1-Fi模塊; 外置W1-Fi模塊; W1-Fi功能設(shè)置模塊,用于設(shè)置Android終端的W1-Fi功能; 獲取模塊,用于獲取當(dāng)前W1-Fi模塊的數(shù)量; 判斷模塊,用于判斷所述W1-Fi模塊的數(shù)量是大于I還是等于1,及判斷內(nèi)置W1-Fi模塊被選擇還是外置W1-Fi模塊被選擇,以及在外置W1-Fi模塊被選擇時(shí),判斷內(nèi)置W1-Fi模塊是否被加載; 卸載模塊,用于卸載所述內(nèi)置W1-Fi模塊; 加載模塊,用于加載所述內(nèi)置W1-Fi模塊或者外置W1-Fi模塊。
7.根據(jù)權(quán)利要求6所述的Android終端,其特征在于,W1-Fi功能設(shè)置模塊,還用于在W1-Fi模塊的數(shù)量為一個(gè)時(shí),控制所述加載模塊加載內(nèi)置W1-Fi模塊,開啟Android終端的W1-Fi功能。
8.根據(jù)權(quán)利要求6所述的Android終端,其特征在于,所述卸載模塊,包括:第一接口,用于關(guān)閉內(nèi)置W1-Fi模塊; 第二接口,用于讀取內(nèi)置W1-Fi模塊的供電狀態(tài),及在關(guān)閉內(nèi)置W1-Fi模塊時(shí),關(guān)閉內(nèi)置W1-Fi模塊的GPIO的供電,卸載所述內(nèi)置W1-Fi模塊。
9.根據(jù)權(quán)利要求8所述的Android終端,其特征在于,所述第一接口為publicbooleansetffifiEnabled(boolean enabled)。
10.根據(jù)權(quán)利要求8所述的Android終端,其特征在于,所述第二接口包括用于讀取W1-Fi模塊的GPIO的供電狀態(tài)的讀接口和用于關(guān)閉W1-Fi模塊的GPIO的供電,卸載所述內(nèi)置W1-Fi模塊的設(shè)置接 口。
【文檔編號】H04W36/00GK103546927SQ201310290878
【公開日】2014年1月29日 申請日期:2013年7月11日 優(yōu)先權(quán)日:2013年7月11日
【發(fā)明者】崔旋 申請人:Tcl集團(tuán)股份有限公司