基于多卡識別的應用程序實現方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種基于多卡識別的應用程序實現方法及裝置,用于智能終端,所述智能終端的操作系統(tǒng)包括系統(tǒng)框架層和應用程序層。其中的方法包括:應用程序層讀取系統(tǒng)框架層的系統(tǒng)文件;根據系統(tǒng)文件,應用程序層獲知智能終端的設備信息及用戶識別模塊數目信息;應用程序層根據設備信息及用戶識別模塊數目信息,確定智能終端是否為多卡智能終端,如果是多卡智能終端,則針對每個用戶識別模塊對應的卡號實現應用程序的功能。通過本發(fā)明,可針對每個卡號均實現應用程序的功能,從而為用戶提供更好的安全等服務。
【專利說明】基于多卡識別的應用程序實現方法及裝置
【技術領域】
[0001]本發(fā)明涉及智能終端應用程序開發(fā)【技術領域】,具體涉及一種基于多卡識別的應用程序實現方法及裝置。
【背景技術】
[0002]由于Android系統(tǒng)的開源性,各個廠商都有較大的定制權。特別是針對雙卡等多卡終端,由于沒有標準,各大終端廠商,例如手機廠商、方案提供商都有各自的實現方式。這樣對于上層的軟件開發(fā)者來說適配成本不斷增加,軟件的覆蓋度受到影響。
[0003]因此,針對多卡終端,為了使應用程序的功能覆蓋各個卡,亟須在應用程序層進行多卡識別,以便在啟動應用程序功能時能兼顧到各個卡。
【發(fā)明內容】
[0004]鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的基于多卡識別的應用程序實現方法及裝置。
[0005]依據本發(fā)明的一個方面,提供一種基于多卡識別的應用程序實現方法,用于智能終端,所述智能終端的操作系統(tǒng)包括系統(tǒng)框架層和應用程序層,所述方法包括:所述應用程序層讀取所述系統(tǒng)框架層的系統(tǒng)文件;根據所述系統(tǒng)文件,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息;所述應用程序層根據所述設備信息及用戶識別模塊數目信息,確定所述智能終端是否為多卡智能終端,如果是多卡智能終端,則針對每個用戶識別模塊對應的卡號實現應用程序的功能。
[0006]可選的,所述用戶識別模塊包括SM卡、UM卡、UTK卡、PM卡,和/或,PTK卡。
[0007]可選的,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括:對系統(tǒng)框架層中的TelephonyManager類進行反射處理,確定所述智能終端的類型;讀取操作系統(tǒng)的配置參數,獲知所述終端的用戶識別模塊數目。
[0008]可選的,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括:讀取操作系統(tǒng)的dev文件,如果其取值為特定值,則確定所述智能終端為展訊多卡終端。
[0009]可選的,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括:
[0010]讀取操作系統(tǒng)的cpuinfo文件,判斷該cpuinfo文件中的硬件標識字段是否為特定值,若是,確定所述智能終端為高通多卡終端。
[0011]可選的,所述智能終端的設備信息還包括終端型號;所述方法還包括:所述應用程序層將終端型號與預先維護的多卡型號集合進行匹配,如果匹配成功,則進一步確定所述智能終端為多卡智能終端。
[0012]可選的,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括:讀取操作系統(tǒng)的廠商參數,獲知所述智能終端的設備信息;對系統(tǒng)框架層中的TelephonyManager類進行反射處理,獲知用戶識別模塊數目信息。
[0013]可選的,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括:讀取操作系統(tǒng)的商標參數,獲知所述智能終端的設備信息;讀取系統(tǒng)文件中的多卡字段,獲知用戶識別模塊數目。
[0014]可選的,所述針對每個卡號實現應用程序功能包括:為每個用戶識別模塊對應的卡號加載指定應用程序的功能。
[0015]可選的,所述應用程序是指騷擾攔截軟件;所述針對每個用戶識別模塊對應的卡號實現應用程序的功能包括:針對用戶識別模塊對應的各個卡號,都綁定一個通話狀態(tài)監(jiān)聽類,從而對各個卡號進行通話狀態(tài)監(jiān)聽。
[0016]可選的,所述應用程序是指流量監(jiān)控軟件;所述針對每個用戶識別模塊對應的卡號實現應用程序的功能包括:啟動所述流量監(jiān)控功能,對每個用戶識別模塊對應的各個卡號進行上網流量統(tǒng)計。
[0017]可選的,所述應用程序是指安全軟件;所述針對每個用戶識別模塊對應的卡號實現應用程序的功能包括:啟動安全軟件,對每個用戶識別模塊對應的各個卡號加載安全軟件的功能。
[0018]可選的,所述操作系統(tǒng)是指andriod操作系統(tǒng)。
[0019]依據本發(fā)明的一個方面,提供一種基于多卡識別的應用程序實現裝置,用于智能終端,所述智能終端的操作系統(tǒng)包括系統(tǒng)框架層和應用程序層,所述裝置包括:讀取單元,用于讀取所述系統(tǒng)框架層的系統(tǒng)文件;獲知單元,用于根據所述系統(tǒng)文件,所述應用程序層獲知所述設備信息及用戶識別模塊數目信息;判斷單元,用于在所述應用程序層根據所述設備信息及用戶識別模塊數目信息,確定所述智能終端是否為多卡智能終端;啟動單元,在所述判斷單確定所述智能終端為多卡智能終端時,針對每個用戶識別模塊對應的卡號實現應用程序的功能。
[0020]可選的,所述用戶識別模塊包括SM卡、UM卡、UTK卡、PM卡,和/或,PTK卡。
[0021]可選的,所述獲知單元對系統(tǒng)框架層中的TelephonyManager類進行反射處理,確定所述智能終端的類型;并讀取操作系統(tǒng)的配置參數,獲知所述終端的用戶識別模塊數目。
[0022]可選的,所述獲知單元讀取操作系統(tǒng)的dev文件,如果其取值為特定值,則確定所述智能終端為展訊多卡終端。
[0023]可選的,所述獲知單元讀取操作系統(tǒng)的cpuinfo文件,判斷該cpuinfo文件中的硬件標識字段是否為特定值,若是,確定所述智能終端為高通多卡終端。
[0024]可選的,所述智能終端的設備信息還包括終端型號;所述判斷單元還用于:將終端型號與預先維護的多卡型號集合進行匹配,如果匹配成功,則進一步確定所述智能終端為多卡智能終端。
[0025]可選的,所述獲知單元讀取操作系統(tǒng)的廠商參數,獲知所述智能終端的設備信息;并對系統(tǒng)框架層中的TekphonyManager類進行反射處理,獲知用戶識別模塊數目信息。
[0026]可選的,所述獲知單元讀取操作系統(tǒng)的商標參數,獲知所述智能終端的設備信息;并讀取系統(tǒng)文件中的多卡字段,獲知用戶識別模塊數目。
[0027]可選的,所述啟動單元為每個用戶識別模塊對應的卡號加載指定應用程序的功倉泛。[0028]可選的,所述應用程序是指騷擾攔截軟件;所述啟動單元針對各個用戶識別模塊對應的卡號,都綁定一個通話狀態(tài)監(jiān)聽類,從而對每個用戶識別模塊對應的卡號進行通話狀態(tài)監(jiān)聽。
[0029]可選的,所述應用程序是指流量監(jiān)控軟件;所述啟動單元啟動所述流量監(jiān)控功能,從而對每個用戶識別模塊對應的卡號進行上網流量統(tǒng)計。
[0030]可選的,所述應用程序是指安全軟件;所述啟動單元啟動安全軟件,對每個用戶識別模塊對應的卡號加載安全軟件的功能。
[0031]可選的,所述操作系統(tǒng)是指andriod操作系統(tǒng)。
[0032]可見,本發(fā)明在應用程序層實現了多卡識別功能,這為應用程序的啟動提供了依據,對于多卡終端,可以在設計應用程序時,針對每個卡號進行應用程序的綁定,例如,針對雙卡手機,對于每個卡號都啟動騷擾攔截軟件,從而為用戶提供更好的安全等服務。
[0033]上述說明僅是本發(fā)明技術方案的概述,為了能夠更清楚了解本發(fā)明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的【具體實施方式】。
【專利附圖】
【附圖說明】
[0034]通過閱讀下文優(yōu)選實施方式的詳細描述,各種其他的優(yōu)點和益處對于本領域普通技術人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0035]圖1示出了根據本發(fā)明一個實施例的基于多卡識別的應用程序實現方法的流程圖;以及
[0036]圖2示出了根據本發(fā)明一個實施例的基于多卡識別的應用程序實現方法實例的示意圖。
【具體實施方式】
[0037]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍完整的傳達給本領域的技術人員。
[0038]如前所述,針對多卡終端,由于沒有標準,各大手機廠商、方案提供商都有各自的實現方式。這樣對于上層的軟件開發(fā)者來說適配成本不斷增加,軟件的覆蓋度受到影響。例如,對于攔截騷擾電話的安全軟件為例,其原理如下:大部分軟件采用標準的API接口的方式對電話狀態(tài)進行判斷;當電話狀態(tài)發(fā)生變化時系統(tǒng)Framework層(系統(tǒng)框架層)會通過上層App層(應用程序層)注冊的接口來發(fā)出通知;當軟件收到通知后,根據本身的產品邏輯和用戶設置來判斷該來電是否命中其規(guī)則;如命中則立即對該來電掛斷。這種方式對于標準接口的手機沒有問題,但對于廠商自己擴展的雙卡手機就無法做到對第二張電話卡狀態(tài)的監(jiān)聽,因為Framework層不會以標準的方式發(fā)出第二卡電話狀態(tài)發(fā)生變化的信息。目前針對雙卡攔截已有的處理方案是采用效率較低的廣播機,通過監(jiān)聽系統(tǒng)層發(fā)送的狀態(tài)廣播,來判斷來電并掛斷。由于廣播機制優(yōu)先級較低且效率慢,會導致電話已經響了才掛斷,仍會對用戶造成騷擾。
[0039]為此,本發(fā)明提出一種基于多卡識別的應用程序實現方法,通過讀取android系統(tǒng)文件,在應用程序層實現多卡識別,從而可以在啟動應用程序時可以兼顧到各個卡。本發(fā)明是以多卡鑒別為基礎,并且在此基礎上衍生出一套中間件,為上層應用提供服務。
[0040]參見圖1,為基于多卡識別的應用程序實現方法的流程圖。該方法包括:
[0041]SlOl:應用程序層讀取系統(tǒng)框架層的系統(tǒng)文件;
[0042]S102:根據系統(tǒng)文件,應用程序層獲知智能終端的設備信息及用戶識別模塊數目信息;
[0043]S103:應用程序層根據設備信息及用戶識別模塊數目信息,確定所述智能終端是否為多卡智能終端;
[0044]S104:如果是多卡智能終端,則針對每個用戶識別模塊對應的卡號實現應用程序的功能。當然,如果是單卡智能終端,僅針對單卡實現應用程序的功能即可。
[0045]其中,用戶識別模塊(Subscriber Identity Module)是用于識別用戶個人身份的模塊,例如在手機終端上的模塊俗稱手機卡。用戶識別模塊包括SIM卡、UIM卡、UTK卡、PIM卡、PTK卡等等。如果智能終端包括多個用戶識別模塊,則智能終端為多卡智能終端。
[0046]可見,本發(fā)明在應用程序層實現了多卡識別功能,這為應用程序的啟動提供了依據,對于多卡終端,可以在設計應用程序時,針對每個卡號進行應用程序的綁定,例如,針對雙卡手機,對于每個卡號都啟動騷擾攔截軟件,從而為用戶提供更好的安全等服務。
[0047]下面以android操作系統(tǒng)的雙卡手機為例,以具體實例對本發(fā)明進行說明。本領域技術人員可以理解,雖然以安裝有Andro i d系統(tǒng)的智能終端為例,對本發(fā)明的原理進行示例性描述,然而此描述僅僅是示例性的,本發(fā)明的范圍并不限于此,本發(fā)明的原理也可以適用于安裝有其它操作系統(tǒng)(例如Linux、iOS、Windows Phone、Symbian等)的智能終端。
[0048]本領域技術人員理解,操作系統(tǒng)包括應用程序層(app層)和系統(tǒng)框架層(framework層),至于從功能劃分上有可能包括的的其他層本發(fā)明則不作討論。其中,通常app層可以理解為上層,負責與用戶交互的界面,例如應用程序維護、以及點擊頁面時識別不同種類的點擊內容從而顯示不同的上下文菜單等。通常framework層作為中間層,這一層的主要職責是,將app層獲得的用戶請求,如啟動用用程序、點擊鏈接、點擊保存圖片之類,轉發(fā)往下層去;將下層處理好的內容,或者通過消息,或者通過中間代理類,來分發(fā)至上層,對用戶展現出來。
[0049]參見圖2,為本發(fā)明方法實例示意圖。其中,在應用程序層增加了多卡識別功能,它通過讀取系統(tǒng)框架層的系統(tǒng)文件,從而確定終端是否為多卡終端,繼而在執(zhí)行應用程序時使應用程序兼顧到每個卡。
[0050]由于android系統(tǒng)開源,導致android智能手機也是比較的不標準,尤其是雙卡手機被各大手機廠商修改的更為復雜和混亂。針對這一現象,本發(fā)明基于智能識別雙卡的方式,提供更加精準的安全服務,識別雙卡的方法分為如下幾類:
[0051 ] (I)MTK系列雙卡手機智能識別
[0052]對系統(tǒng)框架層中的TelephonyManager類進行反射處理,確定手機為MTK手機;繼而讀取操作系統(tǒng)的配置參數,獲知MTK手機的卡數目。
[0053]具體的,米取反射Framework 層 TelephonyManager 類中的方法,如 listenGemin1、getDeviceldGemini,這兩個方法都是MTK手機獨有的,如果正確找到這兩個方法,就可以確定該手機為MTK手機,但是并不能準確的確定該手機就是雙卡的。因此還需要采取讀取系統(tǒng)的配置參數r0.mediatek.gemini_support,如果該參數返回true,那么就可以確定該手機確實為MTK系列雙卡手機。
[0054]其中,Te I ephonyManager類主要提供了一系列用于訪問與手機通訊相關的狀態(tài)和信息的get方法。其中包括手機SIM的狀態(tài)和信息、電信網絡的狀態(tài)及手機用戶的信息。在應用程序中可以使用這些get方法獲取相關數據。TelephonyManager類的對象可以通過 Context.getSystemService (Context.TELEPHONY_SERVICE)方法來獲得,需要注意的是有些通訊信息的獲取對應用程序的權限有一定的限制,在開發(fā)的時候需要為其添加相應的權限。
[0055]( 2)展訊系列雙卡手機智能識別
[0056]讀取操作系統(tǒng)的cpuinfo文件,判斷該cpuinfo文件中的硬件標識字段是否為特定值,若是,確定手機為高通雙卡手機。
[0057]具體的,米取讀取系統(tǒng)/sys/class/mach_class/mach_dev文件,如果取值為SPRD,那么就認為該手機為展訊雙卡手機。
[0058](3)高通系列雙卡手機智能識別
[0059]讀取操作系統(tǒng)的cpuinfo文件,判斷該cpuinfo文件中的硬件標識字段是否為特定值,若是,確定手機為高通雙卡手機。
[0060]具體的,采取讀取系統(tǒng)/proc/cpuinfo該文件中的hardware字段,俗稱cpu型號,如果該字段有QRD MSM8225 SKU5、QRD MSM7x27a SKU3等類似字段的時候,基本可以判斷為是聞通系列的雙卡手機。
[0061](4)根據手機型號智能識別雙卡
[0062]采取讀取手機的型號來跟預先維護的雙卡手機型號的集合進行匹配,來確定是雙卡手機,該雙卡手機集合是預先維護的,基本上包含已經上市和未上市的雙卡手機,更加準確的補充前三種方案。
[0063]除了上述四種方式,目前很多大手機廠商自己來編譯雙卡手機rom,具體如何智能識別雙卡手機如下:
[0064](5 ) HTC雙卡手機智能識別
[0065]讀取操作系統(tǒng)的廠商參數,獲知手機的設備信息;繼而對系統(tǒng)框架層中的TelephonyManager類進行反射處理,獲知卡數目信息。
[0066]具體的,采取讀取系統(tǒng)r0.product, manufacturer參數,如果該值包含HTC字樣,說明該手機為HTC手機,然后反射Framework層TelephonyManager類中的dualPhoneEnable方法如果為true說明該手機為HTC雙卡手機。
[0067](6)三星、華為、中興、聯想雙卡手機智能識別
[0068]讀取操作系統(tǒng)的商標參數,獲知所述智能終端的設備信息;繼而讀取系統(tǒng)文件中的多卡字段,獲知卡數目。
[0069]具體的,采取讀取系統(tǒng)r0.product, brand參數,如果該值包含samsung說明是三星手機,如果該值包含huawei字樣,說明是華為手機,如果包含zte說明是中興手機,如果包含Ienovo說明是聯想手機,然后在跟據數據庫獨有的雙卡字段來確定為是哪一個品牌的雙卡手機。
[0070]綜上所述,靈活利用這些方法可以非常準確定位該手機是否為雙卡手機,從而更準確的為用戶提供各種安全支持。
[0071]在確定了雙卡手機之后,繼而可以在執(zhí)行應用程序時兼顧到各個卡。即,為每個用戶識別模塊對應的卡號加載指定應用程序的功能,從而達到針對每個卡號實現應用程序的功能的目的。需要說明的是,本發(fā)明不限于特定的應用程序,而只是在應用程序啟動之前考慮多卡識別的結果從而兼顧到每個卡。
[0072]例如,對于騷擾攔截軟件,如果采用市場上大多數軟件監(jiān)聽數據庫的變化進行攔截,雖然功能是實現了,但是也會造成響一聲,也形成了騷擾。如果通過本發(fā)明智能識別出該手機確定為雙卡的,那么可以分別給卡I和卡2綁定一個監(jiān)聽PhoneStateListener從而高效的解決騷擾攔截問題。即,針對各個卡號,都綁定一個通話狀態(tài)監(jiān)聽類,從而對各個卡號進行通話狀態(tài)監(jiān)聽。
[0073]再如,流量監(jiān)控軟件,如果不能區(qū)別手機是否為雙卡的,按照默認的只能統(tǒng)計手機卡I的上網流量,卡2的流量就無法顯示了。如果正確識別出雙卡手機,就可以為用戶統(tǒng)計到卡2的上網流量。即啟動流量監(jiān)控功能,從而對各個卡號進行上網流量統(tǒng)計。
[0074]再如,安全軟件,包括電話或短信的騷擾攔截、防竊聽、防軟件私自撥打付費電話或發(fā)送付費短信等功能,如果不能區(qū)別手機是否為雙卡的,按照默認的只能為一個默認卡號實現安全軟件功能。如果正確識別出雙卡手機,就可以在啟動安全軟件時,對每個卡都加載安全軟件的功能。
[0075]與上述方法相對應,本發(fā)明還提供一種基于多卡識別的應用程序實現裝置。該裝置可以通過硬件、軟件或軟硬件結合方式實現。該裝置可以是指終端內部的功能模塊,也可以是指終端本身,只要終端包括實現該裝置的功能即可。
[0076]本發(fā)明提供的基于多卡識別的應用程序實現裝置,優(yōu)選是基于android操作系統(tǒng)的智能終端的,android操作系統(tǒng)包括系統(tǒng)框架層和應用程序層。該裝置包括讀取單元、獲知單元、判斷單元和啟動單元。其中:
[0077]讀取單元,用于讀取系統(tǒng)框架層的系統(tǒng)文件;
[0078]獲知單元,用于根據讀取單元讀取的系統(tǒng)文件,從而使得應用程序層獲知設備信息及用戶識別模塊數目信息;
[0079]判斷單元,用于在所述應用程序層根據獲知單元獲知的設備信息及用戶識別模塊數目信息,確定智能終端是否為多卡智能終端;
[0080]啟動單元,在判斷單元確定智能終端為多卡智能終端時,針對每個卡號實現應用程序的功能。
[0081]優(yōu)選的,用戶識別模塊包括SM卡、UM卡、UTK卡、PM卡,和/或,PTK卡。
[0082]其中,針對不同終端,獲知單元有不同的功能:
[0083]一種是,獲知單元對系統(tǒng)框架層中的TelephonyManager類進行反射處理,確定所述智能終端類型;并讀取操作系統(tǒng)的配置參數,獲知所述終端的用戶識別模塊數目。
[0084]另一種是,獲知單元讀取操作系統(tǒng)的dev文件,如果其取值為特定值,則確定所述智能終端為展訊多卡終端。
[0085]另一種是,獲知單元讀取操作系統(tǒng)的cpuinfo文件,判斷該cpuinfo文件中的硬件標識字段是否為特定值,若是,確定所述智能終端為高通多卡終端。
[0086]優(yōu)選的,智能終端的設備信息還包括終端型號;此時,判斷單元還用于:將終端型號與預先維護的多卡型號集合進行匹配,如果匹配成功,則進一步確定所述智能終端為多卡智能終端。
[0087]另一種是,獲知單元讀取操作系統(tǒng)的廠商參數,獲知所述智能終端的設備信息;并對系統(tǒng)框架層中的TelephonyManager類進行反射處理,獲知用戶識別模塊數目信息。
[0088]另一種是,獲知單元讀取操作系統(tǒng)的商標參數,獲知所述智能終端的設備信息;并讀取系統(tǒng)文件中的多卡字段,獲知用戶識別模塊數目。
[0089]其中,啟動單元為每個用戶識別模塊對應的卡號加載指定應用程序的功能,從而達到為每個卡號實現應用程序的功能這個目的。
[0090]優(yōu)選的,應用程序是指騷擾攔截軟件;此時,啟動單元針對各個卡號,都綁定一個通話狀態(tài)監(jiān)聽類,從而對每個用戶識別模塊對應的卡號進行通話狀態(tài)監(jiān)聽。
[0091]優(yōu)選的,應用程序是指流量監(jiān)控軟件;此時,啟動單元針對各個卡號,都啟動所述流量監(jiān)控功能,從而對每個用戶識別模塊對應的卡號進行上網流量統(tǒng)計。
[0092]優(yōu)選的,應用程序是指安全軟件;此時,啟動單元啟動安全軟件,對每個用戶識別模塊對應的卡號加載安全軟件的功能。
[0093]在此提供的算法和顯示不與任何特定計算機、虛擬系統(tǒng)或者其它設備固有相關。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據上面的描述,構造這類系統(tǒng)所要求的結構是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應當明白,可以利用各種編程語言實現在此描述的本發(fā)明的內容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。
[0094]在此處所提供的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細節(jié)的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。
[0095]類似地,應當理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發(fā)明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面的權利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循【具體實施方式】的權利要求書由此明確地并入該【具體實施方式】,其中每個權利要求本身都作為本發(fā)明的單獨實施例。
[0096]本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變并且把它們設置在與該實施例不同的一個或多個設備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。[0097]此外,本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
[0098]本發(fā)明的各個部件實施例可以以硬件實現,或者以在一個或者多個處理器上運行的軟件模塊實現,或者以它們的組合實現。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數字信號處理器(DSP)來實現根據本發(fā)明實施例的多卡識別的應用程序實現裝置中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現為用于執(zhí)行這里所描述的方法的一部分或者全部的設備或者裝置程序(例如,計算機程序和計算機程序產品)。這樣的實現本發(fā)明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
[0099]應該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中,不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
[0100]本發(fā)明提供了 Al、一種基于多卡識別的應用程序實現方法,用于智能終端,所述智能終端的操作系統(tǒng)包括系統(tǒng)框架層和應用程序層,所述方法包括:
[0101]所述應用程序層讀取所述系統(tǒng)框架層的系統(tǒng)文件;
[0102]根據所述系統(tǒng)文件,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息;
[0103]所述應用程序層根據所述設備信息及用戶識別模塊數目信息,確定所述智能終端是否為多卡智能終端,如果是多卡智能終端,則針對每個用戶識別模塊對應的卡號實現應用程序的功能。
[0104]A2、如Al所述的方法,所述用戶識別模塊包括SM卡、UM卡、UTK卡、PM卡,和/或,PTK卡。
[0105]A3、如Al或A2所述的方法,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括:
[0106]對系統(tǒng)框架層中的TelephonyManager類進行反射處理,確定所述智能終端的類型;
[0107]讀取操作系統(tǒng)的配置參數,獲知所述終端的用戶識別模塊數目。
[0108]A4、如Al或A2所述的方法,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括:
[0109]讀取操作系統(tǒng)的dev文件,如果其取值為特定值,則確定所述智能終端為展訊多卡終端。[0110]A5、如Al或A2所述的方法,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括:
[0111]讀取操作系統(tǒng)的cpuinfo文件,判斷該cpuinfo文件中的硬件標識字段是否為特定值,若是,確定所述智能終端為高通多卡終端。
[0112]A6、如A3、A4或A5所述的方法,所述智能終端的設備信息還包括終端型號;所述方法還包括:所述應用程序層將終端型號與預先維護的多卡型號集合進行匹配,如果匹配成功,貝1J進一步確定所述智能終端為多卡智能終端。
[0113]A7、如Al或A2所述的方法,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括:
[0114]讀取操作系統(tǒng)的廠商參數,獲知所述智能終端的設備信息;
[0115]對系統(tǒng)框架層中的TelephonyManager類進行反射處理,獲知用戶識別模塊數目信息。
[0116]AS、如Al或A2所述的方法,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括:
[0117]讀取操作系統(tǒng)的商標參數,獲知所述智能終端的設備信息;
[0118]讀取系統(tǒng)文件中的多卡字段,獲知用戶識別模塊數目。
[0119]A9、如A1-A8任一項所述的方法,所述針對每個卡號實現應用程序功能包括:為每個用戶識別模塊對應的卡號加載指定應用程序的功能。
[0120]AlOJn A9所述的方法,所述應用程序是指騷擾攔截軟件;所述針對每個用戶識別模塊對應的卡號實現應用程序的功能包括:針對用戶識別模塊對應的各個卡號,都綁定一個通話狀態(tài)監(jiān)聽類,從而對各個卡號進行通話狀態(tài)監(jiān)聽。
[0121]All、如A9所述的方法,所述應用程序是指流量監(jiān)控軟件;所述針對每個用戶識別模塊對應的卡號實現應用程序的功能包括:啟動所述流量監(jiān)控功能,對每個用戶識別模塊對應的各個卡號進行上網流量統(tǒng)計。
[0122]A12、如A9所述的方法,所述應用程序是指安全軟件;所述針對每個用戶識別模塊對應的卡號實現應用程序的功能包括:啟動安全軟件,對每個用戶識別模塊對應的各個卡號加載安全軟件的功能。
[0123]A13、如A1-A12任一項所述的方法,所述操作系統(tǒng)是指andriod操作系統(tǒng)。
[0124]B14、一種基于多卡識別的應用程序實現裝置,用于智能終端,所述智能終端的操作系統(tǒng)包括系統(tǒng)框架層和應用程序層,所述裝置包括:
[0125]讀取單元,用于讀取所述系統(tǒng)框架層的系統(tǒng)文件;
[0126]獲知單元,用于根據所述系統(tǒng)文件,所述應用程序層獲知所述設備信息及用戶識別模塊數目信息;
[0127]判斷單元,用于在所述應用程序層根據所述設備信息及用戶識別模塊數目信息,確定所述智能終端是否為多卡智能終端;
[0128]啟動單元,在所述判斷單確定所述智能終端為多卡智能終端時,針對每個用戶識別模塊對應的卡號實現應用程序的功能。
[0129]B15、如B14所述的裝置,所述用戶識別模塊包括SM卡、UM卡、UTK卡、PM卡,和/或,PTK卡。[0130]B16、如B14或B15所述的裝置,所述獲知單元對系統(tǒng)框架層中的TelephonyManager類進行反射處理,確定所述智能終端的類型;并讀取操作系統(tǒng)的配置參數,獲知所述終端的用戶識別模塊數目。
[0131]B17、如B14或B15所述的裝置,所述獲知單元讀取操作系統(tǒng)的dev文件,如果其取值為特定值,則確定所述智能終端為展訊多卡終端。
[0132]B18、如B14或B15所述的裝置,所述獲知單元讀取操作系統(tǒng)的cpuinfo文件,判斷該cpuinfo文件中的硬件標識字段是否為特定值,若是,確定所述智能終端為高通多卡終端。
[0133]B19、如B16、B17或B18所述的裝置,所述智能終端的設備信息還包括終端型號;所述判斷單元還用于:將終端型號與預先維護的多卡型號集合進行匹配,如果匹配成功,則進一步確定所述智能終端為多卡智能終端。
[0134]B20、如B14或B15所述的裝置,所述獲知單元讀取操作系統(tǒng)的廠商參數,獲知所述智能終端的設備信息;并對系統(tǒng)框架層中的TelephonyManager類進行反射處理,獲知用戶識別模塊數目信息。
[0135]B21、如B14或B15所述的裝置,所述獲知單元讀取操作系統(tǒng)的商標參數,獲知所述智能終端的設備信息;并讀取系統(tǒng)文件中的多卡字段,獲知用戶識別模塊數目。
[0136]B22、如B14-B21任一項所述的裝置,所述所述啟動單元為每個用戶識別模塊對應的卡號加載指定應用程序的功能。
[0137]B23、如B22所述的裝置,所述應用程序是指騷擾攔截軟件;所述啟動單元針對各個用戶識別模塊對應的卡號,都綁定一個通話狀態(tài)監(jiān)聽類,從而對每個用戶識別模塊對應的卡號進行通話狀態(tài)監(jiān)聽。
[0138]B24、如B22所述的裝置,所述應用程序是指流量監(jiān)控軟件;所述啟動單元啟動所述流量監(jiān)控功能,從而對每個用戶識別模塊對應的卡號進行上網流量統(tǒng)計。
[0139]B25、如B22所述的裝置,所述應用程序是指安全軟件;所述啟動單元啟動安全軟件,對每個用戶識別模塊對應的卡號加載安全軟件的功能。
[0140]B26、如B14-B25任一項所述的裝置,所述操作系統(tǒng)是指andriod操作系統(tǒng)。
【權利要求】
1.一種基于多卡識別的應用程序實現方法,用于智能終端,所述智能終端的操作系統(tǒng)包括系統(tǒng)框架層和應用程序層,其特征在于,所述方法包括: 所述應用程序層讀取所述系統(tǒng)框架層的系統(tǒng)文件; 根據所述系統(tǒng)文件,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息; 所述應用程序層根據所述設備信息及用戶識別模塊數目信息,確定所述智能終端是否為多卡智能終端,如果是多卡智能終端,則針對每個用戶識別模塊對應的卡號實現應用程序的功能。
2.如權利要求1所述的方法,其特征在于,所述用戶識別模塊包括SIM卡、UIM卡、UTK卡、PM卡,和/或,PTK卡。
3.如權利要求1或2所述的方法,其特征在于,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括: 對系統(tǒng)框架層中的TelephonyManager類進行反射處理,確定所述智能終端的類型; 讀取操作系統(tǒng)的配置參數,獲知所述終端的用戶識別模塊數目。
4.如權利要求1或2所述的方法,其特征在于,所述應用程序層獲知所述智能終端的設備信息及用戶識別模 塊數目信息包括: 讀取操作系統(tǒng)的dev文件,如果其取值為特定值,則確定所述智能終端為展訊多卡終端。
5.如權利要求1或2所述的方法,其特征在于,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括: 讀取操作系統(tǒng)的cpuinfo文件,判斷該cpuinfo文件中的硬件標識字段是否為特定值,若是,確定所述智能終端為高通多卡終端。
6.如權利要求3、4或5所述的方法,其特征在于,所述智能終端的設備信息還包括終端型號;所述方法還包括:所述應用程序層將終端型號與預先維護的多卡型號集合進行匹配,如果匹配成功,則進一步確定所述智能終端為多卡智能終端。
7.如權利要求1或2所述的方法,其特征在于,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括: 讀取操作系統(tǒng)的廠商參數,獲知所述智能終端的設備信息; 對系統(tǒng)框架層中的TelephonyManager類進行反射處理,獲知用戶識別模塊數目信息。
8.如權利要求1或2所述的方法,其特征在于,所述應用程序層獲知所述智能終端的設備信息及用戶識別模塊數目信息包括: 讀取操作系統(tǒng)的商標參數,獲知所述智能終端的設備信息; 讀取系統(tǒng)文件中的多卡字段,獲知用戶識別模塊數目。
9.如權利要求1-8任一項所述的方法,其特征在于,所述針對每個卡號實現應用程序功能包括:為每個用戶識別模塊對應的卡號加載指定應用程序的功能。
10.一種基于多卡識別的應用程序實現裝置,用于智能終端,所述智能終端的操作系統(tǒng)包括系統(tǒng)框架層和應用程序層,其特征在于,所述裝置包括: 讀取單元,用于讀取所述系統(tǒng)框架層的系統(tǒng)文件; 獲知單元,用于根據所述系統(tǒng)文件,所述應用程序層獲知所述設備信息及用戶識別模塊數目信息; 判斷單元,用于在所述應用程序層根據所述設備信息及用戶識別模塊數目信息,確定所述智能終端是否為多卡智能終端; 啟動單元,在所述判斷單確定所述智能終端為多卡智能終端時,針對每個用戶識別模塊對應 的卡號實現應用程序的功能。
【文檔編號】G06F9/44GK103595867SQ201310565834
【公開日】2014年2月19日 申請日期:2013年11月14日 優(yōu)先權日:2013年11月14日
【發(fā)明者】王鑫, 張建法, 殷成威 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司