明】
[0033]圖1是根據(jù)本發(fā)明一個實施例的應用程序的登錄方法的流程圖。
[0034]圖2是根據(jù)本發(fā)明一個具體實施例的應用程序的登錄方法的流程圖。
[0035]圖3是根據(jù)本發(fā)明一個實施例的應用程序的登錄裝置的結構示意圖。
[0036]圖4是根據(jù)本發(fā)明另一個實施例的應用程序的登錄裝置的結構示意圖;
[0037]圖5是根據(jù)本發(fā)明一個實施例的電子設備的結構示意圖。
【具體實施方式】
[0038]下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。
[0039]下面參考附圖描述本發(fā)明實施例的應用程序的登錄方法及裝置。
[0040]圖1是根據(jù)本發(fā)明一個實施例的應用程序的登錄方法的流程圖。
[0041 ] 如圖1所示,該應用程序的登錄方法包括:
[0042]S11,接收第一應用程序的登錄請求。
[0043]S12,判斷移動終端中與第一應用程序具有賬號共享關系的第二應用程序是否已登錄。
[0044]具體地,在接收第一應用程序的登錄請求之后,可判斷移動終端中是否安裝有第二應用程序;如果移動終端中安裝有第二應用程序,則進一步判斷第二應用程序是否已登錄。
[0045]具體而言,在接收第一應用程序的登錄請求之后,可從移動終端中獲取第一應用程序對應的廣播事件響應配置信息,并通過移動終端的操作系統(tǒng)查詢與第一應用程序的廣播事件響應配置信息相同的應用程序,并對與第一應用程序的廣播事件響應配置信息相同的應用程序進行校驗,如果校驗成功,則將與第一應用程序的廣播事件響應配置信息相同的應用程序作為第二應用程序。
[0046]其中,廣播事件響應配置信息包括應用程序可以響應的廣播事件信息和應用程序可以發(fā)起的廣播事件信息。屬于同一個公司的應用程序,其所對應的廣播事件響應配置信息相同。在第一應用程序發(fā)送一個廣播事件后,只有屬于同一個公司的應用程序才能響應第一應用程序發(fā)送的這個廣播事件,也就是說,能響應第一應用程序發(fā)送的廣播事件的應用程序即為與第一應用程序的廣播事件響應配置信息相同的應用程序。
[0047]在本發(fā)明的一個實施例中,對與第一應用程序的廣播事件響應配置信息相同的應用程序進行校驗的具體實現(xiàn)過程如下:
[0048]獲取應用程序的包名和簽名信息,然后判斷應用程序的包名是否屬于自身預存的包名集,若屬于,則進一步判斷應用程序的簽名信息是否屬于自身預存的應用程序的簽名信息集;若應用程序的簽名信息屬于自身預存的應用程序的簽名信息集,則判斷校驗成功。
[0049]S13,如果第二應用程序已登錄,則獲取第二應用程序的登錄信息。
[0050]其中,上述登錄信息包括用戶登錄第二應用程序時的用戶賬號以及服務器為第二應用程序的登錄標識。需要說明的是,登錄標識是登錄成功后服務器返回的一個授權字符串,后續(xù)與服務器交互時需要發(fā)送該授權字符串,通過該授權字符串來識別用戶身份。
[0051]具體地,在確定第二應用程序已登錄后,可通過AIDL(Android InterfaceDefinit1n Language,安卓接口定義語言)接口與第二應用程序進行通信,并通過AIDL接口獲取第二應用程序的登錄信息。
[0052]需要說明的是,第一應用程序與第二應用程序進行跨進程進行交互的AIDL接口是預先設定好的,設定該AIDL接口是為了實現(xiàn)兩個應用程序之間可以共享賬號信息。
[0053]在本發(fā)明的一個實施例中,如果第二應用程序未登錄,則在第一應用程序中提示用戶輸入登錄驗證信息,以方便用戶根據(jù)提示信息輸入用戶賬號和登錄密碼。
[0054]需要說明是,移動終端中可能存在多個與第一應用程序的廣播事件響應配置信息相同的應用程序,即移動終端中可能存在多個第二應用程序。
[0055]在確定移動終端中有多個第二應用程序后,可進一步判斷對應的第二應用程序是否已經登錄,在判斷出移動終端中有多個已經登錄的第二應用程序時,由于多個已經登錄的第二應用程序所使用的用戶賬號相同,此時,可獲取任一個第二應用程序的登錄信息。
[0056]例如,智能手機中存在三個具有賬號共享關系的應用程序,分別為應用程序A、應用程序B和應用程序C。用戶在應用程序A中申請注冊并登錄用戶賬號X后,若用戶打開應用程序B,用戶無需登錄,后臺程序將從智能手機中獲取已經登錄的應用程序A的用戶賬號X,并以用戶賬號X直接登錄應用程序B。同樣地,在用戶打開應用程序C時,后臺程序可確定智能手機中存兩個已經登錄的第二應用程序,即應用程序A和應用程序B,由于這兩個應用程序所使用的用戶賬號相同,此時,后臺程序可使用應用程序A的用戶賬號或者應用程序B的用戶賬號登錄應用程序C。
[0057]S14,向服務器發(fā)送登錄信息進行登錄。
[0058]具體地,在獲取第二應用程序的登錄信息后,可將第二應用程序的登錄信息和第一應用程序的標識發(fā)送至服務器。
[0059]服務器在接收到第一應用程序的標識和第二應用程序的登錄信息后,服務器獲取第二應用程序的登錄信息中的用戶賬號和第二應用程序的登錄標識,并根據(jù)預先保存的賬號信息庫對第二應用程序的用戶賬號和第二應用程序的登錄標識驗證,若接收到的第二應用程序的用戶賬號和登錄標識與賬號信息庫中第二應用程序的用戶賬號和登錄標識相同,則驗證通過,然后根據(jù)用戶登錄第二應用程序時的用戶賬號、第一應用程序的標識以及預設的賬號綁定關系確定用戶登錄第一應用程序時的用戶賬號。
[0060]具體地,服務器可判斷第一應用與第二應用程序之間是否存在賬號綁定關系,若存在,則確定第一應用程序的用戶賬號,其中,第一應用程序的用戶賬號與第二應用程序的用戶賬號相同。
[0061]服務器在驗證第一應用程序發(fā)送的第二應用程序的用戶賬號和登錄標識信息,以及第一應用程序和第二應用程序存在綁定關系后,可向第一應用程序返回第一應用程序的登錄標識以完成登錄。
[0062]綜上可以看出,該實施例提出了一種通過第二應用程序的登錄信息登錄第一應用程序的方式,在第二應用程序登錄后,第一應用程序可以快速使用同一個賬號登錄,減少了用戶手動登錄或者授權登錄的麻煩,同時多個應用程序使用同一個賬號有利于用戶賬號的統(tǒng)一,可減少用戶由于賬號和密碼過多而出現(xiàn)忘記賬號和密碼情況的發(fā)生。
[0063]本發(fā)明實施例的應用程序的登錄方法,接收第一應用程序的登錄請求,判斷移動終端中與第一應用程序具有賬號共享關系的第二應用程序是否已登錄,如果第二應用程序已登錄,則獲取第二應用程序的登錄信息;以及向服務器發(fā)送登錄信息進行登錄。由此,使得具有賬號共享關系的應用程序可以通過同一個賬號進行快速登錄,減少了用戶手動輸入賬號信息或者第三方授權登錄的麻煩,有利于用戶賬號的統(tǒng)一。
[0064]圖2是根據(jù)本發(fā)明一個具體實施例的應用程序的登錄方法的流程圖。該實施例以移動終端中同時安裝了同一個公司的兩個應用程序,應用程序A和應用程序B為例說明應用程序的登錄方法的具體過程。假定移動終端中的應用程序A申請注冊并登錄了用戶賬號testitest.com,且應用程序A的登錄標識為abcdefghijk。其中,需要說明的是,這兩個應用程序之間存在賬號共享關系,即這兩個應用程序使用同一個賬號系統(tǒng)。如圖2所示,該應用程序的登錄方法包括:
[0065]S201,接收用戶點擊應用程序B圖標的觸發(fā)操作,并根據(jù)觸發(fā)操作打開應用程序B。
[0066]S202,判斷移動終端中與應用程序B具有賬號共享關系的第二應用程序是否已經登錄。
[0067]具體地,可從移動終端獲取應用程序B對應的廣播事件響應配置信息,并通過移動終端的操作系統(tǒng)查詢與應用程序B的廣播事件響應配置信息相同的應用程序,通過查詢可獲得移動終端中與應用程序B的廣播事件響應配置信息相同的應用程序為應用程序A,此時,可進一步對應用程序A進行校驗,具體而言,可通過預先設定好的ADIL接口與應用程序A進行通信,并通過ADIL接口獲取應用程序A的包名和簽名信息,然后判斷應用程序A的包名是否屬于自身預存的包名集,若屬于,則進一步判斷應用程序A的簽名信息是否屬于自身預存的應用程序的簽名信息集;若應用程序A的簽名信息屬于自身預存的應用程序的簽名信息集,則判斷校驗成功,此時,可確定應用程序A即為與應用程