應用程序運行控制的方法及裝置的制造方法

            文檔序號:10612662閱讀:416來源:國知局
            應用程序運行控制的方法及裝置的制造方法
            【專利摘要】本發明提供了一種應用程序運行控制的方法,包括:反射調用與宿主應用程序具有相同包名的作為宿主應用程序附帶資源的安裝包,以加載該安裝包所實現的目標應用程序,其中,目標應用程序的所需資源與原生應用程序的所需資源一一對應;通過鉤子函數對目標應用程序的活動進程進行監控;當通過鉤子函數監測到對目標應用程序的活動進程的調用指令時,調用與目標應用程序的所需資源一一對應的原生應用程序的所需資源。本發明還提供了一種應用程序運行控制的裝置。通過執行目標應用程序的相關資源,能夠實現與執行原生應用程序的相關資源完全相同的執行結果;且目標應用程序運行在通過宿主應用程序構建的沙箱中,其安裝及運行活動均不被系統所感知。
            【專利說明】
            應用程序運行控制的方法及裝置
            技術領域
            [0001]本發明涉及計算機技術領域,具體而言,本發明涉及一種應用程序運行控制的方法,及一種應用程序運行控制的裝置。
            【背景技術】
            [0002]隨著時代的發展,各種終端設備已成為人們生活中必不可少的工具,各種功能強大的終端操作系統及終端應用程序不斷涌現,為用戶帶來了更加便捷的體驗。現有技術中,應用程序在終端設備的系統環境中僅可以唯一的形式安裝并運行,即對于一種即時通信類應用程序,在一臺終端設備中僅可以安裝并運行一個該即時通信類應用程序,用戶僅可以通過唯一的賬號登錄并對其執行相關操作。但是,隨著即時通信類應用程序的普及,越來越多的用戶希望在一臺終端設備中通過多個賬號登錄一種即時通信類應用程序以實現對不同好友信息的區分管理及交流。現有技術中,具有通過多個域賬號在不同操作系統之間的切換來實現在一臺終端設備中通過多個賬號登錄一種即時通信類應用程序的解決方案。但是,該方案需要最高系統級別的權限且基于多操作系統才可以實現,并不具有普適性。
            [0003]現有技術中,沙箱是一種按照安全策略限制程序行為的執行環境,目前已經廣泛實用于各種操作系統中。以Android為例,一些應用程序,出于實現應用程序固有功能需要之外的目的,特別是商業目的,隨意申請系統權限,獲取用戶隱私數據、執行網絡訪問、保持設備活動、發送短信行為等。輕則可能導致用戶隱私數據泄露,或者占用系統資源,重則可能通過惡意扣費、植入廣告、消耗資費、欺詐誘騙等,使用戶遭受損失。因此,通過沙箱技術提供的執行環境,由沙箱對系統的資源、權限進行管理,讓應用程序于該沙箱中運行,應用程序的訪問先經沙箱按安全策略進行審查,由此,形成一種相對于系統本身的隔離運行效果,可以有效地保護系統的安全。對于沙箱中所用到的安全策略,適應各種不同的操作系統有不同的細節考慮,這些有關技術實現的基本知識,均已為本領域技術人員所掌握,恕不贅述。
            [0004]因此,需要一種通過沙箱技術來執行目標應用程序運行的解決方案,使得運行于沙箱中目標應用程序可實現原生應用程序的全部功能及相應服務。

            【發明內容】

            [0005]為克服上述技術問題或者至少部分地解決上述技術問題,特提出以下技術方案:
            [0006]本發明的實施例提出了一種應用程序運行控制的方法,包括:
            [0007]反射調用與宿主應用程序具有相同包名的作為宿主應用程序附帶資源的安裝包,以加載該安裝包所實現的目標應用程序,其中,所述目標應用程序的所需資源與原生應用程序的所屬資源對應;
            [0008]通過鉤子函數對所述目標應用程序的活動進程進行監控;
            [0009]當通過鉤子函數監測到對目標應用程序的活動進程的調用指令時,調用與所述目標應用程序的所屬資源一一對應的所述原生應用程序的所屬資源。
            [0010]優選地,加載該安裝包所實現的目標應用程序的步驟,包括:
            [0011]通過所述宿主應用程序,來建立所述目標應用程序的所需資源與原生應用程序的所需資源的一一對應關系。
            [0012]優選地,建立所述目標應用程序的所需資源與原生應用程序的所需資源的一一對應關系,具體包括:
            [0013]解析所述安裝包以確定目標應用程序的所屬資源的資源名;
            [0014]根據目標應用程序的所屬資源的資源名,加載與原生應用程序的所需資源一一對應的資源。
            [0015]優選地,所述目標應用程序包括預留擴展項,以用于與所述原生應用程序的擴展資源相匹配。
            [0016]優選地,該方法還包括:檢測到所述原生應用程序的更新服務,基于所述目標應用程序的預留擴展項更新所述目標應用程序的所需資源。
            [0017]其中,所述宿主應用程序的資源文件和/或動態庫文件與所述安裝包中的相應文件相同。
            [0018]優選地,該方法還包括:
            [0019]通過執行所述目標應用程序的所需資源,以實現與執行所述原生應用程序的所屬資源相同的執行結果。
            [0020]其中,所述目標應用程序的所屬資源,包括以下至少任一項:[0021 ] ActivityManagerService 資源;
            [0022]PackageManagerService 資源;
            [0023]Activity 組件;
            [0024]Service 組件;
            [0025]Broadcast Receiver組件;
            [0026]Content Provider組件。
            [0027]本發明的另一實施例提出了一種應用程序運行控制的裝置,包括:
            [0028]加載模塊,用于反射調用與宿主應用程序具有相同包名的作為宿主應用程序附帶資源的安裝包,以加載該安裝包所實現的目標應用程序,其中,所述目標應用程序的所需資源與原生應用程序的所需資源一一對應;
            [0029]監控模塊,用于通過鉤子函數對所述目標應用程序的活動進程進行監控;
            [0030]調用模塊,用于當通過鉤子函數監測到對目標應用程序的活動進程的調用指令時,調用與所述目標應用程序的所需資源一一對應的所述原生應用程序的所需資源。
            [0031]優選地,所述加載模塊包括:
            [0032]建立單元,用于通過所述宿主應用程序,來建立所述目標應用程序的所需資源與原生應用程序的所需資源的一一對應關系。[0〇33]優選地,所述建立單元具體包括:
            [0034]解析子單元,用于解析所述安裝包以確定目標應用程序的所需資源的資源名;
            [0035]加載子單元,用于根據目標應用程序的所需資源的資源名,加載與原生應用程序的所需資源一一對應的資源。
            [0036]優選地,所述目標應用程序包括預留擴展項,以用于與所述原生應用程序的擴展資源相匹配。
            [0037] 優選地,該裝置還包括:
            [0038]更新模塊,用于檢測到所述原生應用程序的更新服務,基于所述目標應用程序的預留擴展項更新所述目標應用程序的所需資源。
            [0039]其中,所述宿主應用程序的資源文件和/或動態庫文件與所述安裝包中的相應文件相同。
            [0040] 優選地,還包括:[0041 ]實現模塊,用于通過執行所述目標應用程序的所需資源,以實現與執行所述原生應用程序的所需資源相同的執行結果。
            [0042]其中,所述目標應用程序的所需資源,包括以下至少任一項:
            [0043]ActivityManagerService 資源;
            [0044]PackageManagerService 資源;
            [0045]Activity 組件;
            [0046]Service 組件;
            [0047]Broadcast Receiver組件;
            [0048]Content Provider組件。
            [0049]本發明的實施例中,借助反射調用機制去加載與宿主應用程序具有相同包名的目標應用程序,由于與宿主應用程序具有相同的包名,在Android系統中,既能使活動組件和服務組件建立與ActivityManagerService的正常通信,又能使活動組件、服務組件以及廣播組件等,順利被PackageManagerService識別,降低現有技術中有關加殼應用程序運行異常的錯誤率;由于宿主應用程序與目標應用程序使用了相同的包名,不必為被反射調用的目標應用程序的各個組件(Activity,Service,Broadcast Receiver和Content Provider) 單獨構造主函數入口(ActivityThread.main),也不必考慮因包名而帶來的 PackageManagerService校驗的程序實現復雜度問題,從而大大提高程序運行效率;通過宿主應用程序中建立起原安裝包的目標應用程序與沙箱運行環境之間的通信,使得目標應用程序的活動過程可以進一步被沙箱運行環境監視,從而對其適用安全策略,并通過在宿主應用程序中建立目標應用程序的所需資源與原生應用程序的所需資源一一對應,可在宿主應用程序中通過鉤子函數調用目標應用程序的所需的對應資源,確保目標應用程序能被宿主應用程序正常加載并保持安全運行,且實現了目標應用程序完全獨立于原生應用程序。
            [0050]本發明中,通過執行目標應用程序的相關資源,能夠實現與執行原生應用程序的相關資源完全相同的執行結果;且目標應用程序運行在通過宿主應用程序構建的沙箱中, 其安裝及運行活動均不被系統所感知,從而可以解決現有技術中,對于一種即時通信類應用程序,在一臺終端設備中僅可以安裝并運行一個該即時通信類應用程序,同時,用戶僅可以通過唯一的賬號登錄并對其執行相關操作的瓶頸。實現了用戶希望在一臺終端設備中通過多個賬號登錄一種即時通信類應用程序以實現對不同好友信息的區分管理及交流的實際應用目的。
            [0051]本發明附加的方面和優點將在下面的描述中部分給出,這些將從下面的描述中變得明顯,或通過本發明的實踐了解到。【附圖說明】
            [0052]本發明上述的和/或附加的方面和優點從下面結合附圖對實施例的描述中將變得明顯和容易理解,其中:
            [0053]圖1為本發明中一個實施例的應用程序運行控制的方法的流程圖;
            [0054]圖2為本發明中另一實施例的應用程序運行控制的裝置的結構示意圖。【具體實施方式】
            [0055]下面詳細描述本發明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本發明,而不能解釋為對本發明的限制。
            [0056]本技術領域技術人員可以理解,除非特意聲明,這里使用的單數形式“一”、“一個”、“所述”和“該”也可包括復數形式。應該進一步理解的是,本發明的說明書中使用的措辭“包括”是指存在所述特征、整數、步驟、操作、元件和/或組件,但是并不排除存在或添加一個或多個其他特征、整數、步驟、操作、元件、組件和/或它們的組。應該理解,當我們稱元件被“連接”或“耦接”到另一元件時,它可以直接連接或耦接到其他元件,或者也可以存在中間元件。此外,這里使用的“連接”或“親接”可以包括無線連接或無線耦接。這里使用的措辭“和/或”包括一個或更多個相關聯的列出項的全部或任一單元和全部組合。[〇〇57]本技術領域技術人員可以理解,除非另外定義,這里使用的所有術語(包括技術術語和科學術語),具有與本發明所屬領域中的普通技術人員的一般理解相同的意義。還應該理解的是,諸如通用字典中定義的那些術語,應該被理解為具有與現有技術的上下文中的意義一致的意義,并且除非像這里一樣被特定定義,否則不會用理想化或過于正式的含義來解釋。
            [0058]本發明以下即將描述的一種應用程序運行控制方法和裝置所實施的應用場景,是安裝在移動終端上的基于Android操作系統的運行環境。[〇〇59]本領域技術人員應當知曉,本發明是基于免Root提權而提出的,然而,提權操作只是Andro i d系統所實施的權限管理控制,本發明也當然地適用于已經Root提權的Andro i d操作系統中。
            [0060]本發明是基于沙箱原理而提出的,故而,本領域技術人員得以結合公知的沙箱實現原理來理解本發明的實施。沙箱的作用是為目標應用程序的提供相對封閉的運行環境, 使應用程序對系統的資源訪問,借助沙箱安全策略的應用,而被限制在規定的范圍之內。因而,本發明的實質在于提供一種沙箱實例,從兩個方面來實現,第一方面是提供構造目標應用程序的解決方案,第二方面是提供與前者相應的運行控制方案。這兩個方面可以被集成到一個沙箱實現軟件中,利用其第一方面的實現對目標應用程序進行加工,進而利用其第二方面的實現,為目標應用程序提供安全的沙箱運行環境。
            [0061]有鑒于此,本發明的應用程序運行控制的方法,主要體現沙箱實例的第一方面,用于加工適配于相應的沙箱運行環境的目標應用程序。
            [0062]圖1為本發明中一個實施例的應用程序運行控制的方法的流程圖。
            [0063]其中,在發明的實施例中,目標應用程序為本發明需要實現的應用程序,實現的目標應用程序需要具有原生應用程序的全部功能,能夠提供與原生應用程序完全相同的服務。宿主應用程序是實現目標應用程序的加殼應用程序,通過宿主應用程序完成目標應用程序的安裝與運行。
            [0064]步驟S110:反射調用與宿主應用程序具有相同包名的作為宿主應用程序附帶資源的安裝包,以加載該安裝包所實現的目標應用程序,其中,目標應用程序的所需資源與原生應用程序的所需資源一一對應;步驟S120:通過鉤子函數對目標應用程序的活動進程進行監控;步驟S130:當通過鉤子函數監測到對目標應用程序的活動進程的調用指令時,調用與目標應用程序的所需資源一一對應的原生應用程序的所需資源。
            [0065]本發明的實施例中,借助反射調用機制去加載與宿主應用程序具有相同包名的目標應用程序,由于與宿主應用程序具有相同的包名,在Android系統中,既能使活動組件和服務組件建立與ActivityManagerService的正常通信,又能使活動組件、服務組件以及廣播組件等,順利被PackageManagerService識別,降低現有技術中有關加殼應用程序運行異常的錯誤率;由于宿主應用程序與目標應用程序使用了相同的包名,不必為被反射調用的目標應用程序的各個組件(Activity,Service,BroadcastReceiver和Content Provider) 單獨構造主函數入口(ActivityThread.main),也不必考慮因包名而帶來的 PackageManagerService校驗的程序實現復雜度問題,從而大大提高程序運行效率;通過宿主應用程序中建立起原安裝包的目標應用程序與沙箱運行環境之間的通信,使得目標應用程序的活動過程可以進一步被沙箱運行環境監視,從而對其適用安全策略,并通過在宿主應用程序中建立目標應用程序的所需資源與原生應用程序的所需資源一一對應,可在宿主應用程序中通過鉤子函數調用目標應用程序的所需的對應資源,確保目標應用程序能被宿主應用程序正常加載并保持安全運行,且實現了目標應用程序完全獨立于原生應用程序。
            [0066]本發明中,通過執行目標應用程序的相關資源,能夠實現與執行原生應用程序的相關資源完全相同的執行結果;且目標應用程序運行在通過宿主應用程序構建的沙箱中, 其安裝及運行活動均不被系統所感知,從而可以解決現有技術中,對于一種即時通信類應用程序,在一臺終端設備中僅可以安裝并運行一個該即時通信類應用程序,同時,用戶僅可以通過唯一的賬號登錄并對其執行相關操作的瓶頸。實現了用戶希望在一臺終端設備中通過多個賬號登錄一種即時通信類應用程序以實現對不同好友信息的區分管理及交流的實際應用目的。
            [0067]步驟S110:反射調用與宿主應用程序具有相同包名的作為宿主應用程序附帶資源的安裝包,以加載該安裝包所實現的目標應用程序,其中,目標應用程序的所需資源與原生應用程序的所需資源一一對應。
            [0068]其中,目標應用程序的所需資源,包括但不限于:
            [0069]ActivityManagerService 資源;
            [0070]PackageManagerService 資源;
            [0071]Activity 組件;
            [0072]Service 組件;
            [0073]Broadcast Receiver組件;
            [0074]Content Provider組件。
            [0075]其中,宿主應用程序的資源文件和/或動態庫文件與安裝包中的相應文件相同。
            [0076]具體地,通過反射機制調用與宿主應用程序具有相同包名的作為宿主應用程序附帶資源的安裝包,隨后加載該安裝包所實現的目標應用程序,并將目標應用程序的所需全部資源與原生應用程序的所需全部資源一一對應。[〇〇77]Android操作系統有其不同于其他操作系統的原理,Android為開發者提供四大組件,具體指Activity、Service、Broadcast Receiver以及Content Provider等組件。 Android應用程序以APK安裝包的形式提供給用戶進行安裝,APK安裝包中,具有用于封裝實現各個組件的程序代碼的classes, dex代碼文件以及用于表達應用程序所用的各個組件的注冊信息以及權限申請信息等內容的Androidmanifest.xml配置文件。由于應用程序的安裝過程就是 PackageManager Serv i ce (PMS)解析 Andro i dman i f e s t ? xml 文件的過程,而本發明中應用程序安裝包沒有安裝在本地,因此無法得到應用程序的相關屬性信息,但只有獲取如Activity組件、Service組件、Broadcast Receiver組件、ContentProvider組件等信息時,才能通過ActivityManagerService(AMS)正常運行應用程序。
            [0078]本實施例所采用的反射機制可以為Java反射機制,Java反射機制是在運行狀態中,對于任意一個類,都能夠知道這個類的所有屬性和方法;對于任意一個對象,都能夠調用它的任意一個方法;這種動態獲取信息以及動態調用對象的方法的功能即為JAVA語言的反射機制。[0〇79]通過反射機制,調用AssetManager中的addAssetPath方法,將宿主應用程序安裝文件中的資源加載到Resource中,通過Resource對象調用宿主應用程序安裝文件中的資源。在獲取宿主應用程序安裝文件資源之前,首先要由宿主程序新建DexClassLoader加載宿主應用程序安裝包,然后新建AssetManager加載宿主應用程序安裝文件的資源,最后通過Resource對象讀取宿主應用程序安裝文件的資源。
            [0080]優選地,加載該安裝包所實現的目標應用程序的步驟包括步驟S111 (圖中未示出)。步驟S111(圖中未示出):通過宿主應用程序,來建立目標應用程序的所需資源與原生應用程序的所需資源的一一對應關系。[0081 ]例如,終端設備的操作系統為Android系統,目標應用程序為Appl’,該目標應用程序欲實現原生應用程序Appl的全部功能與相應服務;在終端設備的宿主應用程序中, “Appl’.apk”為宿主應用程序附帶資源的安裝包,通過Java反射機制調用安裝包“Appl’.apk”,隨后加載“Appl’.apk”所實現的目標應用程序Appl’,在宿主應用程序中加載 “ A p p 1 ’.a p k”的過程中,創建目標應用程序A p p 1 ’的所需全部資源如 Act ivityManagerService資源、PackageManagerService資源、Activity組件、Service 組件、Broadcast Receiver組件和Content Provider組件,其中,目標應用程序Appl’的所需全部資源如Act ivityManagerService資源、PackageManagerService資源、Activity組件、Service組件、Broadcast Receiver組件和Content Provider組件-對應且相同于原生應用程序即在終端設備Andro id操作系統中運行的Appl的所需全部資源如 Act ivityManagerService資源、PackageManagerService資源、Activity組件、Service 組件、Broadcast Receiver組件和Content Provider組件。
            [0082]優選地,建立目標應用程序的所需資源與原生應用程序的所需資源的一一對應關系的步驟具體包括步驟S112(圖中未示出)和步驟S113(圖中未示出)。步驟S112:解析安裝包以確定目標應用程序的所需資源的資源名;步驟S113:根據目標應用程序的所需資源的資源名,加載與原生應用程序的所需資源一一對應的資源。
            [0083]解析應用程序的原安裝包的手段,為本領域技術人員所熟知。安裝包APK文件本質上是利用ZIP壓縮技術結合簽名技術實現的壓縮包,因此,一方面可以通過解壓技術釋放其內部文件,另一方面還可通過Apktool之類的工具軟件獲取其內部文件(在這種情況下其代碼文件會被反向為.smali文件)。本領域技術人員均能嫻熟地利用這些公知技術在一個給定目錄中對原安裝包進行處理,從而通過內存操作(非文件操作)的方式來獲得其中的內部文件。
            [0084]Android應用程序在運行的過程中,是通過一個稱為AssetsManager資源管理器來讀取打包在APK文件里面的資源文件的。應用程序的每一個Activity組件都關聯一個 Context Imp 1對象,這個Context Imp 1對象就是用來描述Activity組件的運行上下文環境的。調用這個Contextlmpl對象的成員函數init來執行初始化Activity組件運行上下文環境的工作,其中就包括創建用來訪問應用程序資源的Resources對象和AssetsManager對象的工作。其中,Context Imp 1 ? ini t 函數就定義在文件frameworks/base/core/java/ android/app/Contextlmpl ? java中。ContextImpl ? init函數中的參數packagelnfo指向的是一個loadedApk對象,這個loadedApk對象描述的是當前正在啟動組件所屬的Apk。用來訪問應用程序資源的Resources對象是通過調用參數package Info所指向的是一個loadedApk 對象的成員函數getResources來創建的。由此可知,可創建Resources對象,以提取或訪問應用程序資源。[〇〇85]例如,解析安裝包“Appl’.apk”以確定目標應用程序Appl’的所需全部資源的資源名,如ActivityManagerService、PackageManagerService、Activity、Service、Broadcast Receiver和Content Provider,隨后在宿主應用程序中創建原生應用程序Appl的所需全部資源-----對應的資源如Act ivityManagerSer vice資源、PackageManagerSer vice資源、Activity組件、Service組件、Broadcast Receiver組件和Content Provider組件。
            [0086]優選地,目標應用程序包括預留擴展項,以用于與原生應用程序的擴展資源相匹配。
            [0087]具體地,在宿主應用程序中加載目標應用程序Appl’的過程中,同時加載目標應用程序Appl’的預留擴展項,以用于與原生應用程序Appl的擴展資源相匹配。
            [0088]例如,在宿主應用程序中加載目標應用程序Appl’的過程中,同時加載目標應用程序Appl’的預留擴展項,當原生應用程序Appl發生更新時,如增加了用戶界面布局的XML文件“1 ay out.xml”,可在目標應用程序App 1’的預留擴展項里創建對應的用戶界面布局的XML 文件 “layout ? xml”。[〇〇89]步驟S120:通過鉤子函數對目標應用程序的活動進程進行監控。
            [0090]這里需要補充的是:術語“鉤子”涵蓋了用于通過攔截在軟件組件之間傳遞的函數調用、消息、或事件來改變或增加操作系統、應用程序、或其他軟件組件的行為的技術。而處理這種被攔截的函數調用、事件或消息的代碼就被稱為鉤子hook函數。鉤子通常用于各種目標,包括對功能進行調試和對功能進行擴展。其示例可以包括在鍵盤或鼠標事件傳遞到應用程序之前攔截它們,或者攔截系統調用(system call)、或者系統函數行為、函數執行結果等,以監視或修改應用程序或其他組件的功能等等。本實施例即可采用鉤子hook函數接管所述應用程序運行時所需的安裝自校驗操作。[0091 ]作為一個沙箱實例,使目標應用程序運行于沙箱運行環境中,監控目標應用程序的活動進程是沙箱運行環境的核心實現者,負責實現一下的功能:通過監控目標應用程序對資源的訪問,使目標應用程序進程能夠實現對對應資源的正常調用。例如,上述有關對目標應用程序Appl’的安裝包的資源進行的調用,可以通過監控具體調用資源的具體調用指令,利用Hook技術來實現。可將通過鉤子函數對目標應用程序的活動進程進行監控的方式注冊為服務進程,以鉤子函數關聯目標應用程序Appl’活動進程的調用指令以實現對目標應用程序Appl’的活動監控。[〇〇92] 步驟S130:當通過鉤子函數監測到對目標應用程序的活動進程的調用指令時,調用與目標應用程序的所需資源一一對應的原生應用程序的所需資源。
            [0093]例如,利用鉤子函數對相關調用指令的入口點進行監視,截獲此一調用指令,并獲取目標應用程序Appl’訪問的資源的名稱,如鉤子函數獲取到目標應用程序Appl’訪問的資源為ActivityManagerService,隨后轉向執行相應的鉤子函數,由該鉤子函數調用與原生應用程序對應的ActivityManagerService資源。[〇〇94]在一優選實施例中,該方法還包括步驟S140(圖中未示出)。步驟S140:檢測到原生應用程序的更新服務,基于目標應用程序的預留擴展項更新目標應用程序的所需資源。
            [0095]例如,當宿主應用程序檢測到原生應用程序Appl的更新服務時,如更新服務中包括增加了用戶界面布局的XML文件“layout.xml”,在目標應用程序Appl’的預留擴展項里創建對應的用戶界面布局的XML文件“layout.xml”,實現對目標應用程序Appl’的相應更新。 [〇〇96] 在一優選實施例中,該方法還包括S150 (圖中未示出)。步驟S150:通過執行目標應用程序的所需資源,以實現與執行原生應用程序的所需資源相同的執行結果。
            [0097]例如,通過執行原生應用程序A p p 1所需終端設備A n d r 〇 i d系統的 ActivityManagerService資源可激活啟動原生應用程序Appl,在宿主應用程序中,通過執行目標應用程序Appl’所需的宿主應用程序中的ActivityManagerService資源可激活啟動目標應用程序Appl’。
            [0098]在本優選實施例中,通過執行目標應用程序的相關資源,能夠實現與執行原生應用程序的相關資源完全相同的執行結果;且目標應用程序運行在通過宿主應用程序構建的沙箱中,其安裝及運行活動均不被系統所感知,從而可以解決現有技術中,對于一種即時通信類應用程序,在一臺終端設備中僅可以安裝并運行一個該即時通信類應用程序,同時, 用戶僅可以通過唯一的賬號登錄并對其執行相關操作的瓶頸。實現了用戶希望在一臺終端設備中通過多個賬號登錄一種即時通信類應用程序以實現對不同好友信息的區分管理及交流的實際應用目的。
            [0099]圖2為本發明中另一實施例的應用程序運行控制的裝置的結構示意圖。
            [0100]其中,在發明的實施例中,目標應用程序為本發明需要實現的應用程序,實現的目標應用程序需要具有原生應用程序的全部功能,能夠提供與原生應用程序完全相同的服務。宿主應用程序是實現目標應用程序的加殼應用程序,通過宿主應用程序完成目標應用程序的安裝與運行。[〇1〇1]加載模塊210反射調用與宿主應用程序具有相同包名的作為宿主應用程序附帶資源的安裝包,以加載該安裝包所實現的目標應用程序,其中,目標應用程序的所需資源與原生應用程序的所需資源一一對應;監控模塊220通過鉤子函數對目標應用程序的活動進程進行監控;調用模塊230當通過鉤子函數監測到對目標應用程序的活動進程的調用指令時, 調用與目標應用程序的所需資源一一對應的原生應用程序的所需資源。
            [0102]加載模塊210反射調用與宿主應用程序具有相同包名的作為宿主應用程序附帶資源的安裝包,以加載該安裝包所實現的目標應用程序,其中,目標應用程序的所需資源與原生應用程序的所需資源一一對應。
            [0103]其中,目標應用程序的所需資源,包括但不限于:
            [0104]ActivityManagerService 資源;
            [0105]PackageManagerService 資源;
            [0106]Activity 組件;
            [0107]Service 組件;
            [0108]Broadcast Receiver組件;
            [0109]Content Provider組件。
            [0110]其中,宿主應用程序的資源文件和/或動態庫文件與安裝包中的相應文件相同。
            [0111]具體地,通過反射機制調用與宿主應用程序具有相同包名的作為宿主應用程序附帶資源的安裝包,隨后加載該安裝包所實現的目標應用程序,并將目標應用程序的所需全部資源與原生應用程序的所需全部資源一一對應。
            [0112]Android操作系統有其不同于其他操作系統的原理,Android為開發者提供四大組件,具體指Activity、Service、Broadcast Receiver以及Content Provider等組件。 Android應用程序以APK安裝包的形式提供給用戶進行安裝,APK安裝包中,具有用于封裝實現各個組件的程序代碼的classes, dex代碼文件以及用于表達應用程序所用的各個組件的注冊信息以及權限申請信息等內容的Androidmanifest.xml配置文件。由于應用程序的安裝過程就是 PackageManagerService(PMS)解析 Androidmanifest.xml 文件的過程,而本發明中應用程序安裝包沒有安裝在本地,因此無法得到應用程序的相關屬性信息,但只有獲取如Activity組件、Service組件、Broadcast Receiver組件、ContentProvider組件等信息時,才能通過ActivityManagerService(AMS)正常運行應用程序。[〇113]本實施例所采用的反射機制可以為Java反射機制,Java反射機制是在運行狀態中,對于任意一個類,都能夠知道這個類的所有屬性和方法;對于任意一個對象,都能夠調用它的任意一個方法;這種動態獲取信息以及動態調用對象的方法的功能即為JAVA語言的反射機制。[〇114]通過反射機制,調用AssetManager中的addAssetPath方法,將宿主應用程序安裝文件中的資源加載到Resource中,通過Resource對象調用宿主應用程序安裝文件中的資源。在獲取宿主應用程序安裝文件資源之前,首先要由宿主程序新建DexClassLoader加載宿主應用程序安裝包,然后新建AssetManager加載宿主應用程序安裝文件的資源,最后通過Resource對象讀取宿主應用程序安裝文件的資源。
            [0115]優選地,加載模塊210包括建立單元(圖中未示出);建立單元通過所述宿主應用程序,來建立所述目標應用程序的所需資源與原生應用程序的所需資源的一一對應關系。 [〇116]例如,終端設備的操作系統為Android系統,目標應用程序為Appl’,該目標應用程序欲實現原生應用程序Appl的全部功能與相應服務;在終端設備的宿主應用程序中, “Appl’.apk”為宿主應用程序附帶資源的安裝包,通過Java反射機制調用安裝包“Appl’.3?1^,隨后加載1??1’.&?1^所實現的目標應用程序4??1’,在宿主應用程序中加載 “ A p p 1 ’.a p k”的過程中,創建目標應用程序A p p 1 ’的所需全部資源如 Act ivityManagerService資源、PackageManagerService資源、Activity組件、Service 組件、Broadcast Receiver組件和Content Provider組件,其中,目標應用程序Appl’的所需全部資源如Act ivityManagerService資源、PackageManagerService資源、Activity組件、Service組件、Broadcast Receiver組件和Content Provider組件-對應且相同于原生應用程序即在終端設備Android操作系統中運行的Appl的所需全部資源如 Act ivityManagerService資源、PackageManagerService資源、Activity組件、Service 組件、Broadcast Receiver組件和Content Provider組件。[〇117]優選地,建立單元具體包括解析子單元(圖中未示出)和加載子單元(圖中未示出)。解析子單元:解析安裝包以確定目標應用程序的所需資源的資源名;加載子單元:根據目標應用程序的所需資源的資源名,加載與原生應用程序的所需資源一一對應的資源。
            [0118]解析應用程序的原安裝包的手段,為本領域技術人員所熟知。安裝包APK文件本質上是利用ZIP壓縮技術結合簽名技術實現的壓縮包,因此,一方面可以通過解壓技術釋放其內部文件,另一方面還可通過Apktool之類的工具軟件獲取其內部文件(在這種情況下其代碼文件會被反向為.smali文件)。本領域技術人員均能嫻熟地利用這些公知技術在一個給定目錄中對原安裝包進行處理,從而通過內存操作(非文件操作)的方式來獲得其中的內部文件。[〇119] Android應用程序在運行的過程中,是通過一個稱為AssetsManager資源管理器來讀取打包在APK文件里面的資源文件的。應用程序的每一個Activity組件都關聯一個 Context Imp 1對象,這個Context Imp 1對象就是用來描述Activity組件的運行上下文環境的。調用這個Contextlmpl對象的成員函數init來執行初始化Activity組件運行上下文環境的工作,其中就包括創建用來訪問應用程序資源的Resources對象和AssetsManager對象的工作。其中,Contextlmpl.1nit 函數就定義在文件frameworks/base/core/ java/ android/app/Contextlmpl ? java中。ContextImpl ? init函數中的參數packagelnfo指向的是一個loadedApk對象,這個loadedApk對象描述的是當前正在啟動組件所屬的Apk。用來訪問應用程序資源的Resources對象是通過調用參數package Info所指向的是一個loadedApk 對象的成員函數getResources來創建的。由此可知,可創建Resources對象,以提取或訪問應用程序資源。[〇12〇]例如,解析安裝包“Appl’.apk”以確定目標應用程序Appl’的所需全部資源的資源名,如ActivityManagerService、PackageManagerService、Activity、Service、Broadcast Receiver和Content Provider,隨后在宿主應用程序中創建原生應用程序Appl的所需全部資源-----對應的資源如Act ivi tyManagerService資源、PackageManagerService資源、Activity組件、Service組件、Broadcast Receiver組件和Content Provider組件。
            [0121]優選地,目標應用程序包括預留擴展項,以用于與原生應用程序的擴展資源相匹配。
            [0122]具體地,在宿主應用程序中加載目標應用程序Appl’的過程中,同時加載目標應用程序Appl’的預留擴展項,以用于與原生應用程序Appl的擴展資源相匹配。
            [0123]例如,在宿主應用程序中加載目標應用程序Appl’的過程中,同時加載目標應用程序Appl’的預留擴展項,當原生應用程序Appl發生更新時,如增加了用戶界面布局的XML文件“1 ay out.xml”,可在目標應用程序App 1’的預留擴展項里創建對應的用戶界面布局的XML 文件 “layout ? xml”。
            [0124]監控模塊220通過鉤子函數對目標應用程序的活動進程進行監控。
            [0125]這里需要補充的是:術語“鉤子”涵蓋了用于通過攔截在軟件組件之間傳遞的函數調用、消息、或事件來改變或增加操作系統、應用程序、或其他軟件組件的行為的技術。而處理這種被攔截的函數調用、事件或消息的代碼就被稱為鉤子hook函數。鉤子通常用于各種目標,包括對功能進行調試和對功能進行擴展。其示例可以包括在鍵盤或鼠標事件傳遞到應用程序之前攔截它們,或者攔截系統調用(system call)、或者系統函數行為、函數執行結果等,以監視或修改應用程序或其他組件的功能等等。本實施例即可采用鉤子hook函數接管所述應用程序運行時所需的安裝自校驗操作。
            [0126]作為一個沙箱實例,使目標應用程序運行于沙箱運行環境中,監控目標應用程序的活動進程是沙箱運行環境的核心實現者,負責實現一下的功能:通過監控目標應用程序對資源的訪問,使目標應用程序進程能夠實現對對應資源的正常調用。例如,上述有關對目標應用程序Appl’的安裝包的資源進行的調用,可以通過監控具體調用資源的具體調用指令,利用Hook技術來實現。可將通過鉤子函數對目標應用程序的活動進程進行監控的方式注冊為服務進程,以鉤子函數關聯目標應用程序Appl’活動進程的調用指令以實現對目標應用程序Appl’的活動監控。
            [0127]調用模塊230當通過鉤子函數監測到對目標應用程序的活動進程的調用指令時, 調用與目標應用程序的所需資源一一對應的原生應用程序的所需資源。
            [0128]例如,利用鉤子函數對相關調用指令的入口點進行監視,截獲此一調用指令,并獲取目標應用程序Appl’訪問的資源的名稱,如鉤子函數獲取到目標應用程序Appl’訪問的資源為ActivityManagerService,隨后轉向執行相應的鉤子函數,由該鉤子函數調用與原生應用程序對應的ActivityManagerService資源。
            [0129]在一優選實施例中,該裝置還包括更新模塊(圖中未示出)。更新模塊檢測到原生應用程序的更新服務,基于目標應用程序的預留擴展項更新目標應用程序的所需資源。
            [0130]例如,當宿主應用程序檢測到原生應用程序Appl的更新服務時,如更新服務中包括增加了用戶界面布局的XML文件“layout.xml”,在目標應用程序Appl’的預留擴展項里創建對應的用戶界面布局的XML文件“layout.xml”,實現對目標應用程序Appl’的相應更新。
            [0131]在一優選實施例中,該裝置還包括實現模塊(圖中未示出)。實現模塊通過執行目標應用程序的所需資源,以實現與執行原生應用程序的所需資源相同的執行結果。
            [0132]例如,通過執行原生應用程序A p p 1所需終端設備A n d r 〇 i d系統的 ActivityManagerService資源可激活啟動原生應用程序Appl,在宿主應用程序中,通過執行目標應用程序Appl’所需的宿主應用程序中的ActivityManagerService資源可激活啟動目標應用程序Appl’。
            [0133]在本優選實施例中,通過執行目標應用程序的相關資源,能夠實現與執行原生應用程序的相關資源完全相同的執行結果;且目標應用程序運行在通過宿主應用程序構建的沙箱中,其安裝及運行活動均不被系統所感知,從而可以解決現有技術中,對于一種即時通信類應用程序,在一臺終端設備中僅可以安裝并運行一個該即時通信類應用程序,同時,用戶僅可以通過唯一的賬號登錄并對其執行相關操作的瓶頸。實現了用戶希望在一臺終端設備中通過多個賬號登錄一種即時通信類應用程序以實現對不同好友信息的區分管理及交流的實際應用目的。
            [0134]本技術領域技術人員可以理解,本發明包括涉及用于執行本申請中所述操作中的一項或多項的設備。這些設備可以為所需的目的而專門設計和制造,或者也可以包括通用計算機中的已知設備。這些設備具有存儲在其內的計算機程序,這些計算機程序選擇性地激活或重構。這樣的計算機程序可以被存儲在設備(例如,計算機)可讀介質中或者存儲在適于存儲電子指令并分別耦聯到總線的任何類型的介質中,所述計算機可讀介質包括但不限于任何類型的盤(包括軟盤、硬盤、光盤、CD-ROM、和磁光盤)、R0M( Read-Only Memory,只讀存儲器)、RAM(Random Access Memory,隨即存儲器)、EPROM(Erasable Programmable Read-Only Memory,可擦寫可編程只讀存儲器)、EEPROM(Electrically Erasable Programmable Read-Only Memory,電可擦可編程只讀存儲器)、閃存、磁性卡片或光線卡片。也就是,可讀介質包括由設備(例如,計算機)以能夠讀的形式存儲或傳輸信息的任何介質。
            [0135]本技術領域技術人員可以理解,可以用計算機程序指令來實現這些結構圖和/或框圖和/或流圖中的每個框以及這些結構圖和/或框圖和/或流圖中的框的組合。本技術領域技術人員可以理解,可以將這些計算機程序指令提供給通用計算機、專業計算機或其他可編程數據處理方法的處理器來實現,從而通過計算機或其他可編程數據處理方法的處理器來執行本發明公開的結構圖和/或框圖和/或流圖的框或多個框中指定的方案。
            [0136]本技術領域技術人員可以理解,本發明中已經討論過的各種操作、方法、流程中的步驟、措施、方案可以被交替、更改、組合或刪除。進一步地,具有本發明中已經討論過的各種操作、方法、流程中的其他步驟、措施、方案也可以被交替、更改、重排、分解、組合或刪除。 進一步地,現有技術中的具有與本發明中公開的各種操作、方法、流程中的步驟、措施、方案也可以被交替、更改、重排、分解、組合或刪除。
            [0137]以上所述僅是本發明的部分實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發明的保護范圍。
            【主權項】
            1.一種應用程序運行控制的方法,其特征在于,包括: 反射調用與宿主應用程序具有相同包名的作為宿主應用程序附帶資源的安裝包,以加載該安裝包所實現的目標應用程序,其中,所述目標應用程序的所需資源與原生應用程序的所屬資源—對應; 通過鉤子函數對所述目標應用程序的活動進程進行監控; 當通過鉤子函數監測到對目標應用程序的活動進程的調用指令時,調用與所述目標應用程序的所屬資源一一對應的所述原生應用程序的所屬資源。2.根據權利要求1所述應用程序運行控制的方法,其中,加載該安裝包所實現的目標應用程序的步驟,包括: 通過所述宿主應用程序,來建立所述目標應用程序的所需資源與原生應用程序的所需資源的 對應關系。3.根據權利要求2所述的應用程序運行控制的方法,其中,建立所述目標應用程序的所需資源與原生應用程序的所需資源的一一對應關系,具體包括: 解析所述安裝包以確定目標應用程序的所屬資源的資源名; 根據目標應用程序的所屬資源的資源名,加載與原生應用程序的所需資源一一對應的資源。4.根據權利要求1所述的應用程序運行控制的方法,所述目標應用程序包括預留擴展項,以用于與所述原生應用程序的擴展資源相匹配。5.根據權利要求4所述的應用程序運行控制的方法,該方法還包括: 檢測到所述原生應用程序的更新服務,基于所述目標應用程序的預留擴展項更新所述目標應用程序的所需資源。6.一種應用程序運行控制的裝置,其特征在于,包括: 加載模塊,用于反射調用與宿主應用程序具有相同包名的作為宿主應用程序附帶資源的安裝包,以加載該安裝包所實現的目標應用程序,其中,所述目標應用程序的所需資源與原生應用程序的所需資源一一對應; 監控模塊,用于通過鉤子函數對所述目標應用程序的活動進程進行監控; 調用模塊,用于當通過鉤子函數監測到對目標應用程序的活動進程的調用指令時,調用與所述目標應用程序的所需資源一一對應的所述原生應用程序的所需資源。7.根據權利要求6所述應用程序運行控制的裝置,其中,所述加載模塊包括: 建立單元,用于通過所述宿主應用程序,來建立所述目標應用程序的所需資源與原生應用程序的所需資源的一一對應關系。8.根據權利要求7所述的應用程序運行控制的裝置,其中,所述建立單元具體包括: 解析子單元,用于解析所述安裝包以確定目標應用程序的所需資源的資源名; 加載子單元,用于根據目標應用程序的所需資源的資源名,加載與原生應用程序的所需資源一一對應的資源。9.根據權利要求6所述的應用程序運行控制的裝置,所述目標應用程序包括預留擴展項,以用于與所述原生應用程序的擴展資源相匹配。10.根據權利要求9所述的應用程序運行控制的裝置,該裝置還包括: 更新模塊,用于檢測到所述原生應用程序的更新服務,基于所述目標應用程序的預留擴展項更新所述目標應用程序的所需資源。
            【文檔編號】G06F21/53GK105975333SQ201510993178
            【公開日】2016年9月28日
            【申請日】2015年12月24日
            【發明人】劉剛
            【申請人】北京奇虎科技有限公司, 奇智軟件(北京)有限公司
            網友詢問留言 已有0條留言
            • 還沒有人留言評論。精彩留言會獲得點贊!
            1
            婷婷六月激情在线综合激情,亚洲国产大片,久久中文字幕综合婷婷,精品久久久久久中文字幕,亚洲一区二区三区高清不卡,99国产精品热久久久久久夜夜嗨 ,欧美日韩亚洲综合在线一区二区,99国产精品电影,伊人精品线视天天综合,精品伊人久久久大香线蕉欧美
            亚洲精品1区 国产成人一级 91精品国产欧美一区二区 亚洲精品乱码久久久久久下载 国产精品久久久久久久伊一 九色国产 国产精品九九视频 伊人久久成人爱综合网 欧美日韩亚洲区久久综合 欧美日本一道免费一区三区 夜夜爽一区二区三区精品 欧美日韩高清一区二区三区 国产成人av在线 国产精品对白交换绿帽视频 国产视频亚洲 国产在线欧美精品 国产精品综合网 国产日韩精品欧美一区色 国产日韩精品欧美一区喷 欧美日韩在线观看区一二 国产区精品 欧美视频日韩视频 中文字幕天天躁日日躁狠狠躁97 视频一二三区 欧美高清在线精品一区二区不卡 国产精品揄拍一区二区久久 99久久综合狠狠综合久久aⅴ 亚洲乱码视频在线观看 日韩在线第二页 亚洲精品无码专区在线播放 成人亚洲网站www在线观看 欧美三级一区二区 99久久精品免费看国产高清 91麻豆国产在线观看 最新日韩欧美不卡一二三区 成人在线观看不卡 日韩国产在线 在线亚洲精品 亚洲午夜久久久久中文字幕 国产精品成人久久久久久久 精品国产一区二区在线观看 欧美精品国产一区二区三区 中文在线播放 亚洲第一页在线视频 国产午夜精品福利久久 九色国产 精品国产九九 国产永久视频 久久精品人人做人人综合试看 国产一区二区三区免费观看 亚洲精品国产电影 9999热视频 国产精品资源在线 麻豆久久婷婷国产综合五月 国产精品免费一级在线观看 亚洲国产一区二区三区青草影视 中文在线播放 国产成人综合在线 国产在线观看色 国产亚洲三级 国产片一区二区三区 久久99精品久久久久久牛牛影视 亚洲欧美日韩国产 四虎永久免费网站 国产一毛片 国产精品视频在 九九热在线精品 99精品福利视频 色婷婷色99国产综合精品 97成人精品视频在线播放 精品久久久久久中文字幕 亚洲欧美一区二区三区孕妇 亚洲欧美成人网 日韩高清在线二区 国产尤物在线观看 在线不卡一区二区 91网站在线看 韩国精品福利一区二区 欧美日韩国产成人精品 99热精品久久 国产精品免费视频一区 高清视频一区 精品九九久久 欧美日韩在线观看免费 91欧美激情一区二区三区成人 99福利视频 亚洲国产精品91 久热国产在线 精品久久久久久中文字幕女 国产精品久久久久久久久99热 成人自拍视频网 国产精品视频久久久久久 久久影院国产 国产玖玖在线观看 99精品在线免费 亚洲欧美一区二区三区导航 久久久久久久综合 国产欧美日韩精品高清二区综合区 国产精品视频自拍 亚洲一级片免费 久久久久久九九 国产欧美自拍视频 视频一区二区在线观看 欧美日韩一区二区三区久久 中文在线亚洲 伊人热人久久中文字幕 日韩欧美亚洲国产一区二区三区 欧美亚洲国产成人高清在线 欧美日韩国产码高清综合人成 国产性大片免费播放网站 亚洲午夜综合网 91精品久久一区二区三区 国产无套在线播放 国产精品视频网站 国产成人亚洲精品老王 91在线网站 国产视频97 欧美黑人欧美精品刺激 国产一区二区三区免费在线视频 久久久国产精品免费看 99re6久精品国产首页 久久精品91 国产成人一级 国产成人精品曰本亚洲 日本福利在线观看 伊人成综合网 久久综合一本 国产综合久久久久久 久久精品成人免费看 久久福利 91精品国产91久久久久久麻豆 亚洲精品成人在线 亚洲伊人久久精品 欧美日本二区 国产永久视频 国产一区二 一区二区福利 国产一毛片 亚洲精品1区 毛片一区二区三区 伊人久久大香线蕉综合影 国产欧美在线观看一区 亚洲国产欧洲综合997久久 国产一区二区免费视频 国产91精品对白露脸全集观看 久久亚洲国产伦理 欧美成人伊人久久综合网 亚洲性久久久影院 久久99国产精一区二区三区! 91精品国产欧美一区二区 欧美日韩亚洲区久久综合 日韩精品一二三区 久久久夜色精品国产噜噜 国产在线精品福利91香蕉 久久久久久久亚洲精品 97se色综合一区二区二区 91国语精品自产拍在线观看性色 91久久国产综合精品女同我 日韩中文字幕a 国产成人亚洲日本精品 久久国产精品-国产精品 久久国产经典视频 久久国产精品伦理 亚洲第一页在线视频 国产精品久久久久三级 日韩毛片网 久久免费高清视频 麻豆国产在线观看一区二区 91麻豆国产福利在线观看 国产成人精品男人的天堂538 一区二区三区中文字幕 免费在线视频一区 欧美日韩国产成人精品 国产综合网站 国产资源免费观看 亚洲精品亚洲人成在线播放 精品久久久久久中文字幕专区 亚洲人成人毛片无遮挡 国产一起色一起爱 国产香蕉精品视频在 九九热免费观看 日韩亚洲欧美一区 九九热精品在线观看 精品久久久久久中文字幕专区 亚洲欧美自拍偷拍 国产精品每日更新 久久久久国产一级毛片高清板 久久天天躁狠狠躁夜夜中文字幕 久久精品片 日韩在线毛片 国产成人精品本亚洲 国产成人精品一区二区三区 九九热在线观看 国产r级在线观看 国产欧美日韩精品高清二区综合区 韩国电影一区二区 国产精品毛片va一区二区三区 五月婷婷伊人网 久久一区二区三区免费 一本色道久久综合狠狠躁篇 亚洲综合色站 国产尤物在线观看 亚洲一区亚洲二区 免费在线视频一区 欧洲精品视频在线观看 日韩中文字幕a 中文字幕日本在线mv视频精品 91精品在线免费视频 精品国产免费人成在线观看 精品a级片 中文字幕日本在线mv视频精品 日韩在线精品视频 婷婷丁香色 91精品国产高清久久久久 国产成人精品日本亚洲直接 五月综合视频 欧美日韩在线亚洲国产人 精液呈暗黄色 亚洲乱码一区 久久精品中文字幕不卡一二区 亚洲天堂精品在线 激情婷婷综合 国产免费久久精品久久久 国产精品亚洲二区在线 久久免费播放视频 五月婷婷丁香综合 在线亚洲欧美日韩 久久免费精品高清麻豆 精品久久久久久中文字幕 亚洲一区网站 国产精品福利社 日韩中文字幕免费 亚洲综合丝袜 91精品在线播放 国产精品18 亚洲日日夜夜 伊人久久大香线蕉综合影 亚洲精品中文字幕乱码影院 亚洲一区二区黄色 亚洲第一页在线视频 一区二区在线观看视频 国产成人福利精品视频 亚洲高清二区 国内成人免费视频 精品亚洲性xxx久久久 国产精品合集一区二区三区 97av免费视频 国产一起色一起爱 国产区久久 国产资源免费观看 99精品视频免费 国产成人一级 国产精品九九免费视频 欧美91精品久久久久网免费 99热国产免费 久久精品色 98精品国产综合久久 久久精品播放 中文字幕视频免费 国产欧美日韩一区二区三区在线 精品久久蜜桃 国产小视频精品 一本色道久久综合狠狠躁篇 91在线免费观看 亚洲精品区 伊人成综合网 伊人热人久久中文字幕 伊人黄色片 99国产精品热久久久久久夜夜嗨 久久免费精品视频 亚洲一区二区三区高清不卡 久久久久国产一级毛片高清板 国产片一区二区三区 久久狠狠干 99久久婷婷国产综合精品电影 国产99区 国产精品成人久久久久 久久狠狠干 青青国产在线观看 亚洲高清国产拍精品影院 国产精品一区二区av 九九热在线免费视频 伊人久久国产 国产精品久久久久久久久久一区 在线观看免费视频一区 国产精品自在在线午夜区app 国产精品综合色区在线观看 国产毛片久久久久久国产毛片 97国产免费全部免费观看 国产精品每日更新 国产尤物视频在线 九九视频这里只有精品99 一本一道久久a久久精品综合 久久综合给会久久狠狠狠 国产成人精品男人的天堂538 欧美一区二区高清 毛片一区二区三区 国产欧美日韩在线观看一区二区三区 在线国产二区 欧美不卡网 91在线精品中文字幕 在线国产福利 国内精品91久久久久 91亚洲福利 日韩欧美国产中文字幕 91久久精品国产性色也91久久 亚洲性久久久影院 欧美精品1区 国产热re99久久6国产精品 九九热免费观看 国产精品欧美日韩 久久久久国产一级毛片高清板 久久国产经典视频 日韩欧美亚洲国产一区二区三区 欧美亚洲综合另类在线观看 国产精品自在在线午夜区app 97中文字幕在线观看 视频一二三区 精品国产一区在线观看 国产欧美日韩在线一区二区不卡 欧美一区二三区 伊人成人在线观看 国内精品91久久久久 97在线亚洲 国产在线不卡一区 久久久全免费全集一级全黄片 国产精品v欧美精品∨日韩 亚洲毛片网站 在线不卡一区二区 99re热在线视频 久久激情网 国产毛片一区二区三区精品 久久亚洲综合色 中文字幕视频免费 国产视频亚洲 婷婷伊人久久 国产一区二区免费播放 久久99国产精品成人欧美 99国产在线视频 国产成人免费视频精品一区二区 国产不卡一区二区三区免费视 国产码欧美日韩高清综合一区 久久精品国产主播一区二区 国产一区电影 久久精品国产夜色 国产精品国产三级国产 日韩一区二区三区在线 久久97久久97精品免视看 久久国产免费一区二区三区 伊人久久大香线蕉综合电影网 99re6久精品国产首页 久久激情网 亚洲成人高清在线 国产精品网址 国产成人精品男人的天堂538 香蕉国产综合久久猫咪 国产专区中文字幕 91麻豆精品国产高清在线 久久国产经典视频 国产精品成人va在线观看 国产精品爱啪在线线免费观看 日本精品久久久久久久久免费 亚洲综合一区二区三区 久久五月网 精品国产网红福利在线观看 久久综合亚洲伊人色 亚洲国产精品久久久久久网站 在线日韩国产 99国产精品热久久久久久夜夜嗨 国产综合精品在线 国产区福利 精品亚洲综合久久中文字幕 国产制服丝袜在线 毛片在线播放网站 在线观看免费视频一区 国产精品久久久精品三级 亚洲国产电影在线观看 最新日韩欧美不卡一二三区 狠狠综合久久综合鬼色 日本精品1在线区 国产日韩一区二区三区在线播放 欧美日韩精品在线播放 亚洲欧美日韩国产一区二区三区精品 久久综合久久网 婷婷六月激情在线综合激情 亚洲乱码一区 国产专区91 97av视频在线观看 精品久久久久久中文字幕 久久五月视频 国产成人福利精品视频 国产精品网址 中文字幕视频在线 精品一区二区三区免费视频 伊人手机在线视频 亚洲精品中文字幕乱码 国产在线视频www色 色噜噜国产精品视频一区二区 精品亚洲成a人在线观看 国产香蕉尹人综合在线 成人免费一区二区三区在线观看 国产不卡一区二区三区免费视 欧美精品久久天天躁 国产专区中文字幕 久久精品国产免费中文 久久精品国产免费一区 久久无码精品一区二区三区 国产欧美另类久久久精品免费 欧美精品久久天天躁 亚洲精品在线视频 国产视频91在线 91精品福利一区二区三区野战 日韩中文字幕免费 国产精品99一区二区三区 欧美成人高清性色生活 国产精品系列在线观看 亚洲国产福利精品一区二区 国产成人在线小视频 国产精品久久久久免费 99re热在线视频 久久久久久久综合 一区二区国产在线播放 成人国产在线视频 亚洲精品乱码久久久久 欧美日韩一区二区综合 精品久久久久免费极品大片 中文字幕视频二区 激情粉嫩精品国产尤物 国产成人精品一区二区视频 久久精品中文字幕首页 亚洲高清在线 国产精品亚洲一区二区三区 伊人久久艹 中文在线亚洲 国产精品一区二区在线播放 国产精品九九免费视频 亚洲二区在线播放 亚洲狠狠婷婷综合久久久久网站 亚洲欧美日韩网站 日韩成人精品 亚洲国产一区二区三区青草影视 91精品国产福利在线观看 国产精品久久久久久久久99热 国产一区二区精品尤物 久碰香蕉精品视频在线观看 亚洲日日夜夜 在线不卡一区二区 国产午夜亚洲精品 九九热在线视频观看这里只有精品 伊人手机在线视频 91免费国产精品 日韩欧美中字 91精品国产91久久久久 国产全黄三级播放 视频一区二区三区免费观看 国产开裆丝袜高跟在线观看 国产成人欧美 激情综合丝袜美女一区二区 国产成人亚洲综合无 欧美精品一区二区三区免费观看 欧美亚洲国产日韩 日韩亚州 国产欧美日韩精品高清二区综合区 亚洲午夜国产片在线观看 精品久久久久久中文字幕 欧美精品1区 久久伊人久久亚洲综合 亚洲欧美日韩精品 国产成人精品久久亚洲高清不卡 久久福利影视 国产精品99精品久久免费 久久久久免费精品视频 国产日产亚洲精品 亚洲国产午夜电影在线入口 精品无码一区在线观看 午夜国产精品视频 亚洲一级片免费 伊人久久大香线蕉综合影 国产精品久久影院 久碰香蕉精品视频在线观看 www.欧美精品 在线小视频国产 亚洲国产天堂久久综合图区 欧美一区二区三区不卡 日韩美女福利视频 九九精品免视频国产成人 不卡国产00高中生在线视频 亚洲第一页在线视频 欧美日韩在线播放成人 99re视频这里只有精品 国产精品91在线 精品乱码一区二区三区在线 国产区久久 91麻豆精品国产自产在线观看一区 日韩精品成人在线 九九热在线观看 国产精品久久不卡日韩美女 欧美一区二区三区综合色视频 欧美精品免费一区欧美久久优播 国产精品网址 国产专区中文字幕 国产精品欧美亚洲韩国日本久久 日韩美香港a一级毛片 久久精品123 欧美一区二区三区免费看 99r在线视频 亚洲精品国产字幕久久vr 国产综合激情在线亚洲第一页 91免费国产精品 日韩免费小视频 亚洲国产精品综合一区在线 国产亚洲第一伦理第一区 在线亚洲精品 国产精品一区二区制服丝袜 国产在线成人精品 九九精品免视频国产成人 亚洲国产网 欧美日韩亚洲一区二区三区在线观看 在线亚洲精品 欧美一区二区三区高清视频 国产成人精品男人的天堂538 欧美日韩在线观看区一二 亚洲欧美一区二区久久 久久精品中文字幕首页 日本高清www午夜视频 久久精品国产免费 久久999精品 亚洲国产精品欧美综合 88国产精品视频一区二区三区 91久久偷偷做嫩草影院免费看 国产精品夜色视频一区二区 欧美日韩导航 国产成人啪精品午夜在线播放 一区二区视频在线免费观看 99久久精品国产自免费 精液呈暗黄色 久久99国产精品 日本精品久久久久久久久免费 精品国产97在线观看 99re视频这里只有精品 国产视频91在线 999av视频 亚洲美女视频一区二区三区 久久97久久97精品免视看 亚洲国产成人久久三区 99久久亚洲国产高清观看 日韩毛片在线视频 综合激情在线 91福利一区二区在线观看 一区二区视频在线免费观看 激情粉嫩精品国产尤物 国产成人精品曰本亚洲78 国产成人精品本亚洲 国产精品成人免费视频 国产成人啪精品视频免费软件 久久精品国产亚洲妲己影院 国产精品成人久久久久久久 久久大香线蕉综合爱 欧美一区二区三区高清视频 99热国产免费 在线观看欧美国产 91精品视频在线播放 国产精品福利社 欧美精品一区二区三区免费观看 国产一区二区免费视频 国产午夜精品一区二区 精品视频在线观看97 91精品福利久久久 国产一区福利 国产综合激情在线亚洲第一页 国产精品久久久久久久久久久不卡 九色国产 在线日韩国产 黄网在线观看 亚洲一区小说区中文字幕 中文字幕丝袜 日本二区在线观看 日本国产一区在线观看 欧美日韩一区二区三区久久 欧美精品亚洲精品日韩专 国产日产亚洲精品 久久综合九色综合欧美播 亚洲国产欧美无圣光一区 欧美视频区 亚洲乱码视频在线观看 久久无码精品一区二区三区 九九热精品免费视频 久久99精品久久久久久牛牛影视 国产精品成久久久久三级 国产一区福利 午夜国产精品视频 日本二区在线观看 99久久网站 国产亚洲天堂 精品国产一区二区三区不卡 亚洲国产日韩在线一区 国产成人综合在线观看网站 久久免费高清视频 欧美在线导航 午夜精品久久久久久99热7777 欧美久久综合网 国产小视频精品 国产尤物在线观看 亚洲国产精品综合一区在线 欧美一区二区三区不卡视频 欧美黑人欧美精品刺激 日本福利在线观看 久久国产偷 国产手机精品一区二区 国产热re99久久6国产精品 国产高清啪啪 欧美亚洲国产成人高清在线 国产在线第三页 亚洲综合一区二区三区 99r在线视频 99精品久久久久久久婷婷 国产精品乱码免费一区二区 国产在线精品福利91香蕉 国产尤物视频在线 五月婷婷亚洲 中文字幕久久综合伊人 亚洲精品一级毛片 99国产精品电影 在线视频第一页 久久99国产精品成人欧美 国产白白视频在线观看2 成人精品一区二区www 亚洲成人网在线观看 麻豆91在线视频 色综合合久久天天综合绕视看 久久精品国产免费高清 国产不卡一区二区三区免费视 欧美国产中文 99精品欧美 九九在线精品 国产中文字幕在线免费观看 国产一区中文字幕在线观看 国产成人一级 国产精品一区二区制服丝袜 国产一起色一起爱 亚洲精品成人在线 亚洲欧美精品在线 国产欧美自拍视频 99精品久久久久久久婷婷 久99视频 国产热re99久久6国产精品 视频一区亚洲 国产精品视频分类 国产精品成在线观看 99re6久精品国产首页 亚洲在成人网在线看 亚洲国产日韩在线一区 久久国产三级 日韩国产欧美 欧美在线一区二区三区 国产精品美女一级在线观看 成人午夜免费福利视频 亚洲天堂精品在线 91精品国产手机 欧美日韩视频在线播放 狠狠综合久久综合鬼色 九一色视频 青青视频国产 亚洲欧美自拍一区 中文字幕天天躁日日躁狠狠躁97 日韩免费大片 996热视频 伊人成综合网 亚洲天堂欧美 日韩精品亚洲人成在线观看 久久综合给会久久狠狠狠 日韩精品亚洲人成在线观看 日韩国产欧美 亚洲成aⅴ人片在线影院八 亚洲精品1区 99久久精品免费 国产精品高清在线观看 国产精品久久久免费视频 在线亚洲欧美日韩 91在线看视频 国产精品96久久久久久久 欧美日韩国产成人精品 91在线亚洲 热久久亚洲 国产精品美女免费视频观看 日韩在线毛片 亚洲永久免费视频 九九免费在线视频 亚洲一区网站 日本高清二区视频久二区 精品国产美女福利在线 伊人久久艹 国产精品久久久久三级 欧美成人精品第一区二区三区 99久久精品国产自免费 在线观看日韩一区 国产中文字幕一区 成人免费午夜视频 欧美日韩另类在线 久久99国产精品成人欧美 色婷婷中文网 久久天天躁夜夜躁狠狠躁2020 欧美成人伊人久久综合网 国产精品福利资源在线 国产伦精品一区二区三区高清 国产精品亚洲综合色区韩国 亚洲一区欧美日韩 色综合视频 国语自产精品视频在线区 国产高清a 成人国内精品久久久久影 国产在线精品香蕉综合网一区 国产不卡在线看 国产成人精品精品欧美 国产欧美日韩综合精品一区二区三区 韩国电影一区二区 国产在线视频www色 91中文字幕在线一区 国产人成午夜免视频网站 亚洲综合一区二区三区 色综合视频一区二区观看 久久五月网 九九热精品在线观看 国产一区二区三区国产精品 99久热re在线精品996热视频 亚洲国产网 在线视频亚洲一区 日韩字幕一中文在线综合 国产高清一级毛片在线不卡 精品国产色在线 国产高清视频一区二区 精品日本久久久久久久久久 亚洲国产午夜精品乱码 成人免费国产gav视频在线 日韩欧美一区二区在线观看 欧美曰批人成在线观看 韩国电影一区二区 99re这里只有精品6 日韩精品一区二区三区视频 99re6久精品国产首页 亚洲欧美一区二区三区导航 欧美色图一区二区三区 午夜精品视频在线观看 欧美激情在线观看一区二区三区 亚洲热在线 成人国产精品一区二区网站 亚洲一级毛片在线播放 亚洲一区小说区中文字幕 亚洲午夜久久久久影院 国产自产v一区二区三区c 国产精品视频免费 久久调教视频 国产成人91激情在线播放 国产精品欧美亚洲韩国日本久久 久久亚洲日本不卡一区二区 91中文字幕网 成人国产在线视频 国产视频91在线 欧美成人精品第一区二区三区 国产精品福利在线 久久综合九色综合精品 欧美一区二区三区精品 久久国产综合尤物免费观看 久久99青青久久99久久 日韩精品免费 久久国产精品999 91亚洲视频在线观看 国产精品igao视频 色综合区 在线亚洲欧国产精品专区 国产一区二区三区在线观看视频 亚洲精品成人在线 一区二区国产在线播放 中文在线亚洲 亚洲精品第一国产综合野 国产一区二区精品久久 一区二区三区四区精品视频 99热精品久久 中文字幕视频二区 国产成人精品男人的天堂538 99精品影视 美女福利视频一区二区 久久午夜夜伦伦鲁鲁片 综合久久久久久久综合网 国产精品国产欧美综合一区 国产99视频在线观看 国产亚洲女在线精品 婷婷影院在线综合免费视频 国产亚洲3p一区二区三区 91成人爽a毛片一区二区 亚洲一区二区高清 国产欧美亚洲精品第二区首页 欧美日韩导航 亚洲高清二区 欧美激情观看一区二区久久 日韩毛片在线播放 亚洲欧美日韩高清中文在线 亚洲日本在线播放 国产精品一区二区制服丝袜 精品国产一区二区三区不卡 国产不卡在线看 国产欧美网站 四虎永久在线观看视频精品 国产黄色片在线观看 夜夜综合 一本色道久久综合狠狠躁篇 欧美亚洲综合另类在线观看 国产91在线看 伊人久久国产 欧美一区二区在线观看免费网站 国产精品久久久久三级 久久福利 日韩中文字幕a 亚洲午夜久久久久影院 91在线高清视频 国产亚洲一区二区三区啪 久久人精品 国产精品亚洲午夜一区二区三区 综合久久久久久 久久伊人一区二区三区四区 国产综合久久久久久 日韩一区精品视频在线看 国产精品日韩欧美制服 日本精品1在线区 99re视频 无码av免费一区二区三区试看 国产视频1区 日韩欧美中文字幕一区 日本高清中文字幕一区二区三区a 亚洲国产欧美无圣光一区 国产在线视频一区二区三区 欧美国产第一页 在线亚洲欧美日韩 日韩中文字幕第一页 在线不卡一区二区 伊人久久青青 国产精品一区二区在线播放 www.五月婷婷 麻豆久久婷婷国产综合五月 亚洲精品区 久久国产欧美另类久久久 99在线视频免费 伊人久久中文字幕久久cm 久久精品成人免费看 久久这里只有精品首页 88国产精品视频一区二区三区 中文字幕日本在线mv视频精品 国产在线精品成人一区二区三区 伊人精品线视天天综合 亚洲一区二区黄色 国产尤物视频在线 亚洲精品99久久久久中文字幕 国产一区二区三区免费观看 伊人久久大香线蕉综合电影网 国产成人精品区在线观看 日本精品一区二区三区视频 日韩高清在线二区 久久免费播放视频 一区二区成人国产精品 国产精品免费精品自在线观看 亚洲精品视频二区 麻豆国产精品有码在线观看 精品日本一区二区 亚洲欧洲久久 久久中文字幕综合婷婷 中文字幕视频在线 国产成人精品综合在线观看 91精品国产91久久久久福利 精液呈暗黄色 香蕉国产综合久久猫咪 国产专区精品 亚洲精品无码不卡 国产永久视频 亚洲成a人片在线播放观看国产 一区二区国产在线播放 亚洲一区二区黄色 欧美日韩在线观看视频 亚洲精品另类 久久国产综合尤物免费观看 国产一区二区三区国产精品 高清视频一区 国产精品igao视频 国产精品资源在线 久久综合精品国产一区二区三区 www.五月婷婷 精品色综合 99热国产免费 麻豆福利影院 亚洲伊人久久大香线蕉苏妲己 久久电影院久久国产 久久精品伊人 在线日韩理论午夜中文电影 亚洲国产欧洲综合997久久 伊人国产精品 久草国产精品 欧美一区精品二区三区 亚洲成人高清在线 91免费国产精品 日韩精品福利在线 国产一线在线观看 国产不卡在线看 久久99青青久久99久久 亚洲精品亚洲人成在线播放 99久久免费看国产精品 国产日本在线观看 青草国产在线视频 麻豆久久婷婷国产综合五月 国产中文字幕一区 91久久精品国产性色也91久久 国产一区a 国产欧美日韩成人 国产亚洲女在线精品 一区二区美女 中文字幕在线2021一区 在线小视频国产 久久这里只有精品首页 国产在线第三页 欧美日韩中文字幕 在线亚洲+欧美+日本专区 精品国产一区二区三区不卡 久久这里精品 欧美在线va在线播放 精液呈暗黄色 91精品国产手机 91在线免费播放 欧美视频亚洲色图 欧美国产日韩精品 日韩高清不卡在线 精品视频免费观看 欧美日韩一区二区三区四区 国产欧美亚洲精品第二区首页 亚洲韩精品欧美一区二区三区 国产精品视频免费 在线精品小视频 久久午夜夜伦伦鲁鲁片 国产无套在线播放 久热这里只精品99re8久 欧美久久久久 久久香蕉国产线看观看精品蕉 国产成人精品男人的天堂538 亚洲人成网站色7799在线观看 日韩在线第二页 一本色道久久综合狠狠躁篇 国产一区二区三区不卡在线观看 亚洲乱码在线 在线观看欧美国产 久久福利青草精品资源站免费 国产玖玖在线观看 在线亚洲精品 亚洲成aⅴ人在线观看 精品91在线 欧美一区二三区 日韩中文字幕视频在线 日本成人一区二区 日韩免费专区 国内精品在线观看视频 久久国产综合尤物免费观看 国产精品系列在线观看 一本一道久久a久久精品综合 亚洲免费播放 久久精品国产免费 久久人精品 亚洲毛片网站 亚洲成a人一区二区三区 韩国福利一区二区三区高清视频 亚洲精品天堂在线 一区二区三区中文字幕 亚洲国产色婷婷精品综合在线观看 亚洲国产成人久久笫一页 999国产视频 国产精品香港三级在线电影 欧美日韩一区二区三区四区 日韩国产欧美 国产精品99一区二区三区 午夜国产精品理论片久久影院 亚洲精品中文字幕麻豆 亚洲国产高清视频 久久免费手机视频 日韩a在线观看 五月婷婷亚洲 亚洲精品中文字幕麻豆 中文字幕丝袜 www国产精品 亚洲天堂精品在线 亚洲乱码一区 国产日韩欧美三级 久久999精品 伊人热人久久中文字幕 久热国产在线视频 国产欧美日韩在线观看一区二区三区 国产一二三区在线 日韩国产欧美 91精品国产91久久久久 亚洲一区小说区中文字幕 精品一区二区免费视频 国产精品视频免费 国产精品亚洲综合色区韩国 亚洲国产精品成人午夜在线观看 欧美国产日韩精品 中文字幕精品一区二区精品