精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

[觸覺智能RK3568]OpenHarmony NDK工具(上)

系統 OpenHarmony
NDK (原生開發套件) 是一套工具,使開發者能夠在 OpenHarmony hap應用中使用 C/C++ 代碼。

??想了解更多關于開源的內容,請訪問:??

??51CTO 開源基礎軟件社區??

??https://ost.51cto.com??

在OpenHarmony應用開發中選擇Native C ++開發方式需要使用OpenHarmony NDK工具,或者想移植一個C/C ++的三方庫到OpenHarmony中也可以使用NDK。NDK使用到的編譯工具是cmake,也就是CMakeLists.txt那一套。Native C ++應用開發方式可以做直接編譯三方庫的so庫再利用NAPI框架實現能力的調用(只需要在三方庫原生的CMakeLists.txt中修改小部分的內容就可以實現)。

一、OpenHarmony NDK

  • NDK (原生開發套件) 是一套工具,使開發者能夠在 OpenHarmony hap應用中使用 C/C++ 代碼。
  • NDK提供了一系列的工具可以幫助開發者快速的開發C/C++的動態庫、靜態庫和可執行文件。
  • OpenHarmony 應用開發的??Native C++???開發方式就要依賴NDK。NDK被包含在OpenHarmony SDK中。可以在??DevEco Studio???使用 NDK 將 C/C ++ 代碼編譯到so庫中,然后使用 DevEco Studio 的構建插件??hvigor-ohos-plugin???將so庫打包到 Hap 中。ArkTS代碼隨后可以通過??NAPI框架??調用SO庫中的函數。

二、獲取NDK的方式

1、從每日構建中獲取

每日構建地址: http://ci.openharmony.cn/dailys/dailybuilds。

組件形態選擇ohos-sdk,版本選擇最新版本的sdk一般是沒有問題的(但是筆者之前遇到下載的ndk中的clang工具找不到libatomic.so無法工作的情況的情況)。

下載解壓后可以得到如下文件,根據linux或者windows端解壓不同文件得到sdk。

2、編譯源碼得到SDK中的NDK

安裝依賴
./build/build_scripts/env_setup.sh

執行完上述命令后記得執行source ~/.bashrc或者重啟終端
source ~/.bashrc

安裝編譯SDK需要的依賴包(編譯鏡像的時候是不依賴這些包的)
sudo apt-get install libxcursor-dev libxrandr-dev libxinerama-dev

./build.sh --product-name ohos-sdk --ccache --build-target ohos_ndk

寫文章提的issue https://gitee.com/openharmony/build/issues/I6H8IO?from=project-issue

  • 在對應的目錄底下找到編譯成功的NDK,相關路徑out/sdk/packages/ohos-sdk/linux/native,根據linux或者windows端解壓不同文件得到sdk

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

二、NDK目錄

native
├── NOTICE.txt 聲明文件
├── build
└── cmake
├── ohos.toolchain.cmake ---->編譯的工具鏈
└── sdk_native_platforms.cmake ---->編譯的工具鏈(在DevEco Studio中編譯打包so要用到)
├── build-tools ---->cmake編譯工具所在目錄(NDK提供的編譯工具)
├── llvm ---->編譯器所在目錄(NDK提供的編譯工具)
├── sysroot ---->編譯器的 sysroot 目錄,存放 SDK 內部的已經包含的庫和對應的頭文件
├── ndk_system_capability.json ---->NDK自帶so庫能力描述文件
├── nativeapi_syscap_config.json ---->調用NDK自帶so庫能力相關頭文件
├── docs ---->調用NDK自帶so庫能力相關文檔
└── oh-uni-package.json ---->SDK 信息描述
  • llvm中bin目錄下的編譯器有。
FileCheck    clang-format      ld64.lld        lldb-vscode      llvm-cxxfilt     llvm-objdump   llvm-strip       yaml2obj
clang clang-tidy lld llvm-addr2line llvm-dis llvm-profdata llvm-symbolizer
clang++ clangd lld-link llvm-ar llvm-lib llvm-ranlib not
clang-12 count lldb llvm-as llvm-link llvm-readelf sancov
clang-check dsymutil lldb-argdumper llvm-cfi-verify llvm-modextract llvm-readobj sanstats
clang-cl git-clang-format lldb-mi llvm-config llvm-nm llvm-size scan-build
clang-cpp ld.lld lldb-server llvm-cov llvm-objcopy llvm-strings scan-view

三、linux下使用NDK編譯庫文件和可執行文件

1、使用NDK編譯一個簡單demo

shared-library            
├── CMakeLists.txt 外部CMakeLists.txt
├── include 頭文件目錄
└── shared
└── Hello.h
└── src 源文件目錄
├── CMakeLists.txt 內部CMakeLists.txt
├── Hello.cpp
└── main.cpp
  • 外部CMakeLists.txt
#cmake的版本
CMAKE_MINIMUM_REQUIRED(VERSION 3.16)
#工程名稱
PROJECT(HELLO_LIBRARY)
#添加一個子目錄并構建該子目錄
ADD_SUBDIRECTORY(src)

cmake的內置命令是不區分大小寫的,因此add_subdirectory與ADD_SUBDIRECTORY作用一致。但是cmake的所有變量都是區分大小寫的

  • 內部CMakeLists.txt
#設置可執行文件輸出路徑
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/output)
# 設置so庫文件輸出路徑
SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/output)

############################################################
# Create a library
############################################################

#SHARED表示生成的是動態庫,動態庫的名字是hello_shared_library。生成動態庫的源文件是Hello.cpp
ADD_LIBRARY(hello_shared_library SHARED
Hello.cpp
)
#為生成的動態庫添加一個別名,后續hello::library可使用來替代hello_shared_library
ADD_LIBRARY(hello::library ALIAS hello_shared_library)

#為指定目標hello_shared_library添加頭文件搜索路徑(這個指定目標決不能是alias target,也就是指定的別名hello::library)
TARGET_INCLUDE_DIRECTORIES(hello_shared_library
PUBLIC
${PROJECT_SOURCE_DIR}/include
)

############################################################
# Create an executable
############################################################

# 使用指定的源文件main.cpp創建出一個可執行文件hello_shared_binary
ADD_EXECUTABLE(hello_shared_binary
main.cpp
)

#TARGET_LINK_LIBRARIES指令的作用為將目標文件與庫文件進行鏈接
#將可執行文件hello_shared_binary與庫文件hello::library進行鏈接
TARGET_LINK_LIBRARIES( hello_shared_binary
PRIVATE
hello::library
)

3、進行cmake編譯

(1)NDK自帶的cmake編譯工具添加到環境變量

1、第一種方法:

#將其臨時加入環境變量中(適用于臨時想用用NDK)
export PATH=$PATH:/ohos-sdk/linux/native/build-tools/cmake/bin(你自己解壓的NDK目錄)

2、第二種方法:

#將其永遠加入環境變量中
#打開.bashrc文件
vim ~/.bashrc
#在文件最后添加cmake路徑,該路徑是自己的放置文件的路徑,之后保存退出
export PATH=/ohos-sdk/linux/native/build-tools/cmake/bin:$PATH
#在命令行執行source ~/.bashrc使環境變量生效
source ~/.bashrc

3、查看環境變量添加是否成功。

cmake -version

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

可知cmake的版本是3.16.5 ,所以編寫CMakeLists.txt可參考的鏈接為 https://cmake.org/cmake/help/v3.16/guide/tutorial/

(2)安裝make

如果沒有安裝make會出現以下報錯,則執行sudo apt-get install make。(如果已經安裝make,請忽略)。

(3)cmake的幾個參數

1、OHOS_STL參數,其類型可以是c++_shared和c++_static,默認是c++_shared。

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

2、OHOS_ARCH參數(設置應用程序二進制接口ABI),其類型是armeabi-v7a、x86_64 ,默認值是arm64-v8a。每一種ABI定義了相應的二進制文件。

  • armeabi-v7a (選擇這個是編譯32位的二進制文件)。
  • arm64-v8a (選擇這個是編譯64位的二進制文件)。
  • x86_64 (現在不使用,OpenHarmony現在在適配x86的芯片)。

3、OHOS_PLATFORM參數,其類型為OHOS(只能選擇OHOS平臺)。

4、 CMAKE_TOOLCHAIN_FILE參數指向的是工具鏈文件所在的位置,就是ohos.toolchain.cmake的路徑(對于編譯不同平臺二進制文件是很重要的)。

  • build目錄中的工具鏈文件ohos.toolchain.cmake,cmake編譯時需要讀取該文件中的默認值,比如編譯器的選擇、編譯平臺,例如ohos.toolchain.cmake文件中,
# Common default settings
39:if(NOT DEFINED OHOS_PLATFORM_LEVEL)
set(OHOS_PLATFORM_LEVEL 1)
endif()
43:if(NOT DEFINED OHOS_TOOLCHAIN)
set(OHOS_TOOLCHAIN clang)
endif()
47:if(NOT DEFINED OHOS_STL)
set(OHOS_STL c++_shared)
endif()
51:if(NOT DEFINED OHOS_PIE)
set(OHOS_PIE TRUE)
endif()
55:if(NOT DEFINED OHOS_ARM_NEON)
set(OHOS_ARM_NEON thumb)
endif()
60:if(NOT DEFINED OHOS_ARCH)
set(OHOS_ARCH arm64-v8a)
endif()
  • 在編譯時需要指出該文件的所在路徑,以便于cmake在編譯時定位到該文件。在編譯的時候需要為cmake指定參數來控制編譯目標的屬性。

(4)使用CMake進行構建,并傳遞工具鏈文件及cmake參數

# dmeo目錄下創建build目錄,用來放置cmake構建時產生的中間文件。
mkdir build && cd build

# 傳遞OHOS_STL(可選,默認就是c++_shared)、OHOS_ARCH、OHOS_PLATFORM、工具鏈文件
# CMAKE_TOOLCHAIN_FILE是ohos.toolchain.cmake具體放置的路徑
# 這一步會檢查CMakeLists.txt是否有語法錯誤
# 不要忘記在ohos.toolchain.cmake路徑后面加上 ..
cmake -D OHOS_STL=c++_shared -D OHOS_ARCH=armeabi-v7a -D OHOS_PLATFORM=OHOS -D CMAKE_TOOLCHAIN_FILE=/xxx/build/cmake/ohos.toolchain.cmake ..

cmake --build .

1、執行如下過程如下:

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

2、可以注意到執行cmake --build .時會有warning: -Wunused-command-line-argument,通過在內部的CMakeLists.txt中添加如下語句消除warning。

set(CMAKE_CXX_FLAGS "-Wno-unused-command-line-argument")

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

  • 注意:.c文件時是使用CMAKE_C_FLAGS,.cpp文件時是使用CMAKE_CXX_FLAGS。

3、編譯結果如下:

生成可執行文件和動態庫。

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

4、要編譯靜態庫及其可執行文件,內部的CMakeLists.txt中添加如下語句

############################################################
# Create a library
############################################################

#Generate the static library from the library sources
ADD_LIBRARY(hello_static_library STATIC
Hello.cpp
)

TARGET_INCLUDE_DIRECTORIES(hello_static_library
PUBLIC
${PROJECT_SOURCE_DIR}/include
)

############################################################
# Create an executable
############################################################

# Add an executable with the above sources
ADD_EXECUTABLE(hello_static_binary
main.cpp
)

# link the new hello_library target with the hello_binary target
TARGET_LINK_LIBRARIES( hello_static_binary
PRIVATE
hello_static_library
)

編譯結果如下,生成靜態庫及其可執行文件。

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

5、編譯64位的庫文件和可執行文件,OHOS_ARCH參數選擇arm64-v8a或者編譯時不傳遞該參數。

(5)使用CMake進行構建,選擇ninja生成器并生成編譯流程圖

1、執行cmake -G查看linux環境下的生成器,ndk中自帶的生成器是Ninja。

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

2、使用CMake進行構建時添加上-G “Ninja”。

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

第一步:mkdir build && cd build

第二步:cmake -G "Ninja" -D OHOS_STL=c++_shared -D OHOS_ARCH=armeabi-v7a -D OHOS_PLATFORM=OHOS -D CMAKE_TOOLCHAIN_FILE=/xxx/build/cmake/ohos.toolchain.cmake ..

第三步:cmake --build .或者ninja -f build.ninja

執行完第二步后,build目錄下會生成build.ninja,有了build.ninja可以使用ninja生成程序的編譯流程圖。

3、使用ninja工具生成庫文件和可執行文件的編譯流程圖。

# 將libhello_shared_library.so動態庫的編譯流程轉為dot
ninja -t graph libhello_shared_library.so > xxx.dot

# 將dot格式轉化為png格式的流程圖
dot -T png xxx.dot -o libhello_shared_library.so.png
# 將dot格式轉化為svg格式的流程圖
dot -T svg xxx.dot -o libhello_shared_library.so.svg

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

如果生成圖片格式太小的話,可以生成svg格式到瀏覽器打開,這一點很重要,請參考該 issue

(6)使用NDK中的cmake-gui進行圖形化操作編譯

1、native/build-tools/cmake/bin目錄有cmake-gui,可以用它圖形化傳入編譯參數進行編譯。

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

2、首先點擊Where is source code行的Browser Source,加載工程所在目錄。再點擊Where to build the binarys行的Browser Source,加載點擊“Where is source code”行的Browser Source,加載源碼所在目錄。點擊“Where to build the binarys行的Browser Source,加載工程所在目錄下的build目錄(沒有就創建一個)。

3、點擊Add Entry傳入cmake 參數。勾選把旁邊的Grouped選項。

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

4、點擊Configure選擇Current Generator生成器為Unix Makefiles。

5、最后打開Where to build the binarys加載構建目錄終端,執行make -j 8命令。

make -j n含義是 讓make最多允許n個編譯命令同時執行,這樣可以更有效的利用CPU資源。假設系統cpu是12核,在不影響其他工作的情況下,我們可以make -j 12將cpu資源充分利用起來,一般來說,最大并行任務數為cpu_num * 2。

 #創作者激勵#[觸覺智能RK3568]OpenHarmony NDK工具(上)-開源基礎軟件社區

??想了解更多關于開源的內容,請訪問:??

??51CTO 開源基礎軟件社區??

??https://ost.51cto.com??

責任編輯:jianghua 來源: 51CTO 開源基礎軟件社區
相關推薦

2023-03-16 15:37:48

像素密度觸覺智能

2023-03-03 21:36:02

鴻蒙操作系統

2022-04-25 09:10:50

RK3568鴻蒙

2023-02-10 15:34:45

Node.jsN-API組件

2023-03-07 15:54:45

鴻蒙Mesa庫

2023-11-24 09:48:29

C++鴻蒙

2023-08-18 14:34:09

HDF驅動框架

2023-03-13 11:58:03

拓撲架構模塊

2023-08-08 14:26:59

開源開發板鴻蒙

2024-05-14 08:33:57

Native API鴻蒙工具

2021-09-08 15:23:51

鴻蒙HarmonyOS應用

2023-05-15 15:27:20

鴻蒙智能開發套件

2023-05-26 16:01:32

驅動開發鴻蒙

2022-05-23 10:45:34

DAYU200鴻蒙

2023-05-08 15:48:13

智能音箱鴻蒙

2024-03-04 15:06:38

鴻蒙智能教室應用開發

2022-03-17 15:55:19

播放數字音頻解碼鴻蒙

2022-01-26 15:07:04

bytrace工具OpenHarmon

2023-02-20 15:29:14

分布式相機鴻蒙

2023-01-13 16:54:38

點贊
收藏

51CTO技術棧公眾號

精品久久久精品| 国产在线精品一区在线观看麻豆| 亚洲成人久久久久| 5月婷婷6月丁香| 69视频在线观看| 粉嫩一区二区三区在线看| 91超碰中文字幕久久精品| 成人片黄网站色大片免费毛片| 婷婷久久综合九色综合99蜜桃| 亚洲午夜在线电影| 亚洲啪啪av| 天堂av2024| 青青青爽久久午夜综合久久午夜| 欧美高清视频在线播放| 国产三级在线观看完整版| 北条麻妃一区二区三区在线观看| 在线一区二区观看| 久无码久无码av无码| 色的视频在线免费看| 91视频在线观看免费| 亚洲字幕一区二区| 成人黄色免费网| 99在线观看免费视频精品观看| 久久精品电影网| 免费黄色在线视频| 极品束缚调教一区二区网站| 3d动漫精品啪啪| 99草草国产熟女视频在线| 爱情岛亚洲播放路线| 亚洲欧美自拍偷拍色图| 日本一区不卡| 天堂影院在线| 成人的网站免费观看| 国产在线观看一区二区三区| 日韩久久中文字幕| 国产毛片一区| 97精品国产97久久久久久春色| 欧美丰满熟妇bbbbbb| 国产亚洲一卡2卡3卡4卡新区 | 国产主播中文字幕| heyzo在线播放| 一区二区三区在线播放| 公共露出暴露狂另类av| 五月天婷婷在线视频| 亚洲国产成人午夜在线一区 | 欧美熟妇精品一区二区蜜桃视频| 国产精品99久久免费| 亚洲成av人片在线| 欧美精品久久久久久久久久久| 在线看福利影| 亚洲最新视频在线观看| 成人在线观看毛片| 日本精品600av| 一区二区久久久| 国产一区二区片| 丁香花在线观看完整版电影| 亚洲欧洲av另类| 永久免费看av| 欧美jizz18性欧美| 亚洲欧美乱综合| 国产资源第一页| 成人福利影视| 欧美日韩免费在线观看| 91av俱乐部| 国产精品99久久久久久董美香| 欧美日韩在线直播| 色呦色呦色精品| 欧美日韩一级在线观看| av在线亚洲天堂| 男男视频亚洲欧美| 成人女保姆的销魂服务| 99热这里只有精品99| 国产精品一区二区男女羞羞无遮挡 | 亚洲一区二区三区加勒比 | aa视频在线免费观看| 国产91精品免费| 精品国产一区二区三区久久久久久| 天天干免费视频| 日本一区二区三级电影在线观看| 亚洲欧洲日本国产| 二区三区在线观看| 午夜天堂影视香蕉久久| a在线观看免费视频| 国产精品一区二区三区av| 精品国产区一区| 一级片手机在线观看| 国产精品88久久久久久| 久久久噜噜噜久久中文字免| 中文字幕一区在线播放| 精品一区精品二区高清| 精品国产乱码久久久久久丨区2区| 青青青草网站免费视频在线观看| 国产精品国产精品国产专区不片| 久久久久久av无码免费网站下载| 国模套图日韩精品一区二区| 欧美精品久久久久久久久老牛影院| 在线观看亚洲免费视频| 欧美色图在线播放| 久久久久这里只有精品| 中文字幕视频一区二区| 成人激情av网| 一本一生久久a久久精品综合蜜| 欧美人与性动交α欧美精品济南到| 色综合天天综合| 国产调教打屁股xxxx网站| 免费成人高清在线视频theav| 久久视频精品在线| 久久久精品福利| 国产.精品.日韩.另类.中文.在线.播放| 欧美日韩一区在线播放| 国内在线免费视频| 欧美日韩国产综合一区二区三区 | 欧美—级高清免费播放| 最近中文字幕在线观看视频| 成人白浆超碰人人人人| 国产又黄又爽免费视频| 3d欧美精品动漫xxxx无尽| 欧美成人a∨高清免费观看| 五月婷六月丁香| 一区二区久久| 97超碰人人模人人爽人人看| 成人在线二区| 欧美午夜精品久久久久久人妖 | 久久久久久久国产精品影院| 欧美 日韩 国产精品| 青草综合视频| 一本大道亚洲视频| 精品人妻无码一区二区性色| 成人做爰69片免费看网站| 亚洲国产精品女人| 欧美日韩卡一| 中文字幕不卡在线视频极品| 国产精品一区无码| 91美女蜜桃在线| 日韩a∨精品日韩在线观看| 免费看日产一区二区三区| 北条麻妃在线一区二区| 亚洲性在线观看| 中文字幕欧美日韩一区| 国产情侣av自拍| 国产精品欧美日韩一区| 日本精品视频在线播放| 桃花色综合影院| 都市激情亚洲色图| 中文字幕一二三四区| 亚洲欧美清纯在线制服| 久久久久久国产精品mv| 麻豆免费版在线观看| 亚洲国产另类 国产精品国产免费| 免费无遮挡无码永久在线观看视频| 国模一区二区三区白浆| 成人免费看片视频在线观看| 日韩在线观看一区二区三区| 欧美激情免费观看| 黄色小视频免费观看| 香蕉影视欧美成人| 中文人妻一区二区三区| 久久一区精品| 婷婷五月色综合| 亚洲精品tv| 欧美多人爱爱视频网站| 日韩一级中文字幕| 欧美视频中文字幕在线| www.av天天| 精品制服美女丁香| 国产欧美123| 欧洲亚洲一区二区三区| 国产成人精品日本亚洲| 色老头视频在线观看| 日韩欧美的一区| 国产又大又黑又粗免费视频| 久久精品视频网| 91 在线视频观看| 国产综合婷婷| 欧美一区二区三区四区在线观看地址| 成人在线高清| 欧美另类xxx| 香蕉视频网站在线| 欧美伊人久久大香线蕉综合69| 成人一级黄色大片| caoporm超碰国产精品| 激情视频综合网| 真实国产乱子伦精品一区二区三区| 国产精品传媒毛片三区| 久久电影tv| 蜜臀久久99精品久久久无需会员 | 永久免费观看精品视频| 久久久亚洲国产| 超碰免费在线| 精品国一区二区三区| 国产精品免费无遮挡无码永久视频| 亚洲视频 欧洲视频| 亚洲精品在线视频免费观看| 美国av一区二区| 成人一级生活片| av亚洲免费| 国产精品香蕉视屏| 国产三级一区| 69久久夜色精品国产69乱青草| 三区四区在线视频| 精品亚洲精品福利线在观看| 国产精品欧美久久久久天天影视| 午夜国产不卡在线观看视频| 国产性生活大片| 国产日韩欧美麻豆| 精品人妻一区二区免费| 蜜桃免费网站一区二区三区| 99热自拍偷拍| 国产一区日韩欧美| 亚洲一区二区三区在线观看视频 | 国产视频精品xxxx| 超碰在线人人干| 欧美日韩一级二级三级| 69视频免费在线观看| 亚洲一区成人在线| 日韩福利小视频| 欧美国产精品v| 日韩av一二区| fc2成人免费人成在线观看播放| 亚洲天堂一区二区在线观看| 日本不卡免费在线视频| 日本免费黄视频| 一区在线免费| 国产精品无码免费专区午夜| 亚洲激情中文| 一区二区三区|亚洲午夜| 久久爱www成人| 欧美激情www| 欧美重口另类| 国产欧美日韩综合精品二区| 天堂av一区| 亚洲一区二区三区视频| 亚洲国产精选| 国产日韩精品综合网站| 国产成人精品一区二区三区在线 | 成人激情自拍| 99国产超薄丝袜足j在线观看| 日韩一区二区三区四区五区 | 黄色在线视频网| 久久综合中文| 粉嫩虎白女毛片人体| 校园激情久久| 久久精品网站视频| 久久精品一区二区国产| av网址在线观看免费| 久久久亚洲人| 天天操天天爱天天爽| 日本麻豆一区二区三区视频| 午夜视频你懂的| 免费人成在线不卡| 依人在线免费视频| 狠狠色狠狠色综合系列| 免费国偷自产拍精品视频| 国产成人免费网站| 国产伦精品一区二区三区精品| 不卡视频在线看| 久久久久国产精品区片区无码| 久久久久成人黄色影片| 美女av免费看| 亚洲视频在线一区二区| 九九在线观看视频| 午夜视频一区二区三区| 国产又大又黄又粗| 欧美日韩一区在线观看| 国产免费无遮挡| 日韩精品自拍偷拍| 天堂在线中文| 色yeye香蕉凹凸一区二区av| 影音先锋在线播放| 97在线视频国产| 成人免费毛片嘿嘿连载视频…| 成人h猎奇视频网站| 一区二区网站| 欧美亚洲免费在线| 99久久夜色精品国产亚洲1000部| 成人在线视频一区二区三区| 久久国产高清| 久久久福利影院| 99精品久久99久久久久| 91精品国自产在线| 亚洲综合色在线| 无码人妻精品一区二区三区不卡 | 天堂中文资源在线| 日韩网站免费观看高清| 91超碰在线免费| 国产成人精品日本亚洲| 亚洲乱码一区| 少妇精品久久久久久久久久| 欧美日韩日本国产亚洲在线| 精品视频无码一区二区三区| 国产河南妇女毛片精品久久久| 日韩片在线观看| 亚洲女人****多毛耸耸8| 狠狠人妻久久久久久| 日韩三级av在线播放| 狠狠色伊人亚洲综合网站l| 久久国产天堂福利天堂| 大胆人体一区| 99热在线播放| 日韩在线综合| 干日本少妇首页| 国产精品99久久久久久久vr| 亚洲人成人无码网www国产| 亚洲一二三四区不卡| 在线不卡免费视频| 国产婷婷97碰碰久久人人蜜臀| 亚洲丝袜精品| 国产精品视频自在线| 久久视频在线观看| 91嫩草国产丨精品入口麻豆| 视频一区二区不卡| 网站免费在线观看| 亚洲精品免费一二三区| 国产午夜无码视频在线观看| 亚洲精品福利资源站| 日本在线视频网址| 国产中文字幕日韩| 狠狠操综合网| 97在线免费公开视频| 成人深夜福利app| 亚洲国产美女视频| 欧美精品vⅰdeose4hd| 丁香在线视频| 国产精品福利在线观看网址| 久久男人av| 黄色大片在线免费看| 成人永久免费视频| 久久久久亚洲av无码专区| 欧美一区二区三区在线观看视频| www.av在线播放| 国产高清在线不卡| 美女亚洲一区| 欧美日韩在线不卡视频| av在线这里只有精品| 精品无码人妻一区二区三| 欧美一级片在线| 亚洲区欧洲区| 91在线免费看片| 欧美日本中文| 在线播放av网址| 亚洲韩国精品一区| 国模私拍视频在线| 97久久超碰福利国产精品…| 白嫩白嫩国产精品| 91成人在线观看喷潮教学| www.亚洲在线| 亚洲欧美精品一区二区三区| 亚洲男人天堂2023| 羞羞影院欧美| 天堂av一区二区| 久久99久久精品欧美| 久热这里有精品| 欧美精品一区二区高清在线观看| 岛国av免费在线观看| 久久久久久精| 蜜芽一区二区三区| 麻豆天美蜜桃91| 日韩精品一区二区三区视频播放 | 欧美三级不卡| chinese麻豆新拍video| 日韩欧美国产中文字幕| av片在线免费观看| 91香蕉电影院| 在线播放精品| 国产精品密蕾丝袜| 欧美高清dvd| 成人爽a毛片免费啪啪动漫| 麻豆91蜜桃| 久久精品99久久久| 久久久久成人网站| 亚洲精品综合精品自拍| 国产三级一区| 阿v天堂2018| 国产欧美日韩不卡| 国产高潮流白浆喷水视频| 午夜精品在线观看| 成人看的视频| 91porn在线| 91精品福利在线| 影音先锋在线播放| 日本不卡在线观看| 国产精品一区二区无线| 亚欧视频在线观看| 最近更新的2019中文字幕| av毛片精品| 我要看一级黄色大片| 亚洲va欧美va人人爽| 99re在线视频| 久久久久久久免费| 国产一区二区免费在线| 天天操天天操天天操天天| 久久综合久久八八| 国产精品探花在线观看| 国产又粗又猛又爽又黄| 在线欧美日韩国产| www欧美xxxx| 永久域名在线精品| www成人在线观看| av免费在线观看不卡| 国产成人精品视频在线|