午夜毛片免费看,老师老少妇黄色网站,久久本道综合久久伊人,伊人黄片子

一種近距離通信的控制方法、裝置及移動(dòng)終端與流程

文檔序號(hào):12490102閱讀:736來(lái)源:國(guó)知局
一種近距離通信的控制方法、裝置及移動(dòng)終端與流程

本發(fā)明涉及近距離通信技術(shù)領(lǐng)域,尤其涉及一種近距離通信的控制方法、裝置及移動(dòng)終端。



背景技術(shù):

隨著集成電路技術(shù)的飛速發(fā)展,移動(dòng)終端的處理能力不斷增強(qiáng);隨著網(wǎng)絡(luò)、通信技術(shù)的不斷進(jìn)步,移動(dòng)終端的應(yīng)用場(chǎng)景也更加豐富,移動(dòng)終端正在從簡(jiǎn)單的通話工具變?yōu)橐粋€(gè)綜合信息處理平臺(tái)。移動(dòng)終端集成了越來(lái)越多的功能,近距離通信(Near Field Communication,NFC)就是其中一種。利用NFC功能,用戶不再需要隨身攜帶公交卡、地鐵卡,甚至銀行卡,只要攜帶移動(dòng)終端就可以隨意出行。該功能不僅需要移動(dòng)終端本身支持NFC功能,也需要例如用戶識(shí)別模塊(SIM:Subscriber Identity Module)卡或通用用戶識(shí)別模塊(USIM:Universal Subscriber Identity Module)卡的智能卡支持NFC功能。帶有NFC功能的USIM/SIM卡中保存了公交卡信息,或是地鐵卡信息,甚至是銀行卡信息,當(dāng)需要獲取這些信息時(shí),終端通過(guò)應(yīng)用層和USIM/SIM卡進(jìn)行交互,讀取需要的數(shù)據(jù),或是更改相應(yīng)的數(shù)據(jù)。為了將這些數(shù)據(jù)和USIM/SIM卡中傳統(tǒng)通信的數(shù)據(jù)分開(kāi),現(xiàn)有技術(shù)中通過(guò)通道將NFC通信和傳統(tǒng)通信做了區(qū)分。移動(dòng)終端的協(xié)議棧部分充當(dāng)通道進(jìn)行應(yīng)用層和USIM/SIM卡之間的直接交互。移動(dòng)終端在進(jìn)行傳統(tǒng)通信時(shí),在主通道上對(duì)卡進(jìn)行讀取、寫(xiě)入等操作,而在進(jìn)行NFC通信時(shí),則在邏輯通道中與卡進(jìn)行交互。

在現(xiàn)有的設(shè)計(jì)中,移動(dòng)終端作為讀卡器,移動(dòng)終端協(xié)議棧部分僅僅作為通道而不做其他任何處理。這樣的設(shè)計(jì)雖然從一定程度上保證了NFC功能與電信 規(guī)定的通信過(guò)程互不影響,但是當(dāng)移動(dòng)終端需要同時(shí)通過(guò)電信通信和NFC通信對(duì)USIM/SIM卡進(jìn)行操作時(shí),由于USIM/SIM卡是一個(gè)串行通信器件,其無(wú)法同時(shí)進(jìn)行這兩者的操作,因此傳統(tǒng)電信通信和NFC通信的實(shí)現(xiàn)勢(shì)必存在沖突,同時(shí),當(dāng)應(yīng)用層需要在多個(gè)邏輯通道上同時(shí)對(duì)USIM/SIM卡進(jìn)行操作時(shí),多個(gè)NFC通信也會(huì)互相影響。

在實(shí)現(xiàn)本發(fā)明的過(guò)程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下技術(shù)問(wèn)題:

當(dāng)在邏輯通道上通過(guò)NFC通信與卡進(jìn)行數(shù)據(jù)交互時(shí),該數(shù)據(jù)交互可能會(huì)被主通道上的傳統(tǒng)通信所打斷,也有可能被其他邏輯通道上的NFC通信所打斷,從而導(dǎo)致無(wú)法進(jìn)行完整的數(shù)據(jù)交互,影響該NFC通信。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明提供一種NFC通信的控制方法、裝置及移動(dòng)終端,能夠保證正在進(jìn)行的NFC通信不被傳統(tǒng)通信和其他NFC通信所打斷,保護(hù)數(shù)據(jù)不被丟失,加快NFC應(yīng)用通信中的數(shù)據(jù)讀取。

一方面,本發(fā)明提供一種NFC通信的控制方法,包括:

接收應(yīng)用層發(fā)送的獲取智能卡上與NFC通信相關(guān)的數(shù)據(jù)的指令;

分批向所述智能卡發(fā)送相應(yīng)的指令以獲取與所述NFC通信相關(guān)的數(shù)據(jù),并將所述智能卡每次所返回的結(jié)果進(jìn)行保存,直到通過(guò)所返回的結(jié)果判斷所述智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù);

在判斷所述智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)之后,將每次所保存的所述智能卡所返回的結(jié)果分批上報(bào)給應(yīng)用層,

其中,在接收所述獲取智能卡上與所述NFC通信相關(guān)的數(shù)據(jù)的指令后,如果又收到訪問(wèn)所述智能卡的其他指令,則控制所述其他指令的處理進(jìn)行等待,直到判斷所述智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)后,才處理 所述其他指令。

可選地,當(dāng)所述其他指令為多個(gè)時(shí),所述處理所述其他指令的步驟包括:按照接收所述其他指令的先后順序,依次處理所述其他指令。

可選地,所述分批向所述智能卡發(fā)送相應(yīng)的指令以獲取與所述NFC通信相關(guān)的數(shù)據(jù),并將所述智能卡每次所返回的結(jié)果進(jìn)行保存,直到通過(guò)所返回的結(jié)果判斷所述智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)的步驟包括:

將所接收的所述獲取智能卡上與所述NFC通信相關(guān)的數(shù)據(jù)的指令發(fā)送到所述智能卡;

接收所述智能卡返回的狀態(tài)字;

判斷所述狀態(tài)字是否指示所述智能卡上存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù),如果是,保存所述狀態(tài)字,分批向所述智能卡發(fā)送相應(yīng)的指令以獲取與所述NFC通信相關(guān)的數(shù)據(jù)和狀態(tài)字并進(jìn)行保存,直到判斷所獲取的狀態(tài)字指示所述智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)。

可選地,所述分批向所述智能卡發(fā)送相應(yīng)的指令以獲取與所述NFC通信相關(guān)的數(shù)據(jù)和狀態(tài)字并進(jìn)行保存,直到判斷所獲取的狀態(tài)字指示所述智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)的步驟包括:

根據(jù)所接收的狀態(tài)字向智能卡發(fā)送相應(yīng)的指令,獲取與所述NFC通信相關(guān)的數(shù)據(jù)和狀態(tài)字;

保存所獲取的數(shù)據(jù)和狀態(tài)字;

判斷所獲取的狀態(tài)字是否指示所述智能卡上存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù);

如果是,重復(fù)前面的步驟,直到判斷所獲取的狀態(tài)字指示所述智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)。

可選地,所述將每次所保存的所述智能卡所返回的結(jié)果分批上報(bào)給應(yīng)用層的步驟包括:

向應(yīng)用層上報(bào)第一次所保存的狀態(tài)字,在每次接收到應(yīng)用層發(fā)送的獲取數(shù)據(jù)和相應(yīng)狀態(tài)字的指令后,根據(jù)應(yīng)用層的指令向應(yīng)用層上報(bào)所保存的數(shù)據(jù)和相應(yīng)狀態(tài)字。

可選地,所述將所述智能卡每次所返回的結(jié)果進(jìn)行保存的步驟包括:將所述智能卡每次所返回的結(jié)果依次保存在對(duì)應(yīng)于所述NFC通信的同一鏈表中。

另一方面,本發(fā)明提供一種NFC通信的控制裝置,包括:

第一接收模塊,用于接收應(yīng)用層發(fā)送的獲取智能卡上與NFC通信相關(guān)的數(shù)據(jù)的指令;

第一發(fā)送模塊,用于分批向所述智能卡發(fā)送相應(yīng)的指令以獲取與所述NFC通信相關(guān)的數(shù)據(jù),直到判斷模塊判斷所述智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù);

第二接收模塊,用于接收所述智能卡每次響應(yīng)于第一發(fā)送模塊發(fā)送的相應(yīng)的指令而返回的結(jié)果;

保存模塊,用于保存所述智能卡每次響應(yīng)于第一發(fā)送模塊發(fā)送的相應(yīng)的指令而返回的結(jié)果;

判斷模塊,用于利用第二接收模塊每次所返回的結(jié)果判斷所述智能卡上是否存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù);

第二發(fā)送模塊,用于在所述判斷模塊判斷所述智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)之后,將每次所保存的所述智能卡所返回的結(jié)果分批上報(bào)給應(yīng)用層;

控制模塊,用于在所述第一接收模塊接收所述獲取智能卡上與所述NFC通 信相關(guān)的數(shù)據(jù)的指令后,當(dāng)又收到訪問(wèn)所述智能卡的其他指令時(shí),控制所述其他指令的處理進(jìn)行等待,并且控制所述其他指令的處理在判斷所述智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)后才開(kāi)始進(jìn)行。

可選地,當(dāng)所述其他指令為多個(gè)時(shí),所述控制模塊用于按照接收所述其他指令的先后順序,依次處理所述其他指令

可選地,所述第一發(fā)送模塊用于將所接收的所述獲取智能卡上與所述NFC通信相關(guān)的數(shù)據(jù)的指令發(fā)送到所述智能卡;所述第二接收模塊用于接收所述智能卡返回的狀態(tài)字;所述判斷模塊用于判斷所述狀態(tài)字是否指示所述智能卡上存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù);所述保存模塊用于保存智能卡返回的狀態(tài)字;所述第二發(fā)送模塊用于在所述判斷模塊判斷所述狀態(tài)字指示所述智能卡上存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)之后,分批向所述智能卡發(fā)送相應(yīng)的指令以獲取與所述NFC通信相關(guān)的數(shù)據(jù)和狀態(tài)字,直到所述判斷模塊判斷所獲取的狀態(tài)字指示所述智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)。

可選地,所述第二發(fā)送模塊,用于根據(jù)所接收的狀態(tài)字向智能卡發(fā)送相應(yīng)的指令;所述第二接收模塊,用于獲取與所述NFC通信相關(guān)的數(shù)據(jù)和狀態(tài)字;所述保存模塊,用于保存所獲取的數(shù)據(jù)和狀態(tài)字。

可選地,所述第二發(fā)送模塊用于向應(yīng)用層上報(bào)第一次所保存的狀態(tài)字,在每次接收到應(yīng)用層發(fā)送的獲取數(shù)據(jù)和相應(yīng)狀態(tài)字的指令后,根據(jù)應(yīng)用層的指令向應(yīng)用層上報(bào)所保存的數(shù)據(jù)和相應(yīng)狀態(tài)字。

可選地,所述保存模塊用于將所述智能卡每次所返回的結(jié)果依次保存在對(duì)應(yīng)于所述NFC通信的同一鏈表中。

再一方面,本發(fā)明提供一種移動(dòng)終端,其包括所述NFC通信的控制裝置。

本發(fā)明提供的NFC通信的控制方法、裝置及移動(dòng)終端,當(dāng)NFC通信過(guò)程需要多次和智能卡進(jìn)行交互時(shí),協(xié)議棧不再僅僅作為應(yīng)用層和智能卡之間進(jìn)行交互的通道,而是參與其中,在收到應(yīng)用層的指令后,阻止其他指令的進(jìn)入,并充當(dāng)應(yīng)用層和智能卡進(jìn)行交互,保存智能卡每次所返回的數(shù)據(jù),直至智能卡告訴此過(guò)程結(jié)束;之后,協(xié)議棧將所保存的從智能卡獲得的數(shù)據(jù)發(fā)送給應(yīng)用層,在協(xié)議棧和應(yīng)用層交互時(shí),其它指令也可以和卡交互,完全不影響此次NFC通信過(guò)程。與現(xiàn)有技術(shù)相比,本發(fā)明通過(guò)將協(xié)議棧和智能卡、應(yīng)用層和協(xié)議棧分開(kāi)進(jìn)行多次交互,將協(xié)議棧作為應(yīng)用層獲取智能卡數(shù)據(jù)的緩存池,從而能夠保證正在進(jìn)行的NFC通信不被傳統(tǒng)通信和其他NFC通信所打斷,避免了數(shù)據(jù)的丟失,并加快了數(shù)據(jù)的讀取。

附圖說(shuō)明

圖1為本發(fā)明一實(shí)施例提供的NFC通信的控制方法的流程圖;

圖2為本發(fā)明另一實(shí)施例提供的NFC通信控制方法的流程圖;

圖3為本發(fā)明又一實(shí)施例提供的NFC通信控制方法的流程圖;

圖4為本發(fā)明實(shí)施例提供的一種NFC通信的控制裝置的結(jié)構(gòu)示意圖;

圖5為本發(fā)明實(shí)施例提供的一種移動(dòng)終端的結(jié)構(gòu)示意圖。

具體實(shí)施方式

下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

本發(fā)明實(shí)施例提供一種近距離通信的控制方法,如圖1所示,所述方法包括:

S101、接收應(yīng)用層發(fā)送的獲取智能卡上與某個(gè)NFC通信相關(guān)的數(shù)據(jù)的指令;

S102、分批向智能卡發(fā)送指令以獲取所述與該NFC通信相關(guān)的數(shù)據(jù),并將智能卡每次所返回的結(jié)果進(jìn)行保存,直到通過(guò)所返回的結(jié)果判斷智能卡上不存在可讀取的與該NFC通信相關(guān)的數(shù)據(jù);

S103、判斷智能卡上不存在可讀取的與該NFC通信相關(guān)的數(shù)據(jù)之后,將所保存的智能卡所返回的結(jié)果分批上報(bào)給應(yīng)用層,

S104、在步驟S102進(jìn)行期間,如果又收到訪問(wèn)智能卡的其他指令,則控制其他指令的處理進(jìn)行等待,直到判斷智能卡上不存在可讀取的與該NFC通信相關(guān)的數(shù)據(jù)后,才開(kāi)始處理其他指令。

當(dāng)上述其他指令為多個(gè)時(shí),可以按照接收其他指令的先后順序,順序處理其他指令。其中,所述其他指令可以為來(lái)自邏輯通道的與NFC通信相關(guān)的指令,也可以為來(lái)自主通道的與傳統(tǒng)通信相關(guān)的指令。

優(yōu)選地,將所保存的智能卡所返回的結(jié)果分批上報(bào)給應(yīng)用層的步驟包括:向應(yīng)用層上報(bào)第一次所保存的結(jié)果,在每次接收到應(yīng)用層發(fā)送的指令后,根據(jù)應(yīng)用層的指令向應(yīng)用層上報(bào)后續(xù)每次所保存的結(jié)果。

本發(fā)明實(shí)施例提供的近距離通信的控制方法,當(dāng)NFC通信過(guò)程需要多次和智能卡進(jìn)行交互時(shí),協(xié)議棧不再僅僅作為應(yīng)用層和智能卡之間進(jìn)行交互的通道,而是參與其中,在收到應(yīng)用層的指令后,阻止其他指令的進(jìn)入,并充當(dāng)應(yīng)用層和智能卡進(jìn)行交互,保存智能卡每次所返回的數(shù)據(jù),直至智能卡告訴此過(guò)程結(jié)束;之后,協(xié)議棧將所保存的從智能卡獲得的數(shù)據(jù)發(fā)送給應(yīng)用層,在協(xié)議棧和應(yīng)用層交互時(shí),其它指令也可以和卡交互,完全不影響此次NFC通信過(guò)程。與現(xiàn)有技術(shù)相比,本發(fā)明通過(guò)將協(xié)議棧和智能卡、應(yīng)用層和協(xié)議棧分開(kāi)進(jìn)行多次交互,將協(xié)議棧作為應(yīng)用層獲取智能卡數(shù)據(jù)的緩存池,從而能夠保證正在進(jìn)行 的NFC通信不被傳統(tǒng)通信和其他NFC通信所打斷,避免了數(shù)據(jù)的丟失,并加快了數(shù)據(jù)的讀取。

本發(fā)明實(shí)施例還提供一種近距離通信的控制方法。在本實(shí)施例中,當(dāng)NFC通信正在對(duì)智能卡進(jìn)行操作時(shí),傳統(tǒng)通信也需要訪問(wèn)智能卡。如圖2所示,所述近距離通信的控制方法包括:

S201、移動(dòng)終端的應(yīng)用層在邏輯通道上向智能卡發(fā)送指令,獲取智能卡上某個(gè)NFC通信所需要的數(shù)據(jù),此處,所述智能卡可以為USIM卡或SIM卡,該數(shù)據(jù)例如可以為余額信息、扣費(fèi)信息等。

S202、協(xié)議棧在收到上述指令后,將該指令傳送到智能卡。

S203、智能卡在收到應(yīng)用層所發(fā)送的指令后,通過(guò)返回狀態(tài)字告知應(yīng)用層所述指令的執(zhí)行情況,從而使得應(yīng)用層知道下一步需要做什么。

在NFC通信中,最主要用到的狀態(tài)字就是過(guò)程字節(jié)61XX和9FXX,其中,61XX是USIM卡的過(guò)程字節(jié),而9FXX是SIM卡的過(guò)程字節(jié),兩者均表示智能卡上存在可讀取的有效數(shù)據(jù)。例如USIM卡發(fā)送過(guò)程字節(jié)“61XX”時(shí),其表明卡上尚有XX字節(jié)的數(shù)據(jù)可以返回。

S204、協(xié)議棧在接收到智能卡返回的狀態(tài)字之后,判斷狀態(tài)字是否指示智能卡中存在可讀取的有效數(shù)據(jù)。

例如,判斷狀態(tài)字是否為過(guò)程字節(jié)61XX或9FXX。當(dāng)協(xié)議棧判斷狀態(tài)字不是過(guò)程字節(jié)61XX或9FXX時(shí),將狀態(tài)字上報(bào)給應(yīng)用層,使得應(yīng)用層根據(jù)上報(bào)的狀態(tài)字,結(jié)束流程。

S205、當(dāng)協(xié)議棧判斷狀態(tài)字是過(guò)程字節(jié)61XX或9FXX時(shí),則將狀態(tài)字進(jìn)行保存。

S206、協(xié)議棧發(fā)送相應(yīng)指令給智能卡,獲取智能卡返回的數(shù)據(jù)和狀態(tài)字。

S207、協(xié)議棧將智能卡返回的數(shù)據(jù)和狀態(tài)字進(jìn)行保存。

S208、協(xié)議棧判斷所獲取的狀態(tài)字是否為過(guò)程字節(jié)61XX或9FXX,如果是,則返回步驟S206。

S209、如果協(xié)議棧判斷所獲取的狀態(tài)字不是過(guò)程字節(jié)61XX或9FXX,將第一次所保存的狀態(tài)字上報(bào)給應(yīng)用層,這里,第一次所保存的狀態(tài)字為過(guò)程字節(jié)61XX或9FXX。

S210、應(yīng)用層接收協(xié)議棧所上報(bào)的狀態(tài)字并進(jìn)行處理,判斷所述狀態(tài)字是否為過(guò)程字節(jié)61XX或9FXX,如果否,則結(jié)束流程。

S211、如果應(yīng)用層判斷所述狀態(tài)字是過(guò)程字節(jié)61XX或9FXX,則繼續(xù)向協(xié)議棧發(fā)送指令獲取數(shù)據(jù)和狀態(tài)字,并對(duì)接收到的數(shù)據(jù)進(jìn)行處理,直到判斷所獲得的狀態(tài)字不是過(guò)程字節(jié)61XX或9FXX。

S212、協(xié)議棧根據(jù)應(yīng)用層的指令上報(bào)其保存的數(shù)據(jù)和相應(yīng)的狀態(tài)字。

S213、在步驟S203至S209進(jìn)行期間,若接收到來(lái)自主通道的需要訪問(wèn)智能卡的傳統(tǒng)通信的指令,例如來(lái)自網(wǎng)絡(luò)的需要通過(guò)智能卡進(jìn)行鑒權(quán)的指令,則使得傳統(tǒng)通信的指令進(jìn)行等待,直到協(xié)議棧判斷其所接收的來(lái)自智能卡的狀態(tài)字不是過(guò)程字節(jié)61XX或9FXX時(shí),即協(xié)議棧判斷智能卡上不再存在可讀取的有效數(shù)據(jù)時(shí),才開(kāi)始處理傳統(tǒng)通信的。

其中,協(xié)議棧可以將每次所接收的來(lái)自智能卡上的狀態(tài)字或數(shù)據(jù)和狀態(tài)字按照接收的先后順序保存在一個(gè)鏈表中,從而保證在應(yīng)用層和協(xié)議棧交互時(shí),能夠順序從鏈表中將數(shù)據(jù)和狀態(tài)在發(fā)送給應(yīng)用層。

本發(fā)明實(shí)施例還提供一種近距離通信的控制方法。在本實(shí)施例中,當(dāng)一個(gè)NFC通信正在對(duì)智能卡進(jìn)行操作時(shí),另外一個(gè)NFC通信也發(fā)出對(duì)智能卡進(jìn)行操作的指令。如圖3所示,所述近距離通信的控制方法包括:

S301~S312、與上述步驟S201~S212相同,在此不再贅述。

S313、在步驟S303至S309進(jìn)行期間,若接收到來(lái)自另一路邏輯通道上的需要訪問(wèn)智能卡的指令,則使得另一路邏輯通道上的指令進(jìn)行等待,直到協(xié)議棧判斷其所接收的來(lái)自智能卡的狀態(tài)字不是過(guò)程字節(jié)61XX或9FXX時(shí),即協(xié)議棧判斷智能卡上不再存在可讀取的與在先NFC通信相關(guān)的數(shù)據(jù)時(shí),才開(kāi)始處理來(lái)自另一路邏輯通道上的指令。對(duì)另一路邏輯通道上的指令的處理按照與前面基本相同的流程進(jìn)行。同理,如果有更多路的邏輯通道的指令在進(jìn)行等待,則按照各路邏輯通道上的指令到達(dá)的先后順序,按照基本相同的流程依次進(jìn)行指令的處理。

其中,協(xié)議棧可以根據(jù)不同的邏輯通道,保存各自的數(shù)據(jù)和狀態(tài)字,邏輯通道之間互不影響??蛇x的,協(xié)議??梢酝ㄟ^(guò)不同的鏈表來(lái)保存不通邏輯通道上的數(shù)據(jù)和狀態(tài)字。例如,有3個(gè)邏輯通道對(duì)智能卡的操作存在時(shí)間的重疊,則需要3個(gè)保存數(shù)據(jù)的鏈表。

其中,當(dāng)NFC通信正在對(duì)智能卡進(jìn)行操作,協(xié)議棧又收到來(lái)自主通道的與傳統(tǒng)通信相關(guān)的指令和來(lái)自其他路邏輯通道的與NFC通信相關(guān)的訪問(wèn)智能卡的指令,則協(xié)議棧在確認(rèn)智能卡上不再存在可讀取的與第一路NFC通信相關(guān)的數(shù)據(jù)時(shí),才開(kāi)始按照后續(xù)指令到達(dá)的先后順序來(lái)依次處理后續(xù)指令。當(dāng)然,后續(xù)指令不限于兩路。

本發(fā)明實(shí)施例還提供一種NFC通信的控制裝置,如圖4所示,所述裝置包括:

第一接收模塊101,用于接收應(yīng)用層發(fā)送的獲取智能卡上與NFC通信相關(guān)的數(shù)據(jù)的指令;

第一發(fā)送模塊102,用于分批向智能卡發(fā)送相應(yīng)的指令以獲取與所述NFC 通信相關(guān)的數(shù)據(jù),直到判斷模塊105判斷智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù);

第二接收模塊103,用于接收智能卡每次響應(yīng)于第一發(fā)送模塊102發(fā)送的相應(yīng)的指令而返回的結(jié)果;

保存模塊104,用于保存智能卡每次響應(yīng)于第一發(fā)送模塊102發(fā)送的相應(yīng)的指令而返回的結(jié)果;

判斷模塊105,用于利用第二接收模塊103每次所返回的結(jié)果判斷智能卡上是否存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù);

第二發(fā)送模塊106,用于在判斷模塊105判斷智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)之后,將每次所保存的智能卡所返回的結(jié)果分批上報(bào)給應(yīng)用層;

控制模塊107,用于在第一接收模塊101接收所述獲取智能卡上與所述NFC通信相關(guān)的數(shù)據(jù)的指令后,當(dāng)又收到訪問(wèn)智能卡的其他指令時(shí),控制所述其他指令的處理進(jìn)行等待,并且控制所述其他指令的處理在判斷智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)后才開(kāi)始進(jìn)行。

本發(fā)明提供的NFC通信的控制裝置,當(dāng)NFC通信過(guò)程需要多次和智能卡進(jìn)行交互時(shí),協(xié)議棧不再僅僅作為應(yīng)用層和智能卡之間進(jìn)行交互的通道,而是參與其中,在收到應(yīng)用層的指令后,阻止其他指令的進(jìn)入,并充當(dāng)應(yīng)用層和智能卡進(jìn)行交互,保存智能卡每次所返回的數(shù)據(jù),直至智能卡告訴此過(guò)程結(jié)束;之后,協(xié)議棧將所保存的從智能卡獲得的數(shù)據(jù)發(fā)送給應(yīng)用層,在協(xié)議棧和應(yīng)用層交互時(shí),其它指令也可以和卡交互,完全不影響此次NFC通信過(guò)程。與現(xiàn)有技術(shù)相比,本發(fā)明通過(guò)將協(xié)議棧和智能卡、應(yīng)用層和協(xié)議棧分開(kāi)進(jìn)行多次交互,將協(xié)議棧作為應(yīng)用層獲取智能卡數(shù)據(jù)的緩存池,從而能夠保證正在進(jìn)行的NFC 通信不被傳統(tǒng)通信和其他NFC通信所打斷,避免了數(shù)據(jù)的丟失,并加快了數(shù)據(jù)的讀取。

當(dāng)所述其他指令為多個(gè)時(shí),控制模塊107用于按照接收所述其他指令的先后順序,依次處理所述其他指令。

進(jìn)一步地,第一發(fā)送模塊102用于將所接收的獲取智能卡上與所述NFC通信相關(guān)的數(shù)據(jù)的指令發(fā)送到智能卡;第二接收模塊103用于接收智能卡返回的狀態(tài)字;判斷模塊105用于判斷所述狀態(tài)字是否指示智能卡上存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)。

可選地,當(dāng)狀態(tài)字為過(guò)程字節(jié)61XX或9FXX時(shí),表示所述智能卡中存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù),當(dāng)狀態(tài)字不為過(guò)程字節(jié)61XX或9FXX時(shí),表示所述智能卡中不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù);

更進(jìn)一步地,保存模塊104用于保存智能卡返回的狀態(tài)字;第二發(fā)送模塊106用于在判斷模塊判斷所述狀態(tài)字指示智能卡上存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù)之后,即判斷所述狀態(tài)字不是過(guò)程字節(jié)61XX或9FXX時(shí),分批向智能卡發(fā)送相應(yīng)的指令以獲取與所述NFC通信相關(guān)的數(shù)據(jù)和狀態(tài)字,直到判斷模塊105判斷所獲取的狀態(tài)字指示智能卡上不存在可讀取的與所述NFC通信相關(guān)的數(shù)據(jù),即判斷所述狀態(tài)字是過(guò)程字節(jié)61XX或9FXX。

更進(jìn)一步地,第二發(fā)送模塊106用于根據(jù)所接收的狀態(tài)字向智能卡發(fā)送相應(yīng)的指令,第二接收模塊103用于獲取與所述NFC通信相關(guān)的數(shù)據(jù)和狀態(tài)字,保存模塊104用于保存所獲取的數(shù)據(jù)和狀態(tài)字。

更進(jìn)一步地,第二發(fā)送模塊106用于向應(yīng)用層上報(bào)第一次所保存的狀態(tài)字,在每次接收到應(yīng)用層發(fā)送的獲取數(shù)據(jù)和相應(yīng)狀態(tài)字的指令后,根據(jù)應(yīng)用層的指令向應(yīng)用層上報(bào)所保存的數(shù)據(jù)和相應(yīng)狀態(tài)字。

再進(jìn)一步地,保存模塊104用于將智能卡每次所返回的結(jié)果依次保存在對(duì)應(yīng)于所述NFC通信的同一鏈表中。當(dāng)有多個(gè)邏輯通道上的NFC通信先后訪問(wèn)智能卡時(shí),不同的鏈表對(duì)應(yīng)于不同的邏輯通道。

如圖5所示,本發(fā)明實(shí)施例還提供一種移動(dòng)終端,所述移動(dòng)終端包括應(yīng)用層和與智能卡的接口,所述移動(dòng)終端還包括上述實(shí)施例中所述的NFC通信的控制裝置。

本發(fā)明實(shí)施例中的移動(dòng)終端可以為手機(jī)、可穿戴設(shè)備、PAD等,但不僅限于此。本發(fā)明實(shí)施例中的智能卡可以為SIM卡或USIM卡,但不僅限于此。

本發(fā)明實(shí)施例近距離通信的控制方法、裝置及移動(dòng)終端,可以適用于對(duì)移動(dòng)終端的NFC通信進(jìn)行控制,但不僅限于此。

本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過(guò)計(jì)算機(jī)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁碟、光盤(pán)、只讀存儲(chǔ)記憶體(Read-Only Memory,ROM)或隨機(jī)存儲(chǔ)記憶體(Random Access Memory,RAM)等。

以上所述,僅為本發(fā)明的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求的保護(hù)范圍為準(zhǔn)。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1