日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android系统中的进程管理:进程的创建

發布時間:2025/3/15 Android 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android系统中的进程管理:进程的创建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

對于操作系統來說,進程管理是其最重要的職責之一。

考慮到這部分的內容較多,因此會拆分成幾篇文章來講解。

本文是進程管理系統文章的第一篇,會講解Android系統中的進程創建。

本文適合Android平臺的應用程序開發者,也適合對于Android系統內部實現感興趣的讀者。

概述

Android系統以Linux內核為基礎,所以對于進程的管理自然離不開Linux本身提供的機制。例如:

  • 通過fork來創建進行
  • 通過信號量來管理進程
  • 通過proc文件系統來查詢和調整進程狀態 等

對于Android來說,進程管理的主要內容包括以下幾個部分內容:

  • 進程的創建
  • 進程的優先級管理
  • 進程的內存管理
  • 進程的回收和死亡處理

本文會專門講解進程的創建,其余部分將在后面的文章中講解。

主要模塊

為了便于下文的講解,這里先介紹一下Android系統中牽涉到進程創建的幾個主要模塊。

同時為了便于讀者更詳細的了解這些模塊,這里也同時提供了這些模塊的代碼路徑。

這里提到的代碼路徑是指AOSP的源碼數中的路徑。

關于如何獲取AOSP源碼請參見這里:Downloading the Source。

本文以Android N版本的代碼為示例,所用到的Source Code Tags是:android-7.0.0_r1。

相關模塊

  • app_process

代碼路徑:frameworks/base/cmds/app_process

說明:app_process是一個可執行程序,該程序的主要作用是啟動zygote和system_server進程。

  • Zygote

代碼路徑:frameworks/base/core/java/com/android/internal/os/ZygoteInit.java

說明:zygote進程是所有應用進程的父進程,這是系統中一個非常重要的進程,下文我們會詳細講解。

  • ActivityManager

代碼路徑:frameworks/base/services/core/java/com/android/server/am/

說明:am是ActivityManager的縮寫。

這個目錄下的代碼負責了Android全部四大組件(Activity,Service,ContentProvider,BroadcastReceiver)的管理,并且還掌控了所有應用程序進程的創建和進程的優先級管理。

因此,這個部分的內容將是本系列文章講解的重點。

進程與線程

Android官方開發網站的這篇文章:Processes and Threads?非常好的介紹了Android系統中進程相關的一些基本概念和重要知識。

在閱讀下文之前,請務必將這篇文章瀏覽一遍。

關于進程

在Android系統中,進程可以大致分為系統進程應用進程兩大類。

系統進程是系統內置的(例如:init,zygote,system_server進程),屬于操作系統必不可少的一部分。系統進程的作用在于:

  • 管理硬件設備
  • 提供訪問設備的基本能力
  • 管理應用進程

應用進程是指應用程序運行的進程。這些應用程序可能是系統出廠自帶的(例如Launcher,電話,短信等應用),也可能是用戶自己安裝的(例如:微信,支付寶等)。

系統進程的數量通常是固定的(出廠或者系統升級之后就確定了),并且系統進程通常是一直存活,常駐內存的。系統進程的異常退出將可能導致設備無法正常使用。

而應用程序和應用進程在每個人使用的設備上通常是各不一樣的。如何管理好這些不確定的應用進程,就是操作系統本身要仔細考慮的內容。也是衡量一個操作系統好壞的標準之一。

在本文中,我們會介紹initzygotesystem_server三個系統進程。

除此之外,本系列文章將會把主要精力集中在講解Android系統如何管理應用進程上

init進程

init進程是一切的開始,在Android系統中,所有進程的進程號都是不確定的,唯獨init進程的進程號一定是1。

因為這個進程一定是系統起來的第一個進程。

并且,init進程掌控了整個系統的啟動邏輯。

我們知道,Android可能運行在各種不同的平臺,不同的設備上。因此,啟動的邏輯是不盡相同的。 為了適應各種平臺和設備的需求,init進程的初始化工作通過init.rc配置文件來管理。

你可以在AOSP源碼的system/core/rootdir/路徑找到這些配置文件。

配置文件的主入口文件是init.rc,這個文件會通過import引入其他幾個文件。

在本文中,我們統稱這些文件為init.rc。

init.rc通過Android Init Language來進行配置。 建議讀者大致閱讀一下其?語法說明?。

init.rc中配置了系統啟動的時候該做哪些事情,以及啟動哪些系統進程。

這其中有兩個特別重要的進程就是:zygotesystem_server進程。

  • zygote的中文意思是“受精卵“。這是一個很有寓意的名稱:所有的應用進程都是由zygote?fork出來的子進程,因此zygote進程是所有應用進程的父進程。
  • system_server?這個進程正如其名稱一樣,這是一個系統服務器。Framework層的幾乎所有服務都位于這個進程中。這其中就包括管理四大組件的ActivityManagerService。

Zygote進程

init.rc文件會根據平臺不一樣,選擇下面幾個文件中的一個來啟動zygote進程:

  • init.zygote32.rc
  • init.zygote32_64.rc
  • init.zygote64.rc
  • init.zygote64_32.rc

這幾個文件的內容是大致一致的,僅僅是為了不同平臺服務的。這里我們以init.zygote32.rc的文件為例,來看看其中的內容:

service zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server class main socket zygote stream 660 root system onrestart write /sys/android_power/request_state wake onrestart write /sys/power/state on onrestart restart audioserver onrestart restart cameraserver onrestart restart media onrestart restart netd writepid /dev/cpuset/foreground/tasks /dev/stune/foreground/tasks

在這段配置文件中(如果你不明白這段配置的含義,請閱讀一下文檔:Android Init Language),啟動了一個名稱叫做zygote的服務進程。這個進程是通過/system/bin/app_process?這個可執行程序創建的。

并且在啟動這個可執行程序的時候,傳遞了-Xzygote /system/bin --zygote --start-system-server class main?這些參數。

要知道這里到底做了什么,我們需要看一下app_process的源碼。

app_process的源碼在這個路徑:frameworks/base/cmds/app_process/app_main.cpp。

這個文件的main函數的有如下代碼:

int main(int argc, char* const argv[]) { ...while (i < argc) {const char* arg = argv[i++];if (strcmp(arg, "--zygote") == 0) {zygote = true;niceName = ZYGOTE_NICE_NAME;} else if (strcmp(arg, "--start-system-server") == 0) {startSystemServer = true;...}...if (!className.isEmpty()) {...} else {...if (startSystemServer) {args.add(String8("start-system-server"));}} ...if (zygote) {runtime.start("com.android.internal.os.ZygoteInit", args, zygote);} else if (className) {runtime.start("com.android.internal.os.RuntimeInit", args, zygote);} else {fprintf(stderr, "Error: no class name or --zygote supplied.\n");app_usage();LOG_ALWAYS_FATAL("app_process: no class name or --zygote supplied.");return 10;} }

這里會判斷,

  • 如果執行這個命令時帶了--zygote參數,就會通過runtime.start啟動com.android.internal.os.ZygoteInit。
  • 如果參數中帶有--start-system-server參數,就會將start-system-server添加到args中。

這段代碼是C++實現的。在執行這段代碼的時候還沒有任何Java的環境。而runtime.start就是啟動Java虛擬機,并在虛擬機中啟動指定的類。于是接下來的邏輯就在ZygoteInit.java中了。

這個文件的main函數主要代碼如下::

public static void main(String argv[]) {...try {...boolean startSystemServer = false;String socketName = "zygote";String abiList = null;for (int i = 1; i < argv.length; i++) {if ("start-system-server".equals(argv[i])) {startSystemServer = true;} else if (argv[i].startsWith(ABI_LIST_ARG)) {...}}...registerZygoteSocket(socketName);...preload();...Zygote.nativeUnmountStorageOnInit();ZygoteHooks.stopZygoteNoThreadCreation();if (startSystemServer) {startSystemServer(abiList, socketName);}Log.i(TAG, "Accepting command socket connections");runSelectLoop(abiList);closeServerSocket();} catch (MethodAndArgsCaller caller) {caller.run();} catch (RuntimeException ex) {Log.e(TAG, "Zygote died with exception", ex);closeServerSocket();throw ex;} }

在這段代碼中,我們主要關注如下幾行:

  • 通過?registerZygoteSocket(socketName);?注冊Zygote Socket
  • 通過?preload();?預先加載所有應用都需要的公共資源
  • 通過?startSystemServer(abiList, socketName);?啟動system_server
  • 通過?runSelectLoop(abiList);?在Looper上等待連接
  • 這里需要說明的是:zygote進程啟動之后,會啟動一個socket套接字,并通過Looper一直在這個套接字上等待連接。

    所有應用進程都是通過發送數據到這個套接字上,然后由zygote進程創建的。

    這里還有一點說明的是: 在Zygote進程中,會通過preload函數加載需要應用程序都需要的公共資源。

    預先加載這些公共資源有如下兩個好處:

    • 加快應用的啟動速度?因為這些資源已經在zygote進程啟動的時候加載好了
    • 通過共享的方式節省內存?這是Linux本身提供的機制:父進程已經加載的內容可以在子進程中進行共享,而不用多份數據拷貝(除非子進程對這些數據進行了修改。)

    preload的資源主要是Framework相關的一些基礎類和Resource資源,而這些資源正是所有應用都需要的:

    開發者通過Android SDK開發應用所調用的API實現都在Framework中。

    static void preload() {Log.d(TAG, "begin preload");Trace.traceBegin(Trace.TRACE_TAG_DALVIK, "BeginIcuCachePinning");beginIcuCachePinning();Trace.traceEnd(Trace.TRACE_TAG_DALVIK);Trace.traceBegin(Trace.TRACE_TAG_DALVIK, "PreloadClasses");preloadClasses();Trace.traceEnd(Trace.TRACE_TAG_DALVIK);Trace.traceBegin(Trace.TRACE_TAG_DALVIK, "PreloadResources");preloadResources();Trace.traceEnd(Trace.TRACE_TAG_DALVIK);Trace.traceBegin(Trace.TRACE_TAG_DALVIK, "PreloadOpenGL");preloadOpenGL();Trace.traceEnd(Trace.TRACE_TAG_DALVIK);preloadSharedLibraries();preloadTextResources();WebViewFactory.prepareWebViewInZygote();endIcuCachePinning();warmUpJcaProviders();Log.d(TAG, "end preload"); }

    system_server進程

    上文已經提到,zygote進程起來之后會根據需要啟動system_server進程。

    system_server進程中包含了大量的系統服務。例如:

    • 負責網絡管理的NetworkManagementService
    • 負責窗口管理的WindowManagerService
    • 負責震動管理的VibratorService
    • 負責輸入管理的InputManagerService

    等等。關于system_server,我們今后會其他的文章中專門講解,這里不做過多說明。

    在本文中,我們只關注system_server中的ActivityManagerService這個系統服務。

    ActivityManagerService

    上文中提到:zygote進程在啟動之后會啟動一個socket,然后一直在這個socket等待連接。

    而會連接它的就是ActivityManagerService。

    因為ActivityManagerService掌控了所有應用進程的創建。

    所有應用程序的進程都是由ActivityManagerService通過socket發送請求給Zygote進程,然后由zygote fork創建的。

    ActivityManagerService通過Process.start方法來請求zygote創建進程:

    public static final ProcessStartResult start(final String processClass,final String niceName,int uid, int gid, int[] gids,int debugFlags, int mountExternal,int targetSdkVersion,String seInfo,String abi,String instructionSet,String appDataDir,String[] zygoteArgs) {try {return startViaZygote(processClass, niceName, uid, gid, gids,debugFlags, mountExternal, targetSdkVersion, seInfo,abi, instructionSet, appDataDir, zygoteArgs);} catch (ZygoteStartFailedEx ex) {Log.e(LOG_TAG,"Starting VM process through Zygote failed");throw new RuntimeException("Starting VM process through Zygote failed", ex);} }

    這個函數會將啟動進程所需要的參數組裝好,并通過socket發送給zygote進程。然后zygote進程根據發送過來的參數將進程fork出來。

    在ActivityManagerService中,調用Process.start的地方是下面這個方法:

    private final void startProcessLocked(ProcessRecord app, String hostingType,String hostingNameStr, String abiOverride, String entryPoint, String[] entryPointArgs) {...Process.ProcessStartResult startResult = Process.start(entryPoint,app.processName, uid, uid, gids, debugFlags, mountExternal,app.info.targetSdkVersion, app.info.seinfo, requiredAbi, instructionSet,app.info.dataDir, entryPointArgs); ... }

    下文中我們會看到,所有四大組件進程的創建,都是調用這里的startProcessLocked這個方法而創建的。

    對于每一個應用進程,在ActivityManagerService中,都有一個ProcessRecord與之對應。這個對象記錄了應用進程的所有詳細狀態。

    PS:對于ProcessRecord的內部結構,在下一篇文章中,我們會講解。

    為了查找方便,對于每個ProcessRecord會存在下面兩個集合中。

    • 按名稱和uid組織的集合
    /** * All of the applications we currently have running organized by name. * The keys are strings of the application package name (as * returned by the package manager), and the keys are ApplicationRecord * objects. */ final ProcessMap<ProcessRecord> mProcessNames = new ProcessMap<ProcessRecord>();
    • 按pid組織的集合:
    /** * All of the processes we currently have running organized by pid. * The keys are the pid running the application. * * <p>NOTE: This object is protected by its own lock, NOT the global * activity manager lock! */ final SparseArray<ProcessRecord> mPidsSelfLocked = new SparseArray<ProcessRecord>();

    下面這幅圖小節了上文的這些內容:

    關于應用組件

    Processes and Threads?提到:

    當某個應用組件啟動且該應用沒有運行其他任何組件時,Android 系統會使用單個執行線程為應用啟動新的 Linux 進程。

    因此,四大組件中的任何一個先起來都會導致應用進程的創建。下文我們就詳細看一下,它們啟動時,各自是如何導致應用進程的創建的。

    PS:四大組件的管理本身又是一個比較大的話題,限于篇幅關系,這里不會非常深入的講解,這里主要是講解四大組件與進程創建的關系。

    在應用程序中,開發者通過:

    • startActivity(Intent intent)?來啟動Activity
    • startService(Intent service)?來啟動Service
    • sendBroadcast(Intent intent)?來發送廣播
    • ContentResolver?中的接口來使用ContentProvider

    這其中,startActivity,startService和sendBroadcast還有一些重載方法。

    其實這里提到的所有這些方法,最終都是通過Binder調用到ActivityManagerService中,由其進行處理的。

    這里特別說明一下:應用進程和ActivityManagerService所在進程(即system_server進程)是相互獨立的,兩個進程之間的方法通常是不能直接互相調用的。

    而Android系統中,專門提供了Binder框架來提供進程間通訊和方法調用的能力。

    調用關系如下圖所示:

    Activity與進程創建

    在ActivityManagerService中,對每一個運行中的Activity都有一個ActivityRecord對象與之對應,這個對象記錄Activity的詳細狀態。

    ActivityManagerService中的startActivity方法接受Context.startActivity的請求,該方法代碼如下:

    @Override public final int startActivity(IApplicationThread caller, String callingPackage,Intent intent, String resolvedType, IBinder resultTo, String resultWho, int requestCode,int startFlags, ProfilerInfo profilerInfo, Bundle bOptions) {return startActivityAsUser(caller, callingPackage, intent, resolvedType, resultTo,resultWho, requestCode, startFlags, profilerInfo, bOptions,UserHandle.getCallingUserId()); }

    Activity的啟動是一個非常復雜的過程。這里我們簡單介紹一下背景知識:

    • ActivityManagerService中通過Stack和Task來管理Activity
    • 每一個Activity都屬于一個Task,一個Task可能包含多個Activity。一個Stack包含多個Task
    • ActivityStackSupervisor類負責管理所有的Stack
    • Activity的啟動過程會牽涉到:
      • Intent的解析
      • Stack,Task的查詢或創建
      • Activity進程的創建
      • Activity窗口的創建
      • Activity的生命周期調度

    Activity的管理結構如下圖所示:

    在Activity啟動的最后,會將前一個Activity pause,將新啟動的Activity resume以便被用戶看到。

    在這個時候,如果發現新啟動的Activity進程還沒有啟動,則會通過startSpecificActivityLocked將其啟動。整個調用流程如下:

    • ActivityManagerService.activityPaused?=>
    • ActivityStack.activityPausedLocked?=>
    • ActivityStack.completePauseLocked?=>
    • ActivityStackSupervisor.ensureActivitiesVisibleLocked?=>
    • ActivityStack.makeVisibleAndRestartIfNeeded?=>
    • ActivityStackSupervisor.startSpecificActivityLocked?=>
    • ActivityManagerService.startProcessLocked

    ActivityStackSupervisor.startSpecificActivityLocked?關鍵代碼如下:

    void startSpecificActivityLocked(ActivityRecord r,boolean andResume, boolean checkConfig) {// Is this activity's application already running?ProcessRecord app = mService.getProcessRecordLocked(r.processName,r.info.applicationInfo.uid, true);r.task.stack.setLaunchTime(r);if (app != null && app.thread != null) {...}mService.startProcessLocked(r.processName, r.info.applicationInfo, true, 0,"activity", r.intent.getComponent(), false, false, true); }

    這里的ProcessRecord app?描述了Activity所在進程。

    Service與進程創建

    Service的啟動相對于Activity來說要簡單一些。

    在ActivityManagerService中,對每一個運行中的Service都有一個ServiceRecord對象與之對應,這個對象記錄Service的詳細狀態。

    ActivityManagerService中的startService方法處理Context.startServiceAPI的請求,相關代碼:

    @Override public ComponentName startService(IApplicationThread caller, Intent service,String resolvedType, String callingPackage, int userId)throws TransactionTooLargeException {...synchronized(this) {final int callingPid = Binder.getCallingPid();final int callingUid = Binder.getCallingUid();final long origId = Binder.clearCallingIdentity();ComponentName res = mServices.startServiceLocked(caller, service,resolvedType, callingPid, callingUid, callingPackage, userId);Binder.restoreCallingIdentity(origId);return res;} }

    這段代碼中的mServices對象是ActiveServices類型的,這個類專門負責管理活動的Service。

    啟動Service的調用流程如下:

    • ActivityManagerService.startService?=>
    • ActiveServices.startServiceLocked?=>
    • ActiveServices.startServiceInnerLocked?=>
    • ActiveServices.bringUpServiceLocked?=>
    • ActivityManagerService.startProcessLocked

    ActiveServices.bringUpServiceLocked會判斷如果Service所在進程還沒有啟動,

    則通過ActivityManagerService.startProcessLocked將其啟動。相關代碼如下:

    // Not running -- get it started, and enqueue this service record // to be executed when the app comes up. if (app == null && !permissionsReviewRequired) {if ((app=mAm.startProcessLocked(procName, r.appInfo, true, intentFlags,"service", r.name, false, isolated, false)) == null) {String msg = "Unable to launch app "+ r.appInfo.packageName + "/"+ r.appInfo.uid + " for service "+ r.intent.getIntent() + ": process is bad";Slog.w(TAG, msg);bringDownServiceLocked(r);return msg;}if (isolated) {r.isolatedProc = app;} }

    這里的mAm?就是ActivityManagerService。

    Provider與進程創建

    在ActivityManagerService中,對每一個運行中的ContentProvider都有一個ContentProviderRecord對象與之對應,這個對象記錄ContentProvider的詳細狀態。

    開發者通過ContentResolver中的insert,?delete,?update,?query這些API來使用ContentProvider。在ContentResolver的實現中,無論使用這里的哪個接口,ContentResolver都會先通過acquireProvider?這個方法來獲取到一個類型為IContentProvider的遠程接口。這個遠程接口對接了ContentProvider的實現提供方。

    同一個ContentProvider可能同時被多個模塊使用,而調用ContentResolver接口的進程只是ContentProvider的一個客戶端而已,真正的ContentProvider提供方是運行自身的進程中的,兩個進程的通訊需要通過Binder的遠程接口形式來調用。如下圖所示:

    ContentResolver.acquireProvider?最終會調用到ActivityManagerService.getContentProvider中,該方法代碼如下:

    @Override public final ContentProviderHolder getContentProvider(IApplicationThread caller, String name, int userId, boolean stable) {enforceNotIsolatedCaller("getContentProvider");if (caller == null) {String msg = "null IApplicationThread when getting content provider "+ name;Slog.w(TAG, msg);throw new SecurityException(msg);}// The incoming user check is now handled in checkContentProviderPermissionLocked() to deal// with cross-user grant.return getContentProviderImpl(caller, name, null, stable, userId); }

    而在getContentProviderImpl這個方法中,會判斷對應的ContentProvider進程有沒有啟動,

    如果沒有,則通過startProcessLocked方法將其啟動。

    Receiver與進程創建

    開發者通過Context.sendBroadcast接口來發送廣播。ActivityManagerService.broadcastIntent?方法了對應廣播發送的處理。

    廣播是一種一對多的消息形式,廣播接受者的數量是不確定的。因此發送廣播本身可能是一個很耗時的過程(因為要逐個通知)。

    在ActivityManagerService內部,是通過隊列的形式來管理廣播的:

    • BroadcastQueue?描述了一個廣播隊列
    • BroadcastRecord?描述了一個廣播事件

    在ActivityManagerService中,如果收到了一個發送廣播的請求,會先創建一個BroadcastRecord接著將其放入BroadcastQueue中。

    然后通知隊列自己去處理這個廣播。然后ActivityManagerService自己就可以繼續處理其他請求了。

    廣播隊列本身是在另外一個線程處理廣播的發送的,這樣保證的ActivityManagerService主線程的負載不會太重。

    在BroadcastQueue.processNextBroadcast(boolean fromMsg)?方法中真正實現了通知廣播事件到接受者的邏輯。在這個方法,如果發現接受者(即BrodcastReceiver)還沒有啟動,便會通過ActivityManagerService.startProcessLocked?方法將其啟動。相關如下所示:

    final void processNextBroadcast(boolean fromMsg) {...// Hard case: need to instantiate the receiver, possibly// starting its application process to host it.ResolveInfo info =(ResolveInfo)nextReceiver;ComponentName component = new ComponentName(info.activityInfo.applicationInfo.packageName,info.activityInfo.name);...// Not running -- get it started, to be executed when the app comes up.if (DEBUG_BROADCAST) Slog.v(TAG_BROADCAST,"Need to start app ["+ mQueueName + "] " + targetProcess + " for broadcast " + r);if ((r.curApp=mService.startProcessLocked(targetProcess,info.activityInfo.applicationInfo, true,r.intent.getFlags() | Intent.FLAG_FROM_BACKGROUND,"broadcast", r.curComponent,(r.intent.getFlags()&Intent.FLAG_RECEIVER_BOOT_UPGRADE) != 0, false, false))== null) {// Ah, this recipient is unavailable. Finish it if necessary,// and mark the broadcast record as ready for the next.Slog.w(TAG, "Unable to launch app "+ info.activityInfo.applicationInfo.packageName + "/"+ info.activityInfo.applicationInfo.uid + " for broadcast "+ r.intent + ": process is bad");logBroadcastReceiverDiscardLocked(r);finishReceiverLocked(r, r.resultCode, r.resultData,r.resultExtras, r.resultAbort, false);scheduleBroadcastsLocked();r.state = BroadcastRecord.IDLE;return;}mPendingBroadcast = r;mPendingBroadcastRecvIndex = recIdx;} }

    至此,四大組件的啟動就已經分析完了。

    結束語

    進程管理本身是一個非常大的話題,本文講解了Android系統中進程創建的相關內容。

    進程啟動之后該如何管理就是下一篇文章要講解的內容了。

    敬請期待。

    參考資料與推薦讀物

    UNIX環境高級編程(第3版)

    深入理解LINUX內核(第3版)

    Processes and Threads

    Android Booting


    原文: http://qiangbo.space/2016-10-10/AndroidAnatomy_Process_Creation/

    總結

    以上是生活随笔為你收集整理的Android系统中的进程管理:进程的创建的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    久久久91精品国产一区二区三区 | 国产精品久久精品国产 | 成人久久亚洲 | 国产精品亚洲精品 | 特及黄色片 | 四虎在线免费 | 国产精品久久嫩一区二区免费 | 国产视频不卡 | 91传媒在线观看 | 91丨九色丨蝌蚪丨老版 | 91久久精品一区二区三区 | 精品国产亚洲一区二区麻豆 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 日韩精品中文字幕在线不卡尤物 | 国产精品久久久久永久免费 | 就色干综合| 成人黄色大片在线观看 | 国产小视频91 | 国产午夜精品一区二区三区四区 | 九九热在线免费观看 | 亚洲资源在线 | 四虎欧美 | 国产精品一区二区免费视频 | 蜜臀久久99精品久久久久久网站 | 嫩草伊人久久精品少妇av | 中文字幕日本在线观看 | 国产精品久久久久一区二区三区共 | 久久精品国产亚洲精品 | 精品在线一区二区三区 | 在线观看一区视频 | 黄色综合| 亚洲欧洲xxxx | 亚洲综合色播 | 成人免费在线观看av | 精品久久99 | 亚洲色视频| 在线探花 | 国产成人三级在线播放 | 91看片在线 | 国产破处在线视频 | 福利视频一区二区 | 九精品| 成年人免费在线观看 | 国产不卡免费av | 欧美性受极品xxxx喷水 | 亚洲午夜精品久久久久久久久 | 国产一区二区手机在线观看 | 亚洲人xxx| 亚洲 欧美 91 | 特片网久久 | 高清不卡一区二区三区 | 日韩欧美电影在线观看 | www.天天成人国产电影 | 国产亚洲婷婷免费 | 激情五月开心 | 97精品视频在线播放 | 91麻豆高清视频 | 一区二区三区在线播放 | 字幕网资源站中文字幕 | 九九热免费在线视频 | 激情婷婷| 亚洲精品系列 | 伊人久久五月天 | 精品在线观看国产 | 亚洲欧洲精品在线 | 视频国产精品 | 九九亚洲精品 | 久久av在线播放 | 精品在线一区二区 | 97超碰在线久草超碰在线观看 | 成人免费视频网址 | 国产一线在线 | 久久精品一区二区国产 | 久草免费电影 | 欧美成人精品欧美一级乱 | 中文字幕有码在线观看 | 九九热在线精品视频 | 日韩色在线 | 精品久久久久久久久久久久久久久久久久 | 久久一区二区三区超碰国产精品 | 高清久久久 | 午夜av色 | 欧美一区二区三区免费观看 | 日韩电影在线一区 | 五月天婷婷视频 | 成人aⅴ视频 | 国产精品免费av | 美女久久精品 | 日韩三级免费 | 国产成人精品三级 | 黄色三级在线观看 | 国产精品久久久久久久久久东京 | 亚洲精品影视在线观看 | av电影在线免费观看 | 天天艹天天干天天 | 色免费在线 | 深爱激情五月网 | 中文字幕色播 | 亚洲黄网站| 一本—道久久a久久精品蜜桃 | 97香蕉久久超级碰碰高清版 | 99视频国产在线 | 中文字幕在线视频一区二区三区 | 丁香激情综合久久伊人久久 | 伊人干综合| 欧美性大胆 | 亚洲综合色视频 | 久久蜜桃av| 激情av网址 | 91久久国产露脸精品国产闺蜜 | 成人国产精品av | 日韩精选在线观看 | 精品国产乱码 | 日韩av不卡在线播放 | 久久国产精品色婷婷 | 亚洲欧美视频 | 成 人 黄 色 片 在线播放 | 91激情在线视频 | 日韩精品视频一二三 | 精品自拍sae8—视频 | 成人资源站 | 在线视频中文字幕一区 | 久久精品亚洲精品国产欧美 | 96av麻豆蜜桃一区二区 | 免费成人黄色 | 亚洲欧美精品一区 | 在线观看国产一区二区 | 五月天电影免费在线观看一区 | 欧美一区二区三区在线观看 | 国产成人99久久亚洲综合精品 | 欧美在线99| www九九热 | 天天天干 | 日本中文字幕在线看 | 色视频 在线 | 免费观看一级成人毛片 | 在线视频黄 | 国产拍揄自揄精品视频麻豆 | 中文字幕高清免费日韩视频在线 | 亚洲精品成人免费 | 亚洲黄色一级视频 | 人人添人人澡人人澡人人人爽 | 日日日干 | 精品一区二区在线免费观看 | 欧美aa一级片 | 国产一区二区视频在线播放 | 久草五月 | 在线免费色 | 97人人模人人爽人人喊中文字 | 久久久蜜桃 | 91麻豆精品国产午夜天堂 | 精品久久久久久久久中文字幕 | 97超碰站 | 国产精品自产拍在线观看蜜 | 成人午夜精品 | 日韩理论在线播放 | 国产区精品在线 | 精品成人国产 | 免费在线观看视频一区 | 免费网站污| 久久草草热国产精品直播 | 伊人网av | 久草免费在线观看 | 久草在线免费资源站 | 亚洲日本中文字幕在线观看 | 91在线小视频 | 波多野结衣视频在线 | 四虎影视久久久 | 中文字幕高清在线播放 | 久久电影色 | 爱色av.com | 国产视频不卡一区 | 免费a网站 | 中国一级特黄毛片大片久久 | 99精品国产一区二区三区不卡 | 特级毛片在线免费观看 | 天天操狠狠操 | 中文字幕久久亚洲 | 97爱爱爱| 中文字幕免费高清在线 | 91av视频在线播放 | 草莓视频在线观看免费观看 | 99精品视频免费观看 | 日韩婷婷 | 91视频成人免费 | 欧美极品少妇xxxx | 毛片网免费 | 久久精品精品电影网 | 久久久99精品免费观看app | 成人aaa毛片 | 国产精品久久久久久一区二区 | 久久免费大片 | av三级在线播放 | 国产高清在线 | 亚洲精品视频免费观看 | 久久久福利视频 | www在线观看国产 | 中文字幕成人网 | 天天干天天草 | 在线国产99 | 久久精品国产一区二区电影 | 国产精品乱码久久 | 91精品在线看 | 免费看国产视频 | 97视频在线免费 | 亚洲开心色 | 久久精品99视频 | 4438全国亚洲精品在线观看视频 | 中文字幕在线播放一区二区 | 天天天在线综合网 | 国产成人精品网站 | 日本久久片| 一级成人免费 | av网站在线观看免费 | 在线亚洲欧美日韩 | 亚洲精品国偷自产在线99热 | 日本一区二区三区免费观看 | 久久精品亚洲精品国产欧美 | 开心激情五月婷婷 | 国产精品一区免费看8c0m | 亚洲国产偷 | 天天综合人人 | 99超碰在线播放 | 成人在线免费小视频 | 久久综合免费 | 在线国产视频一区 | 欧美日韩一区三区 | 国产精品密入口果冻 | 欧美高清视频不卡网 | 99riav1国产精品视频 | 亚洲精品免费在线观看 | 亚洲国内精品视频 | 在线电影中文字幕 | 午夜精品一区二区三区免费视频 | 欧美综合色在线图区 | 人人澡澡人人 | 精品av网站 | 亚洲人在线7777777精品 | 午夜成人免费电影 | 成人小电影在线看 | 久久激情五月激情 | 成人福利av | 日韩av午夜在线观看 | 2022中文字幕在线观看 | 久久国产精品久久久久 | 免费日韩高清 | 日韩乱色精品一区二区 | www激情网 | 黄色av电影一级片 | 91重口视频| 天天综合色 | 天天操夜夜干 | 久久精品欧美视频 | 亚洲五月六月 | 国产免费三级在线观看 | 亚洲精品国产精品久久99热 | 国产在线一区二区三区播放 | 色婷婷狠狠18 | 免费观看福利视频 | 在线 视频 亚洲 | 日韩高清激情 | 97超视频在线观看 | 香蕉在线观看 | 国产成人av一区二区三区在线观看 | av黄色在线播放 | 蜜桃视频成人在线观看 | 国产无套精品久久久久久 | 韩国在线一区 | 国产精品第十页 | 久久久久综合 | 五月婷婷综 | 在线观看岛国av | 亚洲 中文 欧美 日韩vr 在线 | 亚洲一级黄色片 | 中文字幕在线免费看 | 精品国产人成亚洲区 | 久久影院一区 | 国产一区二区三区久久久 | 香蕉在线观看视频 | 国产精品久久久久久久久久妇女 | 在线岛国av| 黄色片免费电影 | 中文字幕在线观看视频一区二区三区 | 综合激情网 | 一区二区三区四区五区六区 | 久久久精品国产一区二区电影四季 | 一区二区三区中文字幕在线 | 中文av网 | 黄色小视频在线观看免费 | 在线国产视频观看 | 午夜国产一区二区 | 午夜精品一二区 | 天天曰天天干 | 热久久99这里有精品 | 91高清免费观看 | 国产中文字幕视频在线观看 | aaawww| 五月综合激情婷婷 | 久久国产精品免费一区 | 久久亚洲国产精品 | 成人精品电影 | 色婷婷a | 亚洲电影一级黄 | 丝袜+亚洲+另类+欧美+变态 | 免费99视频 | 天天综合成人网 | 国产专区精品视频 | 亚洲一区二区精品视频 | 国产精品久久片 | 免费在线观看黄 | 综合精品在线 | 国产精品国产亚洲精品看不卡15 | 国产麻豆精品一区二区 | 国产午夜精品福利视频 | 91精品色| 免费看成人av | 亚洲高清激情 | 激情九九 | 亚洲三级性片 | 九九热免费精品视频 | 久久久在线视频 | 波多野结衣精品在线 | 国产vs久久 | 欧美日本啪啪无遮挡网站 | 国产99久久久国产精品免费看 | 一级一片免费观看 | 色婷婷av国产精品 | 国产成人精品久久二区二区 | 搡bbbb搡bbb视频 | 在线精品在线 | 国产精品黄色av | 欧美精品中文在线免费观看 | 成人网中文字幕 | 国产精品99久久久精品 | 色中色综合 | 国产美女在线观看 | 中文字幕五区 | 久久久久日本精品一区二区三区 | av成人在线网站 | 九九在线高清精品视频 | 国产一区二区三区四区在线 | 91在线看网站 | 欧美日韩一区二区在线观看 | 草莓视频在线观看免费观看 | 亚洲aⅴ一区二区三区 | 久久久国产高清 | 久久大片 | 高清不卡一区二区在线 | 91精品一 | 91亚洲精品久久久蜜桃 | 免费国产视频 | 婷婷在线观看视频 | 免费看片网站91 | 久久精品欧美一区二区三区麻豆 | 成人h动漫精品一区二 | 天天射天天操天天 | 性色va | 国产精品麻豆视频 | 中文字幕永久免费 | 欧美日韩高清一区二区三区 | 不卡的av电影 | 亚洲精品一区二区18漫画 | 天天爱天天操天天射 | 国产亚洲aⅴaaaaaa毛片 | 欧美中文字幕第一页 | 日韩免费不卡av | 国产一级片直播 | 色一级片 | 美女免费视频网站 | 亚洲自拍偷拍色图 | 亚洲国产成人久久 | 国产精品免费高清 | 韩日精品在线 | 色老板在线视频 | 中文字幕色播 | 看全黄大色黄大片 | 精品久久久久久亚洲综合网站 | 在线观看亚洲a | 免费观看一级特黄欧美大片 | 日日夜夜综合网 | 91九色视频网站 | 夜夜躁狠狠躁日日躁 | 国产精品视频最多的网站 | 成人av电影免费观看 | 日韩激情视频在线观看 | 日韩在线精品视频 | 91视频在线免费看 | 少妇bbw搡bbbb搡bbbb | 国产一区在线免费观看视频 | 日本中文字幕在线免费观看 | 国产一级a毛片视频爆浆 | 99久久99热这里只有精品 | 精品国产一区二区三区不卡 | 国产一级特黄毛片在线毛片 | 亚洲欧洲国产视频 | 在线 视频 一区二区 | 精品免费国产一区二区三区四区 | 在线亚洲欧美日韩 | 在线观看中文字幕一区 | av性网站| 亚洲视频第一页 | 日本精品久久久久 | 成人a级大片 | 欧美a√大片 | 91av电影在线| 涩涩网站在线看 | 国产福利av| 激情影院在线 | 国产成人精品女人久久久 | 国产成人精品一区二区三区网站观看 | 欧美一区二区三区免费观看 | 在线免费观看国产精品 | www中文在线 | 国产视频亚洲 | 久久久久久欧美二区电影网 | 天天操天天草 | 一级α片| 日韩欧美视频在线免费观看 | 久久字幕精品一区 | 国产免费区 | 69av在线视频| 国产va在线 | 久久视讯| av久久在线 | 综合网婷婷 | 成年人电影免费看 | 欧美精品一区二区免费 | 免费观看十分钟 | 亚洲国产资源 | 国产色a在线观看 | 久久精品久久99精品久久 | 高清久久久 | 日日草视频 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 欧美日韩国产mv | 亚洲精品在线一区二区 | 免费精品视频在线观看 | 91精品啪在线观看国产 | 免费在线播放 | 日韩精品视频在线免费观看 | 国内精品久久久久国产 | 婷婷在线视频观看 | 国产午夜麻豆影院在线观看 | 射射色| 黄色91在线观看 | 在线观看国产永久免费视频 | 天天操操操操操 | 黄色影院在线免费观看 | 日韩中文字幕亚洲一区二区va在线 | 久久久久国产精品免费网站 | 成在线播放 | 一区二区中文字幕在线观看 | 亚洲精品字幕 | 在线成人免费av | 国产小视频在线观看免费 | 99久久婷婷国产一区二区三区 | 国产一级在线看 | 2019中文| 日本三级中文字幕在线观看 | 超碰人人av| 欧美va天堂va视频va在线 | 成人四虎 | 国产精品一区二区av影院萌芽 | 国产成人久久久77777 | 亚洲成aⅴ人片久久青草影院 | 在线一二三四区 | 精品久久久久久久久久 | 国产高清视频在线 | 黄色三级在线观看 | 91看片淫黄大片一级在线观看 | 五月婷婷香蕉 | 亚洲综合在 | 久久久黄色免费网站 | 日韩中文字幕第一页 | 亚州av免费| 天天干天天操天天射 | 黄色电影网站在线观看 | 99久久精品免费 | 日韩欧美在线第一页 | 综合视频在线 | 高潮久久久久久 | 国模精品一区二区三区 | 中文字幕在线观看91 | 久久精品视频在线观看 | 欧美精品日韩 | 国产精品原创在线 | 久艹在线观看视频 | 超级碰碰碰免费视频 | 精品一区二区在线免费观看 | 91麻豆精品国产91久久久更新时间 | 国产三级午夜理伦三级 | 亚洲日本激情 | 在线免费高清 | 精品一区免费 | 亚洲成人在线免费 | 久久99深爱久久99精品 | 96视频在线 | 99久热| 在线看的av网站 | 国产精品乱码久久 | 亚洲欧洲中文日韩久久av乱码 | 免费视频一区二区 | 亚洲精品国产成人av在线 | av在线一级 | 日韩免费电影在线观看 | 人人澡人人爽 | 免费国产黄线在线观看视频 | av在线播放国产 | 狠狠干 狠狠操 | 91精品视频导航 | 久久精品屋| 精品av在线播放 | 成人欧美日韩国产 | 日韩特黄一级欧美毛片特黄 | 久久99精品久久久久久久久久久久 | 亚洲1级片| 六月色婷 | 久久在线精品 | 免费日韩电影 | 97超碰人人澡人人爱 | 亚洲国产福利视频 | 日本中文字幕影院 | 97夜夜澡人人爽人人免费 | 亚洲四虎 | h视频在线看 | 五月天激情综合网 | 国产成人黄色 | 三级av在线免费观看 | 日日草av| 精品国产1区二区 | 国产成人不卡 | 亚洲视频一| 97av视频| 婷婷六月激情 | 色婷婷av在线 | 色偷偷88888欧美精品久久久 | 9999激情| 免费人成在线观看 | 91精品爽啪蜜夜国产在线播放 | 在线观看中文字幕2021 | 91精品免费看 | 久久综合九色综合欧美就去吻 | 久久久免费av| 天天色宗合 | 成人四虎| 91高清在线看 | 久久免费毛片视频 | 欧美精品在线视频观看 | 国产精品理论在线观看 | 亚洲精品乱码久久久久久 | 久久久久久久久久久网站 | 日本精品免费看 | 97精产国品一二三产区在线 | 肉色欧美久久久久久久免费看 | 福利视频 | 韩国一区二区av | 韩日精品在线 | 米奇狠狠狠888| 91网页版在线观看 | 操操爽| 免费中午字幕无吗 | 成人午夜电影网 | 高清有码中文字幕 | 91九色蝌蚪视频在线 | 亚洲国产精品电影在线观看 | 美女网站在线观看 | 热久久99这里有精品 | 三级av黄色 | 在线色吧 | 久久午夜网 | 91久久精品一区二区二区 | 免费日韩一级片 | 在线观看a视频 | 成年人网站免费观看 | 在线视频你懂 | 中文综合在线 | 婷婷六月天在线 | 丁香视频五月 | 国产精品99久久免费观看 | 黄污视频大全 | av激情五月 | 99精品毛片 | 成年人视频在线免费 | 视频一区视频二区在线观看 | 韩国av免费在线观看 | 国产精品久久久久四虎 | 天天操人| 成人av一二三区 | 中文字幕免费高清在线观看 | 久久深夜福利免费观看 | 久久激情视频 久久 | 亚洲视频播放 | 久久激情网站 | 高清国产午夜精品久久久久久 | 国产区在线视频 | 麻豆视频免费播放 | 深爱婷婷激情 | 欧美日韩免费看 | 69久久99精品久久久久婷婷 | 久久精品这里热有精品 | 国产一区在线免费观看视频 | 中文字幕av一区二区三区四区 | 久久性生活片 | 亚洲精品国产精品久久99热 | 欧美超碰在线 | 精品国产一区二区三区四区在线观看 | 黄色最新网址 | 天天干天天碰 | 亚洲精品玖玖玖av在线看 | 日韩综合在线观看 | 成人91免费视频 | 国产精品高清在线 | 欧美性粗大hdvideo | 精品国产精品一区二区夜夜嗨 | 成 人 黄 色 视频播放1 | 国产午夜三级一区二区三 | 六月婷婷色| 五月天婷婷在线视频 | 一区二区精品视频 | 欧美日本在线视频 | 超碰在线9| 香蕉网在线播放 | 伊人中文网| 亚洲高清视频在线观看 | 最新国产一区二区三区 | 亚洲国产精品一区二区久久hs | 久久久国产精品电影 | 久插视频 | 丝袜+亚洲+另类+欧美+变态 | 国产又粗又硬又爽视频 | 人人看看人人 | 中中文字幕av在线 | 深夜免费小视频 | www.亚洲精品在线 | 久久免费看a级毛毛片 | 日韩视频一区二区在线观看 | 国产精品v欧美精品v日韩 | 国产精品视频你懂的 | 国产精品每日更新 | 玖玖视频在线 | 日日夜夜精品免费 | 日本三级人妇 | 国产国语在线 | 亚洲视频网站在线观看 | 久久九九国产视频 | 久久不见久久见免费影院 | 黄色成人av | 日韩中文字幕91 | 成人一级影视 | 国产精品久久婷婷六月丁香 | 992tv成人免费看片 | 玖玖视频网 | 中文字幕一区二区在线观看 | 中文字幕在线免费观看视频 | 99精品国产一区二区三区麻豆 | www.色午夜.com | 成人在线电影观看 | 国产色 在线 | 午夜视频在线网站 | 国产区 在线 | 欧美日韩69| www.超碰 | 日韩理论在线播放 | 国产精品资源在线观看 | 国产一二三四在线视频 | www.激情五月.com | www毛片com| 成片人卡1卡2卡3手机免费看 | 国产艹b视频 | 国产一级黄色电影 | 亚洲精品国久久99热 | 久久久久久久久久久精 | 国产日韩欧美视频 | 成 人 黄 色 视频免费播放 | 午夜精品久久久久久久爽 | 中文字幕精品三区 | 久久久免费毛片 | 国内精品久久影院 | 久久伊人爱 | 成人蜜桃网 | 五月婷婷六月丁香激情 | 国产精品中文字幕av | 中文字幕在线观看免费高清完整版 | 日韩久久在线 | 亚洲人成网站精品片在线观看 | 色综合久久久久久久久五月 | 超碰人人91 | 色干综合| 久久久久久久久电影 | 亚洲欧美偷拍另类 | 五月天天色 | 91资源在线 | 久草视频免费在线观看 | 国内精品视频在线播放 | 字幕网资源站中文字幕 | 国产精品精品国产婷婷这里av | 国产精品嫩草55av | 久久久久国产一区二区三区 | 国产小视频网站 | 全黄色一级片 | 99999精品 | 日日干干 | 丁香高清视频在线看看 | 成人毛片久久 | 欧美激情视频一区二区三区免费 | 成人毛片一区 | 91高清在线看 | 亚洲免费成人 | 亚洲成人一区 | 久久网址 | 草久草久 | 国产在线探花 | 色网站在线看 | 亚洲精品ww | 欧美日韩高清一区二区 国产亚洲免费看 | 日韩av中文字幕在线免费观看 | 久久综合中文字幕 | 热久久免费视频 | 久久精品中文字幕少妇 | 啪啪肉肉污av国网站 | 99久久影视 | 久久国产片 | 日韩视频三区 | 国产日本在线 | 午夜精品久久久久久中宇69 | 91免费观看国产 | 亚洲精品视频网 | 欧洲精品一区二区 | 色国产在线 | av一级片| 国产精品网站一区二区三区 | 久久久久一区二区三区 | 成人超碰在线 | 久久国语 | 久久成人精品电影 | 色综合久久综合网 | 午夜视频在线观看一区二区 | 夜夜骑天天操 | 色婷婷电影网 | 日批视频国产 | 91看片在线免费观看 | 91精品国产综合久久久久久久 | 激情综合色播五月 | 91xav | 色资源网在线观看 | 夜夜操天天干, | 欧美精品天堂 | 一区二区三区在线播放 | 国产成人久久精品77777综合 | 草草草影院 | 99亚洲视频 | 激情五月激情综合网 | 九九视频在线观看视频6 | 免费高清男女打扑克视频 | 久久久久国产精品www | 狠狠色丁香久久婷婷综合丁香 | 国产中文字幕在线视频 | 亚洲人成免费网站 | 日韩在线观看你懂得 | 欧美激情综合五月 | 超级碰碰碰视频 | 欧美日韩高清一区二区 国产亚洲免费看 | 91粉色视频 | 亚州精品一二三区 | 亚洲激情中文 | 天天插日日操 | 日韩成人xxxx | 日本久久精品视频 | 91色蜜桃| 亚洲亚洲精品在线观看 | 久久黄色精品视频 | 久久草草热国产精品直播 | 香蕉视频国产在线 | 国产精品91一区 | 999国内精品永久免费视频 | 日韩一区二区三区视频在线 | 成人av播放 | 特级西西444www大精品视频免费看 | 日韩欧在线 | 美女黄视频免费看 | 永久免费毛片在线观看 | 最新日韩视频 | 久久中文字幕在线视频 | 亚洲永久字幕 | 免费观看丰满少妇做爰 | 超碰在线人人艹 | 美女又爽又黄 | 国产一区在线观看免费 | 国产一区国产精品 | 日韩欧美一区二区三区在线观看 | 亚洲爱av| 91精品无人成人www | 正在播放亚洲精品 | 中文字幕乱码视频 | 国产精品2020 | 香蕉视频亚洲 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 一区二区三区在线视频观看58 | 在线免费观看视频你懂的 | 久久久99久久 | 99夜色 | 婷婷久久国产 | 欧洲精品视频一区 | 国产精品视频免费观看 | 一级α片免费看 | 免费日韩在线 | 久久艹中文字幕 | 91视频 - v11av | 久久综合综合久久综合 | 91桃色在线免费观看 | 久久久免费观看视频 | 久久视频这里只有精品 | 日韩欧美一二三 | 黄色小说网站在线 | 欧美精品乱码久久久久久按摩 | 日韩中文字幕亚洲一区二区va在线 | 一区二区三区久久 | 亚洲免费成人 | 久久91久久久久麻豆精品 | 天天搞天天 | 最新午夜 | 视频成人永久免费视频 | 日韩h在线观看 | 国产一级久久久 | 国产精品久久久久久爽爽爽 | 中文字幕乱码日本亚洲一区二区 | 91网页版在线观看 | 在线精品视频免费播放 | 欧美日韩性生活 | 91九色蝌蚪在线 | 最近中文字幕免费观看 | 午夜视频一区二区 | 中文字幕 影院 | 国产精品二区三区 | 亚洲精品午夜久久久 | 日本99热 | 亚洲人在线7777777精品 | 亚州精品天堂中文字幕 | 九九热1 | 久久久久国 | 精品二区视频 | 欧美午夜精品久久久久 | 午夜视频免费在线观看 | 免费看黄电影 | 色综合色综合久久综合频道88 | 欧美日韩国产色综合一二三四 | 天天干夜夜想 | 免费看黄在线网站 | japanesefreesexvideo高潮| 97精品国产aⅴ | 日韩av在线小说 | 免费久久网站 | 偷拍精偷拍精品欧洲亚洲网站 | 一区二区三区四区精品 | 久久精品一区二区三 | 插婷婷| 亚洲综合激情五月 | 色偷偷中文字幕 | 综合色中文 | 日韩在线视频观看免费 | 91传媒免费观看 | 日韩欧美精品在线视频 | 成人在线观看av | 久久视频在线免费观看 | 国产日韩欧美在线观看 | 日韩欧美极品 | 黄色成人av| 久草在线中文视频 | 五月婷婷综合在线 | 久久久久久久久国产 | 亚洲精品乱码久久久久久久久久 | 欧美高清视频不卡网 | 久久专区| 中文字幕有码在线播放 | 玖玖视频网 | 丁香综合 | 国产精品k频道 | 国产精品久久久久永久免费 | 中文字幕在线看人 | 精品欧美日韩 | 天天干天天拍天天操天天拍 | av在线播放中文字幕 | 四虎永久免费 | 女人18毛片90分钟 | 日日夜操| 欧美一二三视频 | 日韩最新av在线 | 国产拍揄自揄精品视频麻豆 | 91久久精品一区二区三区 | 国产精品久久久久久吹潮天美传媒 | 天天操天天色天天射 | 国产一级片久久 | 91精品高清 | 久草在线视频在线 | 黄色免费av| 国色天香永久免费 | 久久精品播放 | 五月天综合色激情 | av怡红院 | 日韩成人不卡 | 91麻豆产精品久久久久久 | 一色av | 久久成人国产精品免费软件 | 欧美性生活免费看 | 91桃色免费视频 | 中文字幕一区二区在线播放 | 久草久视频 | 999电影免费在线观看2020 | 天天看天天干天天操 | 亚洲天堂精品视频 | 久久国产免费看 | 最新久久久| 成人中心免费视频 | 国产日女人 | 欧美性黑人| 91视频国产免费 | 国产精品美女久久久久久久网站 | 免费看污网站 | 二区三区毛片 | 97电影在线| 国产原创中文在线 | 精品99久久| 国产精品综合久久久 | 国产精品视频观看 | bayu135国产精品视频 | 久草精品在线观看 | 国产精品11| 国产亚洲精品成人 | 在线成人国产 | 一区二区欧美日韩 | 久久狠狠婷婷 | 亚洲欧洲精品一区二区 | 97精品久久人人爽人人爽 | 国产成人av电影 | 欧美巨大荫蒂茸毛毛人妖 | 午夜精品久久久久久久久久久久久久 | 国产三级在线播放 | 天天操偷偷干 | www国产精品com | 日本在线成人 | 婷婷 综合 色 | 伊人天天干 | www.久久久com | 人人爽人人爽人人片av | 日韩精品免费在线播放 | 成年人免费在线 | 高清精品在线 | 亚洲首页 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 国产精品女同一区二区三区久久夜 | 缴情综合网五月天 | 日韩av一卡二卡三卡 | 国产97碰免费视频 | 久草精品免费 | 国产中文字幕在线 | 亚洲热久久 | 亚洲理论在线观看 | 99久久超碰中文字幕伊人 | 99久久99热这里只有精品 | 午夜精品一区二区三区免费 | 色中色亚洲 | 好看的国产精品视频 | 精品在线观看国产 | 成人h动漫精品一区二 | 97色噜噜 | 天天干.com | 欧美激情精品久久久久 | 国产 在线观看 | 国产精品久久久亚洲 | 成人手机在线视频 | 中文字幕综合在线 | 久久久免费精品国产一区二区 | 丁香六月婷婷激情 | 色狠狠婷婷 | av色影院 | 国产伦理一区 | 成人欧美一区二区三区在线观看 | 伊人久久影视 | 人人澡超碰碰97碰碰碰软件 | 亚洲激情六月 | 中文字幕资源网 国产 | 99久e精品热线免费 99国产精品久久久久久久久久 | 久草电影网 | 日日夜夜av| 久久久久久久久久久久久久av | 麻豆国产在线视频 | 精品视频99| 精品国产伦一区二区三区观看方式 | 久久这里 | 狠狠操导航 | 夜添久久精品亚洲国产精品 | 超碰在线成人 | 国产亚洲精品精品精品 | 日韩午夜小视频 | 日韩欧美在线综合网 | 久久超碰网 | 激情欧美一区二区免费视频 | 超碰人人草人人 |