精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

国内精品一区二区三区四区| 国产在线88av| 视频国产一区| 午夜精品福利一区二区三区av| 亚洲天堂aaa| 黄色国产在线| 日韩美女在线| 成人动漫一区二区| 亚洲电影在线观看| 日本三级中文字幕在线观看| www.日韩在线观看| 波多野结衣在线一区二区| 成人一区在线观看| 国产不卡av在线| 中文字幕精品亚洲| 久久丝袜视频| 欧美一级xxx| 久久久久久久久久久久久久国产| 亚洲欧美激情在线观看| 少妇av片在线观看| 婷婷激情一区| 中文字幕一区在线观看视频| 精品视频在线观看日韩| 亚洲精品综合在线观看| 国产一级在线观看| 精品一区二区精品| 国产精品高清在线| 国产又色又爽又黄的| 久久99国产精品视频| 亚洲一本大道在线| 久久伊人一区| 懂色av蜜臀av粉嫩av分享吧| 看国产成人h片视频| 日韩av电影手机在线| 国产对白videos麻豆高潮| 亚洲综合色网| 日韩中文字幕亚洲| 亚洲一区二区三区四区五区六区| 国产高清自拍视频在线观看| 麻豆精品网站| 欧美孕妇孕交黑巨大网站| 私库av在线播放| 亚洲高清资源在线观看| 色视频www在线播放国产成人| 一区二区成人网| 欧美xxx性| 欧美性生交xxxxx久久久| 91黄色在线看| 97人澡人人添人人爽欧美| 日韩码欧中文字| 尤物国产精品| 日本视频在线免费观看| 国产精品久久久久久久蜜臀| 日本一区视频在线播放| 国内三级在线观看| 国产欧美一区二区在线| 日本一区二区久久精品| 国产三级在线免费观看| 国产日韩视频一区二区三区| 日本视频一区二区在线观看| 国产精品天堂| 国产精品初高中害羞小美女文| 51成人做爰www免费看网站| 97人人爽人人爽人人爽| 国产乱人伦偷精品视频不卡| 91人人爽人人爽人人精88v| 99久久精品国产一区色| 国产a级毛片一区| 国产精品久久一区二区三区| 无码精品人妻一区二区三区影院| 日韩av在线播放中文字幕| 国产精品xxx视频| 一本色道久久综合亚洲| 国产麻豆精品一区二区| 国产精品三区www17con| 五十路在线视频| 国产性色一区二区| 992tv成人免费观看| 亚洲七七久久综合桃花剧情介绍| 久久精品亚洲麻豆av一区二区 | 丝袜美腿一区| 欧洲另类一二三四区| 国产精品一区二区小说| 日韩精品免费视频一区二区三区| 在线观看欧美精品| www.cao超碰| 成人福利免费在线观看| 亚洲女人天堂av| 国产精品视频一区二区在线观看| 妖精视频一区二区三区免费观看 | 国产视频1区2区3区| www999久久| 日韩高清不卡av| 人妻无码一区二区三区免费| 国产精品啊啊啊| 国产精品久久久久久久久免费看| 日韩三级小视频| 久久国产麻豆精品| 国产精品一区二区欧美黑人喷潮水| 国产精品一区二区黑人巨大| 成人国产视频在线观看| 亚洲国产精品一区二区第一页 | 蜜桃视频一区二区在线观看| 嗯~啊~轻一点视频日本在线观看| 日本一二三四高清不卡| 国产一区视频观看| 色哟哟免费在线观看 | 99热精品免费| 日韩午夜在线电影| 成人激情视频免费在线| 色在线免费视频| 亚洲黄色免费网站| 色婷婷综合网站| 视频福利一区| 久久久久久久色| 91av久久久| 国产片一区二区| 日本一区二区黄色| 国产欧美一区二区白浆黑人| 亚洲欧洲视频在线观看| 亚洲午夜视频在线观看| 婷婷中文字幕在线观看| 成人羞羞视频在线看网址| 57pao成人永久免费视频| 午夜久久久久久噜噜噜噜| 成人免费一区二区三区视频| 国产成人久久777777| 久久久久观看| 午夜精品久久17c| 亚洲av无码国产精品久久不卡| 高潮精品一区videoshd| 久久免费视频2| 久久久久久久性潮| 日韩成人中文电影| 久久精品视频日本| 国产·精品毛片| 人妻互换免费中文字幕| 精品国产伦一区二区三区观看说明 | 精品一区二区三区亚洲| 亚洲欧美日韩直播| 草久久免费视频| 99r精品视频| 成年人网站免费视频| 国产精品久久久久av蜜臀| 欧美国产日产韩国视频| www.黄色av| 夜夜爽夜夜爽精品视频| 少妇欧美激情一区二区三区| 亚洲综合自拍| 亚洲综合精品伊人久久| 午夜伦理在线视频| 日韩免费在线观看| 久久久精品视频免费| 不卡视频在线看| 免费看的黄色大片| 国产精品一区二区av日韩在线| 久久久精品一区二区| 国产精品久久久久久在线| 亚洲欧洲色图综合| 国模大尺度视频| 欧美激情视频一区二区三区在线播放 | 久久精品视频8| 成人av网在线| 韩国日本在线视频| 国产精品欧美在线观看| 国产精品免费观看在线| 美女隐私在线观看| 日韩欧美国产综合在线一区二区三区| 人妻精品久久久久中文字幕| 噜噜噜在线观看免费视频日韩| 国产欧美日韩免费| 黄网站在线免费| 精品区一区二区| aaa人片在线| 中文一区二区在线观看| 国产精品99久久久精品无码| 99伊人成综合| 日本一区二区精品视频| 精品视频在线观看免费观看 | а√天堂8资源在线| 亚洲毛片在线免费观看| 伊人网免费视频| 亚洲一二三专区| 神马久久久久久久久久久| 久久99久久久久| 波多野结衣乳巨码无在线| 九九视频免费观看视频精品| 成人性生交大片免费看视频直播| 番号在线播放| 精品国产自在久精品国产| 日产精品久久久久| 国产精品拍天天在线| 又黄又爽的网站| 免费精品视频在线| 国产精品无码av在线播放| 成人婷婷网色偷偷亚洲男人的天堂| 国产成人福利网站| 丝袜美女在线观看| 中文日韩电影网站| 天天综合永久入口| 欧美一区二区网站| 中文人妻av久久人妻18| 亚洲永久精品国产| 情侣偷拍对白清晰饥渴难耐| 91亚洲精华国产精华精华液| 亚洲娇小娇小娇小| 亚洲欧美不卡| www.亚洲成人网| 999成人精品视频线3| 欧美日韩高清免费| 国产精品毛片久久久| 亚洲iv一区二区三区| 日韩av超清在线观看| 96精品视频在线| 日本片在线观看| 久久久av电影| 淫片在线观看| 亚洲国产毛片完整版| www.亚洲天堂.com| 欧美日韩大陆一区二区| 伊人久久中文字幕| 欧美日韩国产一区中文午夜| 欧美又粗又大又长| 亚洲天堂2014| www.99re6| 中文字幕av一区 二区| 亚洲天堂视频一区| 96av麻豆蜜桃一区二区| 中文字幕人妻熟女在线| 国产一区二区三区av电影| 中文字幕天天干| 丝袜亚洲另类欧美| 国产成人精品无码播放| 亚洲影院一区| 国产免费黄视频| 亚洲一区二区成人| 欧美网站免费观看| 国产精品久久久亚洲一区| 免费超爽大片黄| 精品动漫3d一区二区三区免费版| 免费看成人午夜电影| 超碰97久久| 国产综合色一区二区三区| www.爱久久| 国产精品三区在线| 欧美一区二区三区久久| 精品一区久久久久久| 欧美调教在线| 免费看成人av| 成人短片线上看| 中文字幕色一区二区| 国产精品久久久久久影院8一贰佰| 国产精品sss| 久久综合社区| 免费成人深夜夜行视频| 精品久久网站| 一区二区三区四区视频在线 | 欧美成人乱码一区二区三区| 国产成人精品av在线观| 日韩欧美不卡在线观看视频| 好吊色视频一区二区| 亚洲精品99999| 国外av在线| 中文字幕最新精品| 综合久久2019| 91成人福利在线| 国产成人亚洲一区二区三区 | 日本三级小视频| 色综合天天视频在线观看| 精品乱码一区内射人妻无码| 欧美日韩国产天堂| 亚洲高清视频网站| 亚洲精品大尺度| 国际av在线| 欧美精品一区二区免费| 欧美男男tv网站在线播放| 国产精品久久久久久久久久久久久 | 欧美亚洲国产另类| 欧美日韩尤物久久| 91中文字幕在线观看| 久久av国产紧身裤| 亚洲欧洲精品一区二区| 国一区二区在线观看| 久久国产乱子伦免费精品| 蜜桃精品在线观看| 国产激情视频网站| 国产精品成人免费| www.com国产| 91精品国产91热久久久做人人| 中文字幕777| 欧美va日韩va| 福利在线观看| 久久久免费电影| 国产欧美在线观看免费| 国产精品成人观看视频免费| 精品久久网站| 国产69精品久久久久999小说| 亚洲蜜桃视频| 久久人妻精品白浆国产| 国产精品一二三四区| 韩国女同性做爰三级| 一区二区三区高清不卡| 中文字幕+乱码+中文乱码91| 亚洲激情视频在线观看| 亚洲羞羞网站| 国产精品自产拍在线观看| 少妇久久久久| 日韩国产一级片| 激情五月婷婷综合| 亚洲一区视频在线播放| 天天综合天天综合色| 精品人妻一区二区三区换脸明星| 91精品国产91久久久久久一区二区| 国产精品天天操| 亚洲欧美中文日韩在线v日本| 可以在线观看的av| 久久久久久免费精品| www.久久草.com| 亚洲欧洲久久| 爽好久久久欧美精品| 久久无码人妻精品一区二区三区| 久久综合狠狠综合久久激情| 永久免费看黄网站| 欧美日韩大陆一区二区| av在线电影院| 国产精品扒开腿做爽爽爽男男| 成人av色网站| 日本不卡一区二区三区视频| 激情欧美日韩| 熟女人妻一区二区三区免费看| fc2成人免费人成在线观看播放| 香蕉视频黄色在线观看| 亚洲v日本v欧美v久久精品| 国产视频aaa| 久久影视电视剧免费网站清宫辞电视| 69av成人| 国产伦精品一区二区三毛| 国产一区日韩欧美| 99riav国产精品视频| 亚洲视频小说图片| 国产喷水吹潮视频www| 久久精品人人爽| 精品欧美视频| 久久这里只有精品8| 国产69精品久久777的优势| 国产第一页在线播放| 亚洲国产精品va在线看黑人| 成年网站在线视频网站| 国产精品永久入口久久久| 99热这里只有精品8| 精品成人av一区二区三区| 色菇凉天天综合网| 91免费在线| 成人激情视频在线播放| 欧美成人一区二免费视频软件| 成年人小视频网站| 国产嫩草影院久久久久| 亚洲特级黄色片| 九九九久久久久久| 久久这里只有精品一区二区| 免费看一级大黄情大片| 久久久国产精华| 亚洲最大成人av| 欧美日本国产在线| 天天躁日日躁成人字幕aⅴ| 日本精品一区在线观看| 中文字幕精品综合| 99在线观看精品视频| 久久久久亚洲精品国产| 免费成人高清在线视频theav| 996这里只有精品| 成人h版在线观看| 免费看污视频的网站| 日韩一区二区在线视频| 成人三级毛片| 国产情侣av自拍| 亚洲精品视频观看| 日韩精品视频无播放器在线看 | 欧美日韩精品区| 欧美成人一区二区三区在线观看| 成年人视频在线看| 91gao视频| 久久综合图片| 校园春色 亚洲| 亚洲精品一区中文字幕乱码| 日韩一级视频| 美女av免费在线观看| 亚洲欧美另类小说视频| 欧美在线观看在线观看| 成人av在线网址| 亚洲一区日韩| 波多野结衣爱爱视频| 亚洲欧美综合另类中字| 久久国产精品免费一区二区三区| 亚洲美女自拍偷拍| 91麻豆免费看片| 超碰福利在线观看| 国产精品视频久久久久| 亚洲视屏一区| 久久人妻无码aⅴ毛片a片app|