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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

深入理解 Flutter 的编译原理与优化

發布時間:2024/9/3 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 深入理解 Flutter 的编译原理与优化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

阿里妹導讀:對于開發者而言,Flutter工程和我們的Android/iOS工程有何差別?Flutter的渲染和事件傳遞機制如何工作?構建緩慢或出錯又如何去定位,修改和生效呢?凡此種種,都需要對Flutter從設計,開發構建,到最終運行有一個全局視角的觀察。

本文由閑魚技術團隊出品,將以一個簡單的hello_flutter為例,介紹下Flutter相關原理及定制與優化。

Flutter簡介

Flutter的架構主要分成三層:Framework,Engine和Embedder。

Framework使用dart實現,包括Material Design風格的Widget,Cupertino(針對iOS)風格的Widgets,文本/圖片/按鈕等基礎Widgets、渲染、動畫、手勢等。此部分的核心代碼是:flutter倉庫下的flutter package,以及sky_engine倉庫下的io,async,ui(dart:ui庫提供了Flutter框架和引擎之間的接口)等package。

Engine使用C++實現,主要包括:Skia,Dart和Text。Skia是開源的二維圖形庫,提供了適用于多種軟硬件平臺的通用API。其已作為Google Chrome,Chrome OS,Android, Mozilla Firefox, Firefox OS等其他眾多產品的圖形引擎,支持平臺還包括Windows7+,macOS 10.10.5+,iOS8+,Android4.1+,Ubuntu14.04+等。

Dart部分主要包括:Dart Runtime,Garbage Collection(GC),如果是Debug模式的話,還包括JIT(Just In Time)支持。Release和Profile模式下,是AOT(Ahead Of Time)編譯成了原生的arm代碼,并不存在JIT部分。Text即文本渲染,其渲染層次如下:衍生自minikin的libtxt庫(用于字體選擇,分隔行)。HartBuzz用于字形選擇和成型。Skia作為渲染/GPU后端,在Android和Fuchsia上使用FreeType渲染,在iOS上使用CoreGraphics來渲染字體。

Embedder是一個嵌入層,即把Flutter嵌入到各個平臺上去,這里做的主要工作包括渲染Surface設置,線程設置,以及插件等。從這里可以看出,Flutter的平臺相關層很低,平臺(如iOS)只是提供一個畫布,剩余的所有渲染相關的邏輯都在Flutter內部,這就使得它具有了很好的跨端一致性。

Flutter工程結構

本文使用開發環境為flutter beta v0.3.1,對應的engine commit:09d05a389。

以hello_flutter工程為例,Flutter工程結構如下所示:

其中ios為iOS部分代碼,使用CocoaPods管理依賴,android為Android部分代碼,使用Gradle管理依賴,lib為dart代碼,使用pub管理依賴。類似iOS中Cocoapods對應的Podfile和Podfile.lock,pub下則是pubspec.yaml和pubspec.lock。

Flutter模式

對于Flutter,它支持常見的debug,release,profile等模式,但它又有其不一樣。

Debug模式:對應了Dart的JIT模式,又稱檢查模式或者慢速模式。支持設備,模擬器(iOS/Android),此模式下打開了斷言,包括所有的調試信息,服務擴展和Observatory等調試輔助。此模式為快速開發和運行做了優化,但并未對執行速度,包大小和部署做優化。Debug模式下,編譯使用JIT技術,支持廣受歡迎的亞秒級有狀態的hot reload。

Release模式:對應了Dart的AOT模式,此模式目標即為部署到終端用戶。只支持真機,不包括模擬器。關閉了所有斷言,盡可能多地去掉了調試信息,關閉了所有調試工具。為快速啟動,快速執行,包大小做了優化。禁止了所有調試輔助手段,服務擴展。

Profile模式:類似Release模式,只是多了對于Profile模式的服務擴展的支持,支持跟蹤,以及最小化使用跟蹤信息需要的依賴,例如,observatory可以連接上進程。Profile并不支持模擬器的原因在于,模擬器上的診斷并不代表真實的性能。

鑒于Profile同Release在編譯原理等上無差異,本文只討論Debug和Release模式。

事實上flutter下的iOS/Android工程本質上依然是一個標準的iOS/Android的工程,flutter只是通過在BuildPhase中添加shell來生成和嵌入App.framework和Flutter.framework(iOS),通過gradle來添加flutter.jar和vm/isolate_snapshot_data/instr(Android)來將Flutter相關代碼編譯和嵌入原生App而已。因此本文主要討論因flutter引入的構建,運行等原理。編譯target雖然包括arm,x64,x86,arm64,但因原理類似,本文只討論arm相關(如無特殊說明,android默認為armv7)。

Flutter代碼的編譯與運行(iOS)

Release模式下的編譯

release模式下,flutter下iOS工程中dart代碼構建鏈路如下所示:

其中gen_snapshot是dart編譯器,采用了tree shaking(類似依賴樹邏輯,可生成最小包,也因而在Flutter中禁止了dart支持的反射特性)等技術,用于生成匯編形式的機器代碼,再通過xcrun等編譯工具鏈生成最終的App.framework。換句話說,所有的dart代碼,包括業務代碼,三方package代碼,它們所依賴的flutter框架代碼,最終將會變成App.framework。

tree shaking功能位于gen_snapshot中,對應邏輯參見:

engine/src/third_party/dart/runtime/vm/compiler/aot/precompiler.cc

dart代碼最終對應到App.framework中的符號如下所示:

事實上,類似Android Release下的產物(見下文),App.framework也包含了kDartVmSnapshotData,kDartVmSnapshotInstructions,kDartIsolateSnapshotData,kDartIsolateSnapshotInstructions四個部分。為什么iOS使用App.framework這種方式,而不是Android的四個文件的方式呢?原因在于在iOS下,因為系統的限制,Flutter引擎不能夠在運行時將某內存頁標記為可執行,而Android是可以的。

Flutter.framework對應了Flutter架構中的engine部分,以及Embedder。實際中Flutter.framework位于flutter倉庫的/bin/cache/artifacts/engine/ios*下,默認從google倉庫拉取。當需要自定義修改的時候,可通過下載engine源碼,利用Ninja構建系統來生成。

Flutter相關代碼的最終產物是:App.framework(dart代碼生成)和Flutter.framework(引擎)。從Xcode工程的視角看,Generated.xcconfig描述了Flutter相關環境的配置信息,然后Runner工程設置中的Build Phases新增的xcode_backend.sh實現了Flutter.framework的拷貝(從Flutter倉庫的引擎到Runner工程根目錄下的Flutter目錄)與嵌入和App.framework的編譯與嵌入。最終生成的Runner.app中Flutter相關內容如下所示:

其中flutter_assets是相關的資源,代碼則是位于Frameworks下的App.framework和Flutter.framework。

Release模式下的運行

Flutter相關的渲染,事件,通信處理邏輯如下所示:

其中dart中的main函數調用棧如下:

Debug模式下的編譯

Debug模式下flutter的編譯,結構類似Release模式,差異主要表現為兩點:

1.Flutter.framework

因為是Debug,此模式下Framework中是有JIT支持的,而在Release模式下并沒有JIT部分。

2.App.framework

不同于AOT模式下的App.framework是Dart代碼對應的本地機器代碼,JIT模式下,App.framework只有幾個簡單的API,其Dart代碼存在于snapshot_blob.bin文件里。這部分的snapshot是腳本快照,里面是簡單的標記化的源代碼。所有的注釋,空白字符都被移除,常量也被規范化,也沒有機器碼,tree shaking或者是混淆。

App.framework中的符號表如下所示:

對Runner.app/flutter_assets/snapshot_blob.bin執行strings命令可以看到如下內容:

Debug模式下main入口的調用堆棧如下:

Flutter代碼的編譯與運行(Android)

鑒于Android和iOS除了部分平臺相關的特性外,其他邏輯如Release對應AOT,Debug對應JIT等均類似,此處只涉及兩者不同。

Release模式下的編譯

release模式下,flutter下Android工程中dart代碼整個構建鏈路如下所示:

其中vm/isolate_snapshot_data/instr內容均為arm指令,將會在運行時被engine載入,并標記vm/isolate_snapshot_instr為可執行。vm_中涉及runtime等服務(如gc),用于初始化DartVM,調用入口見Dart_Initialize(dart_api.h)。isolate__則是對應了我們的App代碼,用于創建一個新isolate,調用入口見Dart_CreateIsolate(dart_api.h)。

flutter.jar類似iOS的Flutter.framework,包括了engine部分的代碼(Flutter.jar中的libflutter.so),以及一套將Flutter嵌入Android的類和接口(FlutterMain,FlutterView,FlutterNativeView等)。實際中flutter.jar位于flutter倉庫的/bin/cache/artifacts/engine/android*下,默認從google倉庫拉取。當需要自定義修改的時候,可通過下載engine源碼,利用Ninja構建系統來生成flutter.jar。

以isolate_snapshot_data/instr為例,執行disarm命令結果如下:

其Apk結構如下所示:

APK新安裝之后,會根據一個ts的判斷(packageinfo中的versionCode結合lastUpdateTime)來決定是否拷貝APK中的assets,拷貝后內容如下所示:

isolate/vm_snapshot_data/instr均最后位于app的本地data目錄下,而這部分又屬于可寫內容,因此可以通過下載并替換的方式,完成App的整個替換和更新。

Release模式下的運行

Debug模式下的編譯

類似iOS的Debug/Release的差別,Android的Debug與Release的差異主要包括以下兩部分:

1.flutter.jar

區別同iOS

2.App代碼部分

位于flutter_assets下的snapshot_blob.bin,同iOS。

在介紹了iOS/Android下的Flutter編譯原理后,下面著重描述下如何定制flutter/engine以完成定制和優化。鑒于Flutter處于敏捷的迭代中,現在的問題后續不一定是問題,因而此部分并不是要去解決多少問題,而是選取不同類別的問題來說明解決思路。

Flutter構建相關的定制與優化

Flutter是一個很復雜的系統,除了上述提到的三層架構中的內容外,還包括Flutter Android Studio(Intellij)插件,pub倉庫管理等。但我們的定制和優化往往是在flutter的工具鏈相關,具體代碼位于flutter倉庫的flutter_tools包。接下來舉例說明下如何對這部分做定制。

Android部分

相關內容包括flutter.jar,libflutter.so(位于flutter.jar下),gen_snapshot,flutter.gradle,flutter(flutter_tools)。

1.限定Android中target為armeabi

此部分屬于構建相關,邏輯位于flutter.gradle下。當App是通過armeabi支持armv7/arm64的時候,需要修改flutter的默認邏輯。如下所示:

因為gradle本身的特點,此部分修改后直接構建即可生效。

2.設定Android啟動時默認使用第一個launchable-activity,此部分屬于flutter_tools相關,修改如下:

這里的重點不是如何去修改,而是如何去讓修改生效。原理上來說,flutter run/build/analyze/test/upgrade等命令實際上執行的都是flutter(flutter_repo_dir/bin/flutter)這一腳本,再通過腳本通過dart執行flutter_tools.snapshot(通過packages/flutter_tools生成)。其邏輯如下:

不難看出要重新構建flutter_tools,可以刪除flutter_repo_dir/bin/cache/flutter_tools.stamp(這樣重新生成一次),或者屏蔽掉if/fi判斷(每一次都會重新生成)。

3.如何在Android工程Debug模式下使用release模式的flutter

當開發者在研發中發現flutter有些卡頓時,猜測可能是邏輯的原因,也可能是因為是Debug下的flutter。此時可以構建release下的apk,也可以將flutter強制修改為release模式如下:

iOS部分

相關內容包括:Flutter.framework,gen_snapshot,xcode_backend.sh,flutter(flutter_tools)。

1.優化構建過程中反復替換Flutter.framework導致的重新編譯

此部分邏輯屬于構建相關,位于xcode_backend.sh中,Flutter為了保證每次獲取到正確的Flutter.framework,每次都會基于配置(見Generated.xcconfig配置)查找和替換Flutter.framework,但這也導致了工程中對此Framework有依賴部分代碼的重新編譯,修改如下:

2.如何在iOS工程Debug模式下使用release模式的flutter

只需要將Generated.xcconfig中的FLUTTER_BUILD_MODE修改為release,FLUTTER_FRAMEWORK_DIR修改為release對應的路徑即可。

3.armv7的支持

原始文章請參見:

https://github.com/flutter/engine/wiki/iOS-Builds-Supporting-ARMv7

事實上flutter本身是支持iOS下的armv7的,但目前并未提供官方支持,需要自行修改相關邏輯,具體如下:

a.默認的邏輯可以生成

Flutter.framework(arm64)

b.修改flutter以使得flutter_tools可以每次重新構建,修改build_aot.dart和mac.dart,將相關針對iOS的arm64修改為armv7,修改gen_snapshot為i386架構。

其中i386架構下的gen_snapshot可通過以下命令生成:

這里有一個隱含邏輯:

構建gen_snapshot的CPU相關預定義宏(x86_64/__i386等),目標gen_snapshot的arch,最終的App.framework的架構整體上要保持一致。即x86_64->x86_64->arm64或者i386->i386->armv7。

c.在iPhone4S上,會發生因gen_snapshot生成不被支持的SDIV指令而造成EXC_BAD_INSTRUCTION(EXC_ARM_UNDEFINED)錯誤,可通過給gen_snapshot添加參數--no-use-integer-division實現(位于build_aot.dart)。其背后的邏輯如下圖所示:

d.基于a和b生成的Flutter.framework,將其lipo create生成同時支持armv7和arm64的Flutter.framework。

e.修改Flutter.framework下的Info.plist,移除

同理,對于App.framework也要作此操作,以免上架后會受到App Thining的影響。

flutter_tools的調試

例如我們想了解flutter在構建debug模式下的apk的時候,具體執行的邏輯如何,可以按照下面的思路走:

a.了解flutter_tools的命令行參數

b.以dart工程形式打開packages/flutter_tools,基于獲得的參數修改flutter_tools.dart,設置命令行dart app即可開始調試。

定制engine與調試

假設我們在flutter beta v0.3.1的基礎上進行定制與業務開發,為了保證穩定,一定周期內并不升級SDK,而此時,flutter在master上修改了某個v0.3.1上就有的bug,記為fix_bug_commit。如何才能跟蹤和管理這種情形呢?

1.flutter beta v0.3.1指定了其對應的engine commit為:09d05a389,見

flutter/bin/internal/engine.version。

2.獲取engine代碼

3.因為2中拿到的是master代碼,而我們需要的是特定commit(09d05a389)對應的代碼庫,因而從此commit拉出新分支:custom_beta_v0.3.1。

4.基于custom_beta_v0.3.1(commit:09d05a389),執行gclient sync,即可拿到對應flutter beta v0.3.1的所有engine代碼。

5.使用git cherry-pick fix_bug_commit將master的修改同步到custom_beta_v0.3.1,如果修改有很多對最新修改的依賴,可能會導致編譯失敗。

6.對于iOS相關的修改執行以下代碼:

如果需要調試Flutter.framework源代碼,構建的時候命令如下:

用生成產物替換掉flutter中的Flutter.framework和gen_snapshot,即可調試engine源代碼。

7.對于Android相關的修改執行以下代碼:

即可生成針對Android的arm&debug/release/profile

的產物??捎脴嫿óa物替換

flutter/bin/cache/artifacts/engine/android*下的gen_snapshot和flutter.jar。

如果對文本的內容有疑問或指正,歡迎告知我們。

另閑魚技術團隊誠聘各路英才,flutter,C++,iOS/Android,Java都要,歡迎簡歷來砸。聯系郵箱: kylewong.wk@alibaba-inc.com。

參考文檔:

1.Flutter's modes

(https://github.com/flutter/flutter/wiki/Flutter%27s-modes)

2.iOS Builds Supporting ARMv7

(https://github.com/flutter/engine/wiki/iOS-Builds-Supporting-ARMv7)

3.Contributing to the Flutter engine

(https://github.com/flutter/engine/blob/master/CONTRIBUTING.md)

4.Flutter System Architecture

(https://docs.google.com/presentation/d/1cw7A4HbvM_Abv320rVgPVGiUP2msVs7tfGbkgdrTy0I/edit)

5.The magic of flutter

(https://docs.google.com/presentation/d/1B3p0kP6NV_XMOimRV09Ms75ymIjU5gr6GGIX74Om_DE/edit)

6.Symbolicating production crash stacks

(https://github.com/flutter/engine/wiki/Symbolicating-production-crash-stacks)

7.flutter.io

(https://flutter.io/docs)

8.獲取本文使用的源代碼

(https://github.com/FlutterRepo/hello_flutter.git)

每天一篇技術文章,

看不過癮?

關注“阿里巴巴機器智能”微信公眾號

發現更多AI干貨。

總結

以上是生活随笔為你收集整理的深入理解 Flutter 的编译原理与优化的全部內容,希望文章能夠幫你解決所遇到的問題。

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

亚洲精品在线观看的 | 欧美福利片在线观看 | 97在线视| 天堂av免费在线 | 精品不卡视频 | 在线观看色网 | 国产成人61精品免费看片 | 狠狠色丁香婷婷综合基地 | 亚洲最新毛片 | 91久久国产自产拍夜夜嗨 | av丁香| 国产成人免费网站 | 91精品久久香蕉国产线看观看 | 福利一区在线视频 | 国产日韩精品一区二区三区在线 | 久久视频这里有久久精品视频11 | 黄色特级片 | 99精品国产一区二区 | 日韩在线视频免费播放 | 日韩视频区 | 午夜精品久久久久久久久久久久久久 | 久久视频这里只有精品 | 欧美日本日韩aⅴ在线视频 插插插色综合 | 日本三级人妇 | 国产a级片免费观看 | 久久伊99综合婷婷久久伊 | 精品国产免费人成在线观看 | 国产精品美女视频网站 | 成人av电影免费观看 | 午夜三级理论 | 久久午夜视频 | 国产精品婷婷午夜在线观看 | 国产高清视频在线 | 日韩成人高清在线 | 一个色综合网站 | 精品国产网址 | 国产精品中文字幕在线播放 | 国产午夜精品一区二区三区在线观看 | 久草网站 | 久久在线看 | 国产第页 | 成人黄色电影免费观看 | 午夜久久久久久久久 | 天天搞夜夜骑 | 日本亚洲国产 | 二区精品视频 | 久久深夜福利免费观看 | 人人干在线 | 狠狠色狠狠色综合日日小说 | 国产精品99视频 | 国产91免费观看 | 亚洲国产高清在线 | 久久精品亚洲一区二区三区观看模式 | 国产乱码精品一区二区三区介绍 | 黄色日本片 | 视频在线观看亚洲 | 久久亚洲免费视频 | 人人爱人人射 | 国产黑丝一区二区三区 | 人人爱人人舔 | 黄色三级免费片 | 丁香婷婷射 | 婷婷射五月 | 国产裸体视频bbbbb | 日本系列中文字幕 | 波多野结衣一区三区 | 日韩网站免费观看 | 丁香国产视频 | 日日爱网站 | 国产精品乱码高清在线看 | 五月婷婷丁香六月 | 91久久久久久久一区二区 | 国产手机在线观看视频 | avlulu久久精品 | 久久成人免费 | 国产精品第2页 | 日韩av偷拍| 精品一区二区在线播放 | 国内精品在线观看视频 | 91精品视频免费观看 | 在线观看岛国av | 久久国产精品久久精品国产演员表 | 亚洲特级毛片 | 91成人精品一区在线播放69 | 日日爽天天| 国产综合片 | 中文字幕影视 | 国产精品一区二区久久国产 | 97超碰人 | 欧美日韩中文字幕综合视频 | 久久亚洲免费视频 | 久久视频在线视频 | 国产护士av| 久久久久久国产精品亚洲78 | 天天干,天天草 | 国产精品美女免费视频 | 午夜视频在线观看一区二区三区 | 国产伦理一区二区 | 深爱激情婷婷网 | 中文字幕一区二区三区久久蜜桃 | 国产资源网 | 这里只有精彩视频 | 丁香花在线视频观看免费 | 99久久久久久 | 久久综合中文字幕 | 国产成人精品av在线观 | av不卡免费看 | 亚洲精品视频一 | 免费在线电影网址大全 | 精品久久久久久久久久久久久久久久 | 亚洲精品福利在线 | 在线观看av大片 | 99久久99热这里只有精品 | 国产精品6999成人免费视频 | 国产精品久久久久9999吃药 | 91精品国产欧美一区二区成人 | 国产精品精品久久久久久 | 精品一区二区免费 | 精品久久久久久久久中文字幕 | 91精品久久久久久粉嫩 | 国产中文字幕国产 | 一区二区三区韩国免费中文网站 | 久久成人免费视频 | 97超碰站| 久久午夜影视 | 国产成人久久精品77777综合 | 91精品成人 | 亚洲精品乱码久久久久久按摩 | 欧美日韩亚洲国产一区 | 国产精品成人一区二区三区吃奶 | 欧洲亚洲激情 | 成人欧美日韩国产 | 91av播放| 婷婷夜夜 | 2020天天干夜夜爽 | 久久久福利 | www.69xx| 日韩动态视频 | 91在线观看高清 | 久操免费视频 | 成人香蕉视频 | 激情五月六月婷婷 | 国产成人免费观看久久久 | 久久亚洲福利视频 | 国产精品久久久电影 | 亚洲欧洲精品一区二区精品久久久 | 日韩在线免费 | 国产在线观看免费 | 成人黄色免费观看 | 99久久99久久精品国产片果冰 | 国产涩图 | 久久国产精品99精国产 | 亚洲色影爱久久精品 | 开心婷婷色 | 手机看片福利 | 国产亚洲精品中文字幕 | 福利av影院 | 色婷婷狠狠操 | 国产精品精品 | 婷婷亚洲综合五月天小说 | 成人a级黄色片 | 日韩理论视频 | 成人av.com | 四虎免费在线观看视频 | 999久久国产 | 天天爱天天舔 | 免费视频91蜜桃 | 天堂av在线网站 | 黄色国产精品 | av再线观看 | 国产麻豆视频免费观看 | 2019中文最近的2019中文在线 | 91精品久久久久久久91蜜桃 | 五月天,com | 青春草免费在线视频 | 亚洲欧美日韩精品久久奇米一区 | 国产一卡二卡在线 | 精品一区二区免费在线观看 | 日韩成人在线免费观看 | 久久综合成人 | 亚洲精品中文字幕在线观看 | 精品久久免费 | av理论电影 | 日日爱视频 | 91成人免费观看视频 | 日韩一级电影在线观看 | 亚洲精选国产 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 亚洲激情精品 | 99亚洲视频| 免费久久网站 | 成人97视频一区二区 | 亚洲电影影音先锋 | 亚洲一区二区三区四区在线视频 | 精品免费久久久久 | 又黄又爽又湿又无遮挡的在线视频 | 中文字幕在线乱 | 18pao国产成视频永久免费 | 91黄色影视| 亚洲人片在线观看 | 午夜精品久久久久久久久久 | 美女网站黄在线观看 | 免费麻豆网站 | 久久99视频精品 | 国产成人综 | 亚洲va欧美va人人爽 | 中文字幕在线观看完整版电影 | 精品国产自 | 久久精品国产一区 | 亚洲精品字幕在线观看 | 久久桃花网 | 国产精品视频免费观看 | av手机在线播放 | 亚洲精品美女久久17c | 97超碰在线久草超碰在线观看 | 色综合 久久精品 | 亚洲精品动漫久久久久 | 五月婷婷激情综合 | 天天综合区| 国产福利免费看 | 亚洲激情电影在线 | 久草久草视频 | 丁香六月欧美 | 欧美一区二区三区在线观看 | 亚洲一级电影视频 | 亚洲视频精品 | 国产视频一区二区在线 | 久久国产免费视频 | 极品嫩模被强到高潮呻吟91 | 在线播放日韩 | 日韩视频免费在线 | 黄色免费网站 | 欧美成人手机版 | 国产亚州av | 欧美 日韩 性| 国产一区二区精品久久 | 国产视频在线观看一区二区 | 日韩视频图片 | 精品国产一区二区三区av性色 | 国产在线看 | 深爱开心激情网 | 婷婷干五月 | 999久久久欧美日韩黑人 | 国产视频一区二区在线观看 | 日韩精品中文字幕久久臀 | 国产精品毛片一区视频 | 99在线免费视频 | 麻豆久久 | 天天干天天干天天 | 天天插天天干天天操 | 中文字幕视频观看 | 亚洲午夜av | 在线观看色网站 | 免费情缘 | av在线影视 | 久久免费高清视频 | 久久草精品 | 久久精品久久精品久久精品 | 99国产精品一区二区 | 亚洲成色| 国产成人精品一区二区三区网站观看 | 97理论片| 精品美女在线视频 | 久久不卡电影 | 91久久精品一区二区二区 | 久久精品福利视频 | 久久免费99精品久久久久久 | 亚洲美女精品 | 另类五月激情 | 天天摸天天干天天操天天射 | 国产成在线观看免费视频 | 久草在线视频免赞 | 中文字幕在线人 | av性在线| 麻豆视频在线观看免费 | 日韩欧美在线第一页 | 这里只有精品视频在线 | 国产黄色精品在线 | 四虎在线免费观看视频 | 黄色片毛片 | 亚洲午夜久久久影院 | www.天天综合 | 国产美女免费观看 | 四虎影视久久久 | 亚洲人在线视频 | 日韩大片在线免费观看 | 欧美一区二区三区在线播放 | 久久综合欧美 | 欧美一区二区日韩一区二区 | 在线 成人 | 成年人视频免费在线播放 | 粉嫩一区二区三区粉嫩91 | 国产精品自产拍 | 日本精品在线 | 欧美精品久久久久久 | 女人18毛片a级毛片一区二区 | 91精品一区二区三区蜜臀 | 久草在线免费色站 | 国产999免费视频 | 国产视频日韩视频欧美视频 | 成人羞羞视频在线观看免费 | 在线观看视频免费大全 | 国产一级性生活视频 | 久久伊人国产精品 | 国产黄在线免费观看 | 黄av资源| 免费看污污视频的网站 | 色综合久久综合中文综合网 | www黄| 天天射网站 | 久草在线视频精品 | 日本久久不卡视频 | 亚洲欧美日韩精品一区二区 | 韩日电影在线观看 | 天天天天爱天天躁 | 成人国产精品一区二区 | 免费看一及片 | 亚洲精品在线观看不卡 | 日韩精品在线一区 | 国产一区黄色 | 国产精品va在线 | 不卡精品视频 | 亚洲国产成人在线播放 | 一区二区视频在线免费观看 | 日韩欧美一区二区三区视频 | 97在线视频免费播放 | 欧美午夜寂寞影院 | 狠狠色丁香九九婷婷综合五月 | 色综合久久久久久中文网 | 日韩在线不卡视频 | 婷婷丁香视频 | 我要色综合天天 | 亚洲成a人片在线观看网站口工 | 三级黄色三级 | 9在线观看免费高清完整版 玖玖爱免费视频 | av福利在线看 | 国产成人精品在线观看 | 亚洲人成人天堂h久久 | 91完整版观看 | 激情五月在线 | 久久久999精品视频 国产美女免费观看 | 久久综合色综合88 | 久久婷婷色 | 在线电影 一区 | 国产成人一区二区三区在线观看 | 天天插天天操天天干 | 激情欧美一区二区三区免费看 | 中文字幕av最新更新 | av在线免费网 | 久久久久亚洲天堂 | 中文字幕在线观看视频网站 | 日韩中文字幕亚洲一区二区va在线 | 精品久久久久久亚洲综合网 | 亚洲热视频 | 很黄很黄的网站免费的 | 97在线免费观看 | 四虎影视成人永久免费观看亚洲欧美 | 看毛片网站| 国产视频一区精品 | 狠狠色噜噜狠狠狠狠2021天天 | 国产中文字幕大全 | 中文字幕视频一区 | 日本在线观看一区二区三区 | 中文字幕在线字幕中文 | 久久久官网| 国产1区2区| 九九九在线 | 午夜精品电影一区二区在线 | 91高清免费观看 | 麻豆视频在线播放 | 亚洲区色 | 亚洲激情综合网 | 久久在视频 | 亚洲精品高清在线 | 免费观看一区 | 激情五月综合 | 91网站免费观看 | 久久久久亚洲最大xxxx | 中文字幕高清 | 国产色综合天天综合网 | 美女久久久久 | 国产精品一二三 | 99这里有精品 | 日产乱码一二三区别免费 | 九九热99视频 | 免费看av片网站 | 国产v亚洲v | 国产一区二区综合 | 日韩最新av在线 | 精品国产成人 | 久久 亚洲视频 | 五月婷婷综 | 911国产在线观看 | 在线观看黄色免费视频 | 国产亚洲片 | 国产99在线免费 | 日韩在线国产 | 精品福利在线观看 | 精品999久久久 | 精品视频久久 | 超碰免费在线公开 | 狠狠操.com| 国产精品99久久久久的智能播放 | 精品欧美小视频在线观看 | 精品免费国产一区二区三区四区 | 亚洲综合少妇 | 黄色特级毛片 | 国产精品入口麻豆 | 日韩免费在线网站 | 日韩一区二区三区免费电影 | 日韩欧美视频在线免费观看 | 丁香色婷 | 欧美资源在线观看 | 在线观看av不卡 | 久久高清片 | 久久久久亚洲国产 | 成年人在线免费看视频 | 国际av在线 | 日韩欧美在线综合网 | 91av小视频 | 亚洲国产免费看 | 91在线免费播放 | 九九视频这里只有精品 | 久久久久国产一区二区三区四区 | 99视频在线看 | 色天天 | 国产精品欧美久久久久三级 | 一区二区视频在线看 | av线上免费看| 欧美精品九九99久久 | 亚洲精品久久久久www | 日韩av进入 | 91色在线观看 | 国产精品久久久久久一区二区三区 | 精品国产一区二区三区久久影院 | 欧美人交a欧美精品 | 91精品一 | 久久手机在线视频 | 黄色网在线免费观看 | 亚洲视频在线免费观看 | 国产精品久久在线观看 | jizz欧美性9 国产一区高清在线观看 | 日本三级全黄少妇三2023 | 免费网站污| 日韩色视频在线观看 | 国产精品视频 | 中文在线 | 黄免费在线观看 | 国产精品videossex国产高清 | 国产伦理一区二区 | 在线黄色观看 | 亚洲欧美成人在线 | 日本一区二区免费在线观看 | 999久久久久久久久久久 | 成人免费一区二区三区在线观看 | 国产三级精品三级在线观看 | 91毛片在线观看 | 在线免费观看一区二区三区 | 亚洲成人av片在线观看 | 日韩成人精品一区二区 | 天天干天天操天天 | 久久人人精 | 亚洲最新在线 | 五月天综合网 | 2022久久国产露脸精品国产 | 日本中文在线观看 | 91麻豆精品国产91久久久更新时间 | 久久久观看 | 最近中文字幕国语免费高清6 | av不卡中文| a在线观看免费视频 | 97视频在线免费 | 日韩av在线高清 | 在线观看视频免费大全 | 又污又黄的网站 | 91传媒在线看 | 999国内精品永久免费视频 | 天天干夜夜操视频 | 国产成人福利在线 | 69热国产视频 | 丰满少妇在线观看资源站 | 亚洲最新视频在线 | 日韩一区二区三 | 最新av电影网站 | 91精品国产一区二区三区 | 色综合久久中文字幕综合网 | 欧美日韩视频一区二区三区 | 婷婷网在线 | 亚洲国产精品va在线看 | 91av影视 | 亚洲国产精品传媒在线观看 | 在线成人一区二区 | 黄色资源在线观看 | 五月天激情婷婷 | 婷婷综合影院 | 午夜精品一区二区三区在线播放 | 日日操日日操 | 天天操天天是 | 久久亚洲综合国产精品99麻豆的功能介绍 | 免费欧美高清视频 | 国产第一福利网 | 亚洲人人爱 | av免费在线看网站 | 亚洲欧洲国产日韩精品 | 亚洲天堂网视频在线观看 | 日韩一级片网址 | 日韩三级视频 | 欧美日韩免费在线视频 | 在线直播av | av在线观| 久精品视频免费观看2 | 91视频专区| 精品国产精品久久一区免费式 | 成人午夜黄色影院 | 成年人在线免费看视频 | 国内综合精品午夜久久资源 | 国产精品美女久久久久久免费 | 亚洲成人av片在线观看 | 亚洲美女精品区人人人人 | 午夜资源站 | 99精品视频在线观看播放 | 婷婷5月激情5月 | 国产成人久久 | 又黄又爽的免费高潮视频 | 97精品超碰一区二区三区 | 亚洲精品视频在线观看视频 | 亚洲综合精品在线 | 免费看的av片 | 韩日电影在线免费看 | 激情五月婷婷综合网 | 成年人app网址 | 久久热亚洲 | 国产1区在线观看 | 欧美另类美少妇69xxxx | 99久久婷婷国产一区二区三区 | 97视频免费看 | 日本中文在线观看 | 免费看的av片 | 久久综合网色—综合色88 | 丝袜美腿av | 亚洲四虎在线 | 午夜久草| 久久久精品国产一区二区三区 | 日韩成片| 国产在线观看污片 | 久草在线视频在线 | 亚洲精品成人 | 久久久久国 | 全黄网站 | 国产99久久九九精品免费 | 在线中文字幕一区二区 | 激情伊人五月天久久综合 | 欧美日韩精品在线视频 | 欧美日韩综合在线观看 | 免费高清av在线看 | 丝袜制服综合网 | 91免费视频黄 | 久久香蕉国产精品麻豆粉嫩av | 国产在线一区观看 | 久草网站在线观看 | 国内精品久久久久久久影视麻豆 | 日韩精品中文字幕av | www.狠狠操.com | 91av资源在线 | 91成年视频 | 日韩二级毛片 | 久久电影中文字幕视频 | 色婷婷狠狠五月综合天色拍 | 日韩黄在线观看 | 黄色免费视频在线观看 | 国产一级高清 | 日日夜夜天天 | 国产黄色精品网站 | 国产一区免费在线 | 日韩女同一区二区三区在线观看 | 欧美日韩视频免费 | 天天摸日日操 | 人人舔人人 | 一本一道久久a久久精品蜜桃 | 亚洲精品1区2区3区 超碰成人网 | 狠狠色网 | 国产一区二区在线观看免费 | 色视频 在线 | 国产免费观看久久 | 亚洲永久字幕 | 国产成人免费精品 | 色天天 | 婷婷久久丁香 | 日韩免费视频线观看 | 91视频 - 114av | 91黄色小网站 | 午夜天使 | 日韩黄色在线 | 在线视频区 | 国产精品一区二区免费视频 | 久久久久国产成人精品亚洲午夜 | 五月色丁香 | 免费视频在线观看网站 | 国产午夜在线 | 日日精品 | 欧美一级免费高清 | 91精品久久久久久粉嫩 | 欧美日韩一区久久 | 97国产超碰在线 | 综合网天天射 | 欧美特一级 | 久久曰视频 | 狠狠干狠狠操 | 久久久国产一区二区 | 国产精品一区在线播放 | 亚洲春色成人 | 成在线播放 | 91麻豆精品国产91久久久更新时间 | 手机av电影在线观看 | 亚洲国产精品日韩 | 成人啪啪18免费游戏链接 | 成人小视频在线观看免费 | 精品国产成人在线 | 国内精品在线看 | 国产黄色大全 | 免费在线观看黄色网 | 精品夜夜嗨av一区二区三区 | 九色91av | 亚洲手机av | 国产美女精品人人做人人爽 | 五月天色站| 日韩免费在线一区 | 国产最新视频在线 | 久久免费久久 | 久久免费视频在线观看6 | 久久综合色8888| 69久久夜色精品国产69 | 丁香久久激情 | 欧美黄网站 | 欧美一级片免费在线观看 | 国产精品久久久久久久妇 | 六月色婷婷 | 亚洲三级影院 | 久久婷婷开心 | 蜜桃传媒一区二区 | 狠狠躁夜夜av | 国产精品12345| 99久久婷婷国产综合亚洲 | 黄色影院在线观看 | 国产喷水在线 | 三上悠亚一区二区在线观看 | 久久国产精品一区二区 | 国产成人一区二 | 99视频精品在线 | 国产精品亚洲片在线播放 | 在线观看免费高清视频大全追剧 | 日韩高清免费在线观看 | 91网免费看| 射射色 | 在线国产能看的 | 天天综合天天做天天综合 | 伊人宗合| 一区二区三区高清不卡 | 日韩av片无码一区二区不卡电影 | 久操视频在线免费看 | 欧美一级大片在线观看 | 天天草夜夜 | 欧美一级视频免费看 | 手机在线中文字幕 | av 在线观看| 日韩r级在线 | 在线观看va | 久久久99精品免费观看app | 久久综合九色综合久久久精品综合 | 日本少妇高清做爰视频 | 色视频网站在线 | 亚洲一区不卡视频 | 成人在线观看免费视频 | 欧美日韩免费一区 | 一区在线电影 | 国产视频日本 | 国产精品热 | 日韩国产欧美在线播放 | 亚洲精品一区二区三区四区高清 | 国产精品观看视频 | 久久成人在线视频 | 国产在线播放一区二区 | 97手机电影网 | 久久伊人操 | 四虎在线免费 | 日日夜夜草| 日日干av | 我爱av激情网 | 一区二区三区免费在线观看 | 超碰999| 久久96国产精品久久99软件 | 日本在线观看一区二区 | 色妞色视频一区二区三区四区 | 国产中文字幕在线免费观看 | 综合网成人 | 欧美日韩xx | 九精品 | 91大神一区二区三区 | 日韩专区在线观看 | 国产精品欧美久久久久久 | 欧美在线视频精品 | 在线观看韩日电影免费 | 欧美在线91 | 91九色蝌蚪国产 | 看av在线| 江苏妇搡bbbb搡bbbb | 在线看国产日韩 | 少妇av片| 激情五月婷婷综合 | 99人久久精品视频最新地址 | 综合av在线 | 欧美日韩国产二区 | 手机av观看| 黄网站免费大全入口 | 日本中文字幕免费观看 | 在线播放亚洲激情 | 美女视频黄,久久 | 日韩在线视 | 中文字幕在线免费观看 | 久免费 | 精品国产资源 | 国产成年免费视频 | 免费在线观看午夜视频 | 婷婷久久久久 | 国产美女精品在线 | 永久中文字幕 | 国产精品激情在线观看 | 日韩天天操 | 91av在线看 | 黄色免费网站下载 | 精品999国产 | 国产一区免费看 | 国产精品69久久久久 | 国产一区高清在线 | 91av视频播放 | 97超碰网| 国产精品麻豆91 | 在线视频免费观看 | 亚洲最大免费成人网 | 激情五月婷婷综合网 | 久久国产精品偷 | 91传媒在线 | 天堂成人在线 | 国产精品美 | 国产资源免费 | 93久久精品日日躁夜夜躁欧美 | 久久精品一区二区三 | 91av看片 | 最新日韩在线观看 | 中文字幕在线视频一区二区 | 九色琪琪久久综合网天天 | 亚洲精品裸体 | 狠狠色狠狠色合久久伊人 | 在线观看你懂的网址 | 免费av观看网站 | 免费久草视频 | 天天插日日操 | 亚洲五月婷 | 狠狠色噜噜狠狠狠 | 在线一区电影 | 新版资源中文在线观看 | 99精品欧美一区二区三区黑人哦 | 免费看黄色毛片 | 国产精品高潮久久av | 国产黄色片一级 | 精品一区二区电影 | 国产黄色成人av | 欧美日本三级 | 一区二区三区四区精品视频 | 亚洲综合激情 | 国产午夜在线观看 | 欧美精品天堂 | 欧美激情视频在线观看免费 | 97视频在线观看视频免费视频 | 99热在线这里只有精品 | 国产一级免费观看 | 日日夜夜国产 | 综合在线观看色 | 免费看成人a | 亚洲精品成人av在线 | 国产欧美综合在线观看 | 中文字幕一区二区三区精华液 | 久久精品亚洲 | 欧美午夜理伦三级在线观看 | 精品国产乱码久久久久久三级人 | 在线视频观看你懂的 | 久久久久国产一区二区三区四区 | 毛片网站在线看 | www.天天干 | 欧美亚洲国产日韩 | 国产精品久久久久永久免费 | 韩日av一区二区 | 精品国产日本 | 国产一二区视频 | 中文字幕免费一区 | 久久久精品国产免费观看一区二区 | 天天综合天天综合 | 91超级碰| 一区二区三区在线不卡 | 日韩精品字幕 | 久久亚洲日本 | 日韩视频中文字幕在线观看 | 精品国产欧美一区二区三区不卡 | 国产美女精品视频 | 国产亲近乱来精品 | 色姑娘综合网 | 国产精品va最新国产精品视频 | 中文字幕亚洲欧美日韩2019 | 亚洲欧美婷婷六月色综合 | 久久久999精品视频 国产美女免费观看 | 视频国产一区二区三区 | 最新不卡av | 国产69久久精品成人看 | 精品在线视频一区 | 综合亚洲视频 | 欧美一级淫片videoshd | 久久综合九色综合久久久精品综合 | 在线视频欧美精品 | 狠狠躁日日躁 | 国产精品欧美激情在线观看 | av中文字幕av | 黄色日视频 | 日韩精品专区在线影院重磅 | 久久国产精品色av免费看 | 97av免费视频 | 国内精品久久久久久 | 亚洲国产成人久久综合 | 日韩精品极品视频 | 国产成人综合图片 | 国产成人精品久久久久蜜臀 | 久久久免费电影 | 午夜999 | 精品国产成人在线影院 | 国产精品自产拍在线观看 | 日韩三级av | 激情欧美丁香 | 激情丁香5月 | 国产精品精品国产婷婷这里av | 五月激情婷婷丁香 | 亚洲综合色婷婷 | 91漂亮少妇露脸在线播放 | 精品久久一区二区三区 | 99久在线精品99re8热视频 | 亚洲欧洲精品一区二区 | 国产手机av | 国产黄色片在线 | 91av在线免费播放 | 国产亚洲aⅴaaaaaa毛片 | 99免在线观看免费视频高清 | av免费网站| www色网站| 日韩两性视频 | 97电影在线观看 | 国产精品美女久久久久久 | 中文字幕乱码在线播放 | 亚洲激情视频在线观看 | 久草在线资源观看 | 又大又硬又黄又爽视频在线观看 | 国产又粗又硬又爽视频 | 在线观看日本高清mv视频 | 超碰在线观看av | 精品久久久一区二区 | 亚洲精品乱码久久久久久久久久 | www.xxxx欧美 | 不卡的av在线| 日韩精品一区二区不卡 | 国产成人亚洲精品自产在线 | 国产成人精品国内自产拍免费看 | 欧美黄网站 | 久久在线免费观看视频 | 在线看一区 | 天天鲁天天干天天射 | 午夜精品一区二区三区在线播放 | 亚洲精品大片www | 久久久久中文 | 韩国三级一区 | 日本在线视频一区二区三区 | 国产一级在线视频 | 久久久免费精品国产一区二区 | 日韩欧美一二三 | 国产成人三级三级三级97 | 亚洲视频在线观看网站 | 久久人人爽人人 | 国产精品成人一区二区 | 在线视频一二三 | 激情网五月婷婷 | 亚洲免费公开视频 | 一区二区精品国产 | 一区二区伦理电影 | 国产精品久久久久久久久久久免费 | 中文字幕一区二区三区四区久久 | 狠狠操综合网 | 久久久福利视频 | 黄色小网站在线观看 | 狠狠干 狠狠操 | www.香蕉视频 | 成年人在线免费视频观看 | www.一区二区三区 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 久99久精品视频免费观看 | 成片人卡1卡2卡3手机免费看 | 丁香综合五月 | 久久99久国产精品黄毛片入口 | 三级黄色片在线观看 | 精品伊人久久久 | wwwww.国产| 啪啪免费试看 | 五月天激情在线 | 成人午夜性影院 | 国产精品成人免费一区久久羞羞 | 国产性xxxx| 亚洲精品五月天 | 天天射,天天干 | 亚洲综合色激情五月 | 色99之美女主播在线视频 | 国产91区 | 久久久免费看片 | 亚洲欧美日韩精品久久久 | 亚州av一区 | 日本精品中文字幕 | 色综合天天狠天天透天天伊人 | 免费看的黄网站软件 | 天天曰天天 | 2018精品视频 | 亚洲九九 | 国产老熟 | 久久成年人 | 久久国产美女视频 | 欧美日韩中文视频 | 日韩av在线网站 | 在线免费观看视频你懂的 | 4p变态网欧美系列 | 九色91福利 | 日韩中文字幕亚洲一区二区va在线 | 日韩啪视频 | 国产香蕉97碰碰久久人人 | 久草久草视频 | av噜噜噜在线播放 | 日韩xxxbbb | 成年人免费在线观看网站 | 免费在线观看中文字幕 | 一级黄色片在线观看 | 国产一二三区在线观看 | 亚洲一区尤物 | 亚洲欧洲在线视频 | 伊人超碰在线 | 天天操操操操操 | 国产一级二级av | 精品黄色视| 永久免费毛片 | 91在线看视频 | 91精品国产亚洲 | 人人爽人人片 | 成人福利在线播放 | 2019中文字幕第一页 | 亚洲综合色丁香婷婷六月图片 | 成人97视频一区二区 | 日韩网 | 久久精品免费观看 | 91在线免费观看国产 | 色播激情五月 | 99免费精品| 九九九热精品免费视频观看网站 | 午夜视频一区二区三区 | 成人国产精品电影 | 精品国产一区二区三区四区在线观看 | 精品女同一区二区三区在线观看 | 人人舔人人爱 | www日韩在线 | 国产亚洲欧美一区 | 500部大龄熟乱视频使用方法 | 香蕉久草 | 99精品免费久久久久久久久日本 | 天天操天天射天天操 | 国产一区二区三区四区大秀 | 国产二区电影 | 欧美久久久久久久久 | 一级黄色av | 一级黄色在线视频 | 久久久国产一区二区三区四区小说 | 久久99日韩| 黄色在线观看免费 | 亚洲一区黄色 | 欧美激情va永久在线播放 | 97超碰福利久久精品 | 91av电影在线观看 | 97超碰人人澡人人爱学生 | 日韩另类在线 | 日韩狠狠操 | 福利一区在线 | 亚洲精品视频免费在线 | 蜜臀91丨九色丨蝌蚪老版 | 欧美一级黄大片 | 日韩美av在线 | 一区二区精品国产 | 香蕉97视频观看在线观看 | 在线视频国产区 | 亚洲精品乱码白浆高清久久久久久 |