專利名稱:一種獲取本機(jī)手機(jī)號碼的方案的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通訊領(lǐng)域,適合于手機(jī)平臺(除I0S),特別是涉及一種要獲取本機(jī)手機(jī)號碼的軟件、方法和通訊系統(tǒng)。
背景技術(shù):
在現(xiàn)代社會,手機(jī)已經(jīng)成為了人們必不可少的工具,目前人們不僅用手機(jī)來進(jìn)行通訊,而且可以用來進(jìn)行上網(wǎng)瀏覽并收發(fā)郵件、進(jìn)入社區(qū)互動及登錄進(jìn)行會議交流?,F(xiàn)在的許多軟件程序都需要登錄,有許多軟件使用賬戶、密碼作為用戶的標(biāo)識符,然而在通訊過程當(dāng)中很有可能會用到本機(jī)的號碼,并且也存在著一定安全性問題,賬戶密碼有可能會泄露。因此,使用手機(jī)本機(jī)的號碼作為用戶的標(biāo)識符,能夠保證用戶的唯一性與真實(shí)性,解決一些賬戶密碼泄露的安全隱患。而對手機(jī)本機(jī)號碼的驗證,比較常見的方法是直接讀取SM卡中MSISDN的信息來獲取,但是由于并非所有手機(jī)SM卡上存有本機(jī)號碼的信息,所以一般·選用下面一種方法作為備用通過服務(wù)器發(fā)送請求,然后由服務(wù)器來返回信息中讀取到本機(jī)號碼,但是這種方案的效率不高,而開發(fā)的代價與實(shí)現(xiàn)的門檻較高,投入的經(jīng)費(fèi)太大;而且這種通過服務(wù)器獲取的方法,由于某些通訊公司策略的改變,手機(jī)號變成天書般的唯一串號,因此目前從服務(wù)器端直接獲取手機(jī)號也不行了。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種獲取手機(jī)本機(jī)號碼的方案,用以提供一種在手機(jī)客戶端對用戶身份進(jìn)行認(rèn)證的方式,實(shí)現(xiàn)簡單,開發(fā)的代價及門檻較低,減少用戶身份認(rèn)證出錯的可能性,提高了用戶身份的安全性,以及認(rèn)證的效率及質(zhì)量。為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明提供一種獲取手機(jī)本機(jī)號碼的方案,包括讀取SM卡中MSISDN信息獲取方法和通過短信收接獲取方法。第一種方法作為先驅(qū)方法,而第二種方法作為后備方法,即在若第一種方法獲取成功,則停止執(zhí)行;否則,執(zhí)行第二種方法。所述的第一種方法,用于手機(jī)MSISDN中存有本機(jī)號碼信息的SIM卡,當(dāng)客戶端軟件要獲取本機(jī)號碼時,會先執(zhí)行這個方法。該方法直接調(diào)用手機(jī)的API,獲取到本機(jī)號碼,過程比較簡潔清晰。所述的第二種方法,用于手機(jī)MSISDN中沒存有本機(jī)號碼信息的SIM卡(第一種方法未能獲取),當(dāng)客戶端軟件要獲取本機(jī)號碼時,由于第一種方法無法獲取成功,所以執(zhí)行此方法。該方法通過利用短信的收發(fā)以及對其進(jìn)行必要的驗證,從而從收到的短信中讀取到發(fā)送者的號碼,則為本機(jī)號碼。本發(fā)明提供了一種避免用戶身份認(rèn)錯的算法,針對第二種方法,很可能在等待的時間范圍內(nèi)用戶會接收到其他短信,這樣會對用戶獲取本機(jī)號碼造成認(rèn)證出錯。在這個問題上,方案對發(fā)送的短信設(shè)置了一個六位數(shù)字的驗證碼,同時六位簡單數(shù)字的驗證碼能夠避免手機(jī)上一些安全軟件誤認(rèn)為是垃圾短信并對其進(jìn)行攔截。然后在接收端對接收的短信進(jìn)行驗證,判斷其內(nèi)容(即驗證碼)是否與發(fā)送的短信內(nèi)容(驗證碼)是否一致,若一致,才能夠去獲取到本機(jī)的號碼。否則,若在規(guī)定的時間內(nèi)沒有接收到預(yù)期的短信,返回錯誤信
肩、O本發(fā)明提供了一種對操作與環(huán)境容錯的解決方法。首先驗證碼生成于短信發(fā)送之前,即每條生成的短信中的驗證碼各不相同,不同的驗證碼更有利于對應(yīng)發(fā)送與接收的短信之間一一對應(yīng)的驗證,避免了接收端短信之間的混淆。其次,短信發(fā)送后,在規(guī)定時間內(nèi)(根據(jù)現(xiàn)在的網(wǎng)絡(luò)環(huán)境,暫定為60秒)若不能收到期待的短信,報錯,并提示用戶,從而防止因接收端沒有接到期待的短信而陷入了無限制的等待中,最后,在等待接收短信的時間段,用戶可以點(diǎn)擊來取消對期待短信的等待,相應(yīng)的實(shí)現(xiàn)是停止短信監(jiān)聽器,并向用戶返回相關(guān)信息。上述容錯的方法提高了本發(fā)明實(shí)現(xiàn)程序的健壯性。由上述方案可以看出,本發(fā)明中通過對SM卡MSISDN信息與通過短信的發(fā)送接收的過程從中獲取到手機(jī)的本機(jī)號碼。通過第二種方法對第一種方法的有力補(bǔ)充,保證了用戶程序能夠準(zhǔn)確地獲取到本機(jī)號碼,完成相應(yīng)的用戶標(biāo)識驗證功能等。并且這個方案,相對于以前的解決方案,無論是從實(shí)現(xiàn)的難易程度、開發(fā)的代價與門檻,還是執(zhí)行的效率與質(zhì) 量,都有很大的提升。
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖I為本發(fā)明實(shí)施例一中流程示意圖;圖2為本發(fā)明實(shí)施例一中時序執(zhí)行示意圖。
具體實(shí)施例方式為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式
對本發(fā)明作進(jìn)一步詳細(xì)的說明。顯然,所描述的實(shí)施例僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。實(shí)施例一,參見圖2本發(fā)明提供了一種獲取手機(jī)本機(jī)號碼的方案,所述的方案包括有兩種方法,所述的第一種方法為先驅(qū)方法,所述第二種方法為后備方法。所述第一種方法,用于手機(jī)SIM卡的MSISDN中存有本機(jī)號碼信息的情況。通過調(diào)用手機(jī)上的API來獲取到這個信息。不過由于并非所有手機(jī)都MSISDN中存有本機(jī)號碼,所以該方法雖然簡便,但是并非適用于所有的情況,不具有通用性。所述第二種方法,用于手機(jī)SM卡的MSISDN上未能讀出本機(jī)號碼的情況,利用現(xiàn)有的通訊網(wǎng)絡(luò),通過短信的發(fā)送接收與短信之間進(jìn)行驗證的過程,從中來獲取本機(jī)號碼。上述方案的工作過程參見圖1,具體包括以下步驟步驟SOl,手機(jī)客戶端先調(diào)用API,來讀取SM卡中的MSISDN信息;步驟S02,從SOI中得到的MSISDN信息中篩選出本機(jī)號碼的信息,若返回nul I,SP不能獲取,則執(zhí)行S03 ;否則,獲得本機(jī)號碼信息,結(jié)束。步驟S03,向用戶提示輸入手機(jī)號碼,并且生成一條以該手機(jī)號碼為接收號碼的短 目;步驟S04,生成一個6位整數(shù)的驗證碼,并設(shè)置S03生成的短信的內(nèi)容為該6位整數(shù)的驗證碼;步驟S05,把上述步驟得到的短信發(fā)送出去。步驟S06,開啟短信監(jiān)聽器,等待期待短信的接收。步驟S07,判斷是否能夠在規(guī)定的時間內(nèi)收到短信,如果收到,則執(zhí)行S08,否則,跳轉(zhuǎn)回S03,;步驟S08,判斷接收到的短信的內(nèi)容的短信中的驗證碼是否一致,若一致,這便是·我們期待的短信,執(zhí)行S09,否則跳回S06,繼續(xù)等待。步驟S09,從上述步驟下得到的接收短信中,分離出該短信的發(fā)送者號碼,該號碼即為手機(jī)的本機(jī)號碼,結(jié)束。本發(fā)明所述的方案,常用于對用戶身份的認(rèn)證的通訊軟件,則引用手機(jī)客戶端的登錄模塊為實(shí)力來進(jìn)行說明。當(dāng)用戶想用自己的手機(jī)客戶端進(jìn)行登錄到服務(wù)器上時,首先,該服務(wù)器端的登錄是以用戶的手機(jī)號為用戶標(biāo)識符。該客戶端首先會試圖去調(diào)用API查看SIM卡中的CSISDN信息,從中是否能夠抽取出本機(jī)號碼。其次,當(dāng)不能從SIM卡中讀取到本機(jī)號碼時,客戶端會提示當(dāng)用戶輸入自身的手機(jī)號碼,但是用戶本身可能會存在對自己本身手機(jī)號碼的輸入錯誤,倘若不使用本發(fā)明的方案,該用戶的標(biāo)識符就沒辦法真正地與自身的手機(jī)SIM卡綁定在一起,而該方案的作用,就是確保手機(jī)的SIM卡與登錄到服務(wù)器的用戶標(biāo)識是一一對應(yīng)的,而不是單純的說這個一連串的數(shù)字(本機(jī)號碼)作為登錄到服務(wù)器的標(biāo)識,這樣的話,任何手機(jī)都可以用這樣的號碼進(jìn)行登錄。此后,該手機(jī)的客戶端就自動生成一條短信,并對生成短信的內(nèi)容設(shè)置為六位的驗證碼,接著,客戶端會自動把生成的短信發(fā)送出去,并啟動手機(jī)本身的短信監(jiān)聽器,監(jiān)聽短信的接收的情況。接著,在等待接收的時間內(nèi),如60秒內(nèi)。如果接收到短信,手機(jī)客戶端會監(jiān)聽到接收到的短信中的內(nèi)容,然后判斷是否與剛剛發(fā)送的驗證碼是一致的。當(dāng)客戶端得到了驗證碼一致的結(jié)果,就認(rèn)為該接受的短信就是期待的短信,這便證明剛才所發(fā)送的短信的接受者的確是自己手機(jī)本身的號碼,這樣一來就完成了對自己本機(jī)號碼的獲取,當(dāng)獲取成功之時,客戶端就能實(shí)現(xiàn)了號碼與SIM卡的綁定,然后,客戶端用這個標(biāo)識符會連接服務(wù)器。由上可見,本發(fā)明提供的一種獲取手機(jī)本機(jī)號碼的方案,有以下優(yōu)點(diǎn)。(I)實(shí)現(xiàn)簡單本發(fā)明只需要利用手機(jī)API與現(xiàn)有的通訊網(wǎng)絡(luò),而在現(xiàn)有的通訊網(wǎng)絡(luò)中,利用短信的接收發(fā)送及其驗證就可以實(shí)現(xiàn)對本機(jī)號碼的獲取,假若用服務(wù)器進(jìn)行獲取,首先,在客戶端上,要添加相應(yīng)獲取的模塊,而在服務(wù)器上,也要添加對手機(jī)端要求獲取手機(jī)號的服務(wù)功能模塊,在一定的程度上增加了開發(fā)的難度。(2)減少開發(fā)的成本與門檻本發(fā)明因為不需要在服務(wù)器端進(jìn)行開發(fā),減少了在服務(wù)器端對該模塊的開發(fā)、部署、維護(hù)成本。然而,采用服務(wù)器端處理的方案,需要利用自身搭構(gòu)的服務(wù)器來進(jìn)行接收發(fā)送短信,需要各運(yùn)營商支持,而申請的費(fèi)用及門檻比較高。(3)容錯能力強(qiáng)本發(fā)明能夠自如地應(yīng)對各種突發(fā)的情況,如設(shè)定驗證碼,確保發(fā)送短信與接收短信之前的驗證成功;限定等待接收期待短信的時間,防止客戶端無限制的等待并交由用戶來進(jìn)行下一步的處理;在等待短信到達(dá)前,用戶可以點(diǎn)擊取消來終止該短信監(jiān)聽器的運(yùn)行,從而停止該模塊的運(yùn)行,并向上對用戶進(jìn)行相關(guān)信息的操作提示。通過以上的方法實(shí)施例的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加上短信運(yùn)營商對短信服務(wù)來實(shí)現(xiàn),本發(fā)明的技術(shù)主要是通過手機(jī)客戶端的應(yīng)用程序來體現(xiàn)。對于方案實(shí)施例而言,由于其基本相應(yīng)于方法實(shí)施例,所以相關(guān)之處參見方法實(shí) 施例的部分說明即可。以上所描述的方案實(shí)施例僅僅是示意性的,本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實(shí)施。在本申請所提供的幾個實(shí)施例中,應(yīng)該理解到,所揭露的方案,在沒有超過本申請的精神和范圍內(nèi),可以通過其他的方式實(shí)現(xiàn)。當(dāng)前的實(shí)施例只是一種示范性的例子,不應(yīng)該作為限制,所給出的具體內(nèi)容不應(yīng)該限制本申請的目的。另外,所描述方案以及實(shí)施例的示意圖,在不超出本申請的范圍內(nèi),可以與其它系統(tǒng),模塊,技術(shù)或方法結(jié)合或集成。以上所述僅是本發(fā)明的具體實(shí)施方式
,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種獲取本機(jī)手機(jī)號碼的方案,其特征在于,包括,讀取手機(jī)SIM卡的MSISDN信息獲取本機(jī)號與利用發(fā)送短信功能來獲取本機(jī)號兩種方法;所述的第一種方法,用于存有本機(jī)號碼信息的SIM卡,不過不能用于所有的SIM卡;所述的第二種方法,用于第一種方法不能獲取的情況下,同過短信發(fā)送接收及其驗證,來獲取到本機(jī)的號碼。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,包括,整個方案的運(yùn)作是先執(zhí)行方法一,若仍不能獲取,則執(zhí)行方法二;如此依次下來,就能夠得到比較高效率高質(zhì)量的解決方案。
3.根據(jù)權(quán)利要求I所述的方法,其特征在于,包括,方法二的具體流程為第一步先輸入手機(jī)號碼;第二步把生成的6位隨機(jī)整數(shù)驗證碼發(fā)給第一步輸入的手機(jī);第三步開啟手機(jī)的監(jiān)聽器,并監(jiān)聽手機(jī)的短信數(shù)據(jù)庫;第五步等待短信,在60秒內(nèi)若接收到短信內(nèi)容且與第二步生成的驗證碼一致,則可取的接收短信的發(fā)送者,即為本機(jī)號碼,否則,提示失敗并返回第一步。
4.一種獲取本機(jī)手機(jī)號碼的方案,其特征在于,包括,本機(jī)號碼的獲取無需連接服務(wù)器,經(jīng)服務(wù)器處理后轉(zhuǎn)發(fā)回來得到號碼;而是利用現(xiàn)有的通訊網(wǎng)絡(luò),在SM卡無號碼信息的情況下,通過短信,能夠很簡便地完成這個需求。
5.一種獲取本機(jī)手機(jī)號碼的方案,其特征在于,包括,為解決潛在的被一些安全軟件的攔截的問題,具體的方法為使用簡單的6位隨機(jī)整數(shù),避免被識別為垃圾短信;此外,直接監(jiān)聽短信數(shù)據(jù)庫,相對于等待系統(tǒng)廣播,優(yōu)先級較高。
6.一種獲取本機(jī)手機(jī)號碼的方案,其特征在于,包括,啟動短信數(shù)據(jù)庫監(jiān)聽器后,很可能會收到其他短信,為了確定收到的某條短信為驗證短信,通過設(shè)定特點(diǎn)的短信內(nèi)容(即六位的驗證碼)來識別,其中收到的短信與發(fā)送的短信的內(nèi)容(驗證碼)相同為識別成功。
全文摘要
本發(fā)明公開了一種獲取本機(jī)手機(jī)號碼的方案,基于手機(jī)通訊領(lǐng)域,主要是解決手機(jī)客戶端如何去獲取本機(jī)的手機(jī)號碼的技術(shù)(具體實(shí)現(xiàn)不包括IOS平臺)。該方案對號碼的獲取有兩種方法,其一是試圖讀取手機(jī)SIM卡的MSISDN信息,是否能從中讀取到本機(jī)號碼;若不能,則采用另外一種方法利用手機(jī)的短信發(fā)送接收功能來獲取,具體實(shí)現(xiàn)為輸入一個手機(jī)號碼,生成一個6位驗證碼的短信并發(fā)送給短信運(yùn)營商,接收與驗證碼相同內(nèi)容的短信并讀取發(fā)送者的號碼,即為本機(jī)號碼。該方案適用于幾乎所有的SIM卡,通用性強(qiáng),并且獲取的效率與質(zhì)量比較高。
文檔編號H04W8/20GK102892091SQ20121033864
公開日2013年1月23日 申請日期2012年9月7日 優(yōu)先權(quán)日2012年9月7日
發(fā)明者張少文, 劉沖, 唐敏 申請人:佳都新太科技股份有限公司