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

淺談OpenHarmony的NDK開發(fā)

系統(tǒng) OpenHarmony
Native API是OpenHarmony SDK上提供的一組native開發(fā)接口與工具集合(也稱為NDK),方便開發(fā)者使用C或者C++語言實(shí)現(xiàn)應(yīng)用的關(guān)鍵功能。Native API只覆蓋了OHOS基礎(chǔ)的一些底層能力。

背景

Native API(NDK)入門

Native API是OpenHarmony SDK上提供的一組native開發(fā)接口與工具集合(也稱為NDK),方便開發(fā)者使用C或者C++語言實(shí)現(xiàn)應(yīng)用的關(guān)鍵功能。Native API只覆蓋了OHOS基礎(chǔ)的一些底層能力,如libc,圖形庫,窗口系統(tǒng),多媒體,壓縮庫等,并沒有完全提供類似于JS API上的完整的OHOS 平臺能力。在應(yīng)用中使用Native API會(huì)編譯成動(dòng)態(tài)庫打包到應(yīng)用中。

名詞概念

名詞名詞解釋Native APIOHOS SDK里面native包提供的,面向三方應(yīng)用開發(fā)的Native 接口以及相應(yīng)編譯腳本,編譯工具鏈。包括C運(yùn)行時(shí)基礎(chǔ)庫libc,3D圖形庫opengl,面向JS與C跨語言的接口Node-API等,具體內(nèi)容詳見下表。NDKNative Develop Kit的縮寫,在OHOS上就是Native API;Native API是官方名字,NDK指代相同意思。SDK CAPIOHOS Native API中的C語言接口,以及工具鏈部分,當(dāng)前OHOS的Native API里面只包含C語言接口,因此Native API與CAPI意思一樣,建議交流的時(shí)候使用CAPI,防止Native API與napi縮寫混用。Node-API曾用名napi,是OHOS中提供JS與C跨語言調(diào)用的接口,是Native API接口中的一部分. 該接口在Node.js提供的Node-API基礎(chǔ)上擴(kuò)展而來,但不完全與Node.js中的Node-API完全兼容。napiNode-API的曾用名,當(dāng)前Node-API頭文件中的接口仍然以napi_開頭,不建議使用。

Native API構(gòu)成介紹

Native API目錄結(jié)構(gòu)

Native API在SDK包的位置為$(SDK_ROOT)/native目錄,主要有以下幾個(gè)部分組成。

目錄

功能說明

build

應(yīng)用中編譯動(dòng)態(tài)庫的toolchain cmake腳本;這個(gè)目錄下ohos.toolchain.cmake文件定義了給OHOS交叉編譯選項(xiàng)

build-tools

放置編譯構(gòu)建的工具,如cmake

docs

Native API接口參考文檔,通過doxgen從頭文件中提取出來

llvm

支持OHOS ABI的llvm交叉編譯器

sysroot

放置編譯鏈接的依賴文件目錄,包含頭文件,動(dòng)態(tài)庫等

寫在最后Native API接口(4.0 Release)

接口分類接口功能引入版本標(biāo)準(zhǔn)C庫以musl為基礎(chǔ)提供的標(biāo)準(zhǔn)c庫接口,當(dāng)前提供了1500+的接口8標(biāo)準(zhǔn)C++庫c++運(yùn)行時(shí)庫libc++_shared,此庫在打包的時(shí)候需要打包或者靜態(tài)鏈接到應(yīng)用中8日志打印日志到系統(tǒng)的hilog接口8Node-APIArkUI提供的,方便應(yīng)用開發(fā)接入JS應(yīng)用環(huán)境的一組類Node-API(也叫napi),是屬于Native API的一部分8XComponentArkUI XComponent組件中的surface與觸屏事件接口,方便開發(fā)者開發(fā)高性能圖形應(yīng)用8libuvArkUI集成的三方的異步IO庫8libzzlib庫,提供基本的壓縮,解壓接口8Drawing系統(tǒng)提供的2D圖形庫,可以在surface進(jìn)行繪制8OpenGL系統(tǒng)提供的openglv3接口8Rawfile應(yīng)用資源訪問接口,可以讀取應(yīng)用中打包的各種資源8OpenSLES用于2D,3D音頻加速的接口庫8MindsporeAI模型接口庫9包管理包服務(wù)接口,方便查詢應(yīng)用包信息8。

Native API相關(guān)資料

  • Native API參考,介紹各個(gè)API參考手冊。
  • Native API中支持的標(biāo)準(zhǔn)庫,介紹Native API支持的開源標(biāo)準(zhǔn)庫。
  • Native API開發(fā)指南,結(jié)合具體的例子,場景介紹各類接口的使用。
  • 如何在Cmake工程中使用NDK,介紹如何使用使用NDK開發(fā)一個(gè)CMake工程。
  • Node-API在應(yīng)用工程中的使用指導(dǎo), 如何使用Node-API接口。

簡單應(yīng)用

如何開發(fā)應(yīng)用?

  • DevEco IDE創(chuàng)建工程選擇“Native C++”模板:

編譯運(yùn)行后,點(diǎn)擊helloworld打印輸出有:Test NAPI 2 + 3 = 5。

  • ArkUI部分:
import hilog from '@ohos.hilog';           //導(dǎo)入hilog
import testNapi from 'libentry.so';     //導(dǎo)入nativeC++模塊

@Entry
@Component
struct Index {
  @State message: string = 'Hello World';

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
          .onClick(() => {
            //調(diào)用nativeC++代碼
            hilog.info(0x0000, 'testTag', 'Test NAPI 2 + 3 = %{public}d', testNapi.add(2, 3));
          })
      }
      .width('100%')
    }
    .height('100%')
  }
}
  • nativeC++部分由 CMake 和 C++代碼兩部分組成:
  • CMake:
# the minimum version of CMake.
cmake_minimum_required(VERSION 3.4.1)
project(MyNDKApplication)
# 編譯路徑
set(NATIVERENDER_ROOT_PATH ${CMAKE_CURRENT_SOURCE_DIR})
# 編譯頭文件路徑
include_directories(${NATIVERENDER_ROOT_PATH}
                    ${NATIVERENDER_ROOT_PATH}/include)
# 編譯對象entry是對應(yīng)用層可見的so,即import testNapi from 'libentry.so'
add_library(entry SHARED hello.cpp)
# 這是link命令,libace_napi 這個(gè)就是node-api需要用的so庫;
target_link_libraries(entry PUBLIC libace_napi.z.so)
  • C++:
#include "napi/native_api.h"
// 對外node-api方法,對應(yīng)testNapi.add(2, 3)
static napi_value Add(napi_env env, napi_callback_info info)
{
    size_t requireArgc = 2;
    size_t argc = 2;
    napi_value args[2] = {nullptr};

    napi_get_cb_info(env, info, &argc, args , nullptr, nullptr);

    napi_valuetype valuetype0;
    napi_typeof(env, args[0], &valuetype0);

    napi_valuetype valuetype1;
    napi_typeof(env, args[1], &valuetype1);

    double value0;
    napi_get_value_double(env, args[0], &value0);

    double value1;
    napi_get_value_double(env, args[1], &value1);

    napi_value sum;
    napi_create_double(env, value0 + value1, &sum);

    return sum;

}
// 模塊初始化方法,對應(yīng)的方法在這加入對外描述隊(duì)列
EXTERN_C_START
static napi_value Init(napi_env env, napi_value exports)
{
    napi_property_descriptor desc[] = {
        { "add", nullptr, Add, nullptr, nullptr, nullptr, napi_default, nullptr }
    };
    napi_define_properties(env, exports, sizeof(desc) / sizeof(desc[0]), desc);
    return exports;
}
EXTERN_C_END
// 模塊聲明,import時(shí)候調(diào)用
static napi_module demoModule = {
    .nm_version = 1,
    .nm_flags = 0,
    .nm_filename = nullptr,
    .nm_register_func = Init,
    .nm_modname = "entry",
    .nm_priv = ((void*)0),
    .reserved = { 0 },
};
// 模塊入口注冊
extern "C" __attribute__((constructor)) void RegisterEntryModule(void)
{
    napi_module_register(&demoModule);
}

如何使用系統(tǒng)NDK?

上面例子運(yùn)行起來后,c++部分是沒有打印信息的,若想看到對應(yīng)的打印信息,則需要調(diào)用hilog進(jìn)行輸出,修改如下:

  • cmake修改:
# the minimum version of CMake.
cmake_minimum_required(VERSION 3.4.1)
project(MyNDKApplication)

set(NATIVERENDER_ROOT_PATH ${CMAKE_CURRENT_SOURCE_DIR})

include_directories(${NATIVERENDER_ROOT_PATH}
                    ${NATIVERENDER_ROOT_PATH}/include)
# 增加hiloglib庫引用
find_library(
    # Sets the name of the path variable.
    hilog-lib
    # Specifies the name of the NDK library that
    # you want CMake to locate.
    hilog_ndk.z
)

add_library(entry SHARED hello.cpp)
# 增加hiloglib庫連接
target_link_libraries(entry PUBLIC ${hilog-lib} libace_napi.z.so)
  • c++文件修改:
// 增加hilog頭文件
#include <hilog/log.h>
#include "napi/native_api.h"

static napi_value Add(napi_env env, napi_callback_info info)
{
    // 增加打印輸出
    const unsigned int LOG_PRINT_DOMAIN = 0xFF00;
    OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "Init", "Init begins");
    size_t requireArgc = 2;
    size_t argc = 2;
    napi_value args[2] = {nullptr};
    
...
  • 輸出:
08-07 05:40:25.079  15167-15167  A0ff00/Init                    com.example.myndkapplication    I  Init begins
08-07 05:40:25.079  15167-15167  A00000/testTag                 com.example.myndkapplication    I  Test NAPI 2 + 3 = 5

具體原理是什么?

PC端OHOS SDK里包括了native對應(yīng)的庫文件和頭文件。

OHOS源碼可以編譯出帶NDK的FullSDK,也可以從CI網(wǎng)址下載。

# Generate NDK library from NDK description file.
#
# Variables:
#  ndk_description_file:
#  min_compact_version: string specifies the minimal compactible version of NDK.
#    set to major_version in default.
#
template("ohos_ndk_library") {
  forward_variables_from(invoker, [ "testonly" ])
  assert(defined(invoker.ndk_description_file),
         "ndk description file is necessary ")
...
// 在GN里用ohos_ndk_library生成ndk庫和頭文件,如
    
ohos_ndk_library("libhilog_ndk") {
  output_name = "hilog_ndk"
  ndk_description_file = "./libhilog.ndk.json"
  min_compact_version = "1"
  system_capability = "SystemCapability.HiviewDFX.HiLog"
}

ohos_ndk_headers("hilog_header") {
  dest_dir = "$ndk_headers_out_dir/hilog"
  sources = [ "./include/hilog/log.h" ]
} 

// ndk_description_file 對應(yīng)的 libhilog.ndk.json 文件里聲明了導(dǎo)出的接口函數(shù)
[
    {
        "name": "OH_LOG_Print"
    },
    {
        "name": "OH_LOG_IsLoggable"
    }
]

// ohos 編譯fullsdk的命令:./build.sh --product-name ohos-sdk

ohos的ci網(wǎng)址如下:https://ci.openharmony.cn/workbench/cicd/dailybuild/dailylist。

使用建議

建議使用Native API的場景

主要有如下一些

  • 應(yīng)用性能敏感代碼,比如游戲,物理模擬等計(jì)算密集型場景。
  • 需要復(fù)用已有的C或C++庫。
  • 需要針對CPU特性進(jìn)行專項(xiàng)定制的庫,如neon加速。

不建議使用Native API的場景

  • 寫一個(gè)純native的的OHOS應(yīng)用。
  • 希望在盡可能多的OHOS設(shè)備上保持兼容的應(yīng)用。

維測能力

  • OHOS官方提供lldb remote方式代碼調(diào)試,詳細(xì)參看lldb參考手冊。
  • musl庫的log維測能力,請參看libc庫維測章節(jié)。

總結(jié)

  • NDK方式是應(yīng)用層直接調(diào)用底層庫或者三方庫目前看最常規(guī)的方式;
  • 4.0(API10)有ndk 46個(gè),3.2(API9)有ndk 28個(gè),實(shí)質(zhì)代碼里有更多的ndk,RK的原因沒有編出更多,比如sensor部分就沒有編譯出來。
  • 劃重點(diǎn),NDK里有兩種api:node-api,用于arkts和c++調(diào)用和傳遞數(shù)據(jù);c/c++ api,可以把動(dòng)態(tài)庫打包成應(yīng)用側(cè)c++直接調(diào)用的接口。
  • 社區(qū)文檔:https://gitee.com/openharmony/docs/tree/master/zh-cn/application-dev/reference。
責(zé)任編輯:姜華 來源: 鴻蒙開發(fā)者社區(qū)
相關(guān)推薦

2023-03-13 15:18:04

NDK工具

2023-06-12 15:43:44

鴻蒙智能家居開發(fā)

2024-01-18 15:24:06

Rust開發(fā)鴻蒙OH4.0

2013-01-16 15:07:30

Android NDKAndroid開發(fā)

2012-06-21 11:02:43

前端開發(fā)

2012-02-06 17:15:42

2023-04-21 15:54:08

應(yīng)用開發(fā)鴻蒙

2022-10-12 15:00:02

設(shè)備開發(fā)應(yīng)用開發(fā)

2022-03-02 16:08:31

Harmony應(yīng)用開發(fā)鴻蒙

2024-04-09 09:34:36

鴻蒙系統(tǒng)燒錄操作系統(tǒng)

2009-07-17 12:44:01

NetBeans開發(fā)S

2022-04-01 15:54:01

DHCP網(wǎng)絡(luò)協(xié)議開發(fā)板

2014-03-31 15:32:36

AndroidNDK開發(fā)

2022-01-21 21:22:24

OpenHarmon操作系統(tǒng)鴻蒙

2022-03-14 22:54:57

軟件開發(fā)性能

2023-05-30 14:50:20

界面開發(fā)鴻蒙

2014-07-30 16:43:49

Android

2013-12-27 09:54:58

Android開發(fā)NDK

2022-10-24 14:54:29

LWIP協(xié)議鴻蒙

2022-11-04 14:58:59

應(yīng)用開發(fā)鴻蒙
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

国产黄色一级网站| 国产伦精品一区二区三区高清版| 日韩免费成人av| 日韩电影免费观看高清完整版在线观看 | 欧美精品激情在线观看| 女~淫辱の触手3d动漫| 91麻豆精品一二三区在线| 亚洲午夜三级在线| 午夜精品一区二区三区在线观看| 精品国自产在线观看| 久久美女性网| 久久久久久12| 一级免费黄色录像| 少妇久久久久| 欧美一级理论片| 99免费视频观看| 成人在线免费观看黄色| 国产精品视频一区二区三区不卡| 国产伦精品一区二区三区高清 | 日本成人中文字幕在线视频| 九九精品视频在线观看| 国产成人一区二区在线观看| 国产香蕉精品| 91精品国产色综合久久不卡蜜臀 | 亚洲自拍一区在线观看| 亚洲一级二级| 久久久精品在线| 性の欲びの女javhd| 欧美做受69| 日韩精品影音先锋| 日韩av自拍偷拍| 91亚洲视频| 日韩欧美在线网址| 免费看日本毛片| 四虎影院观看视频在线观看 | 久久久久久福利| 国产精品福利在线观看播放| 在线电影欧美日韩一区二区私密| 欧美一区二区三区成人精品| 精品亚洲精品| 精品久久久久久久久久久院品网 | 亚洲视频图片小说| 美脚丝袜一区二区三区在线观看| 高h震动喷水双性1v1| 国产一区二区导航在线播放| 国产一区二区丝袜高跟鞋图片| 波多野结衣一二区| 日韩国产欧美在线播放| 国产成人在线播放| 精品人妻一区二区三区潮喷在线| 亚洲国产一区二区精品专区| 久久久久国产精品免费| 精品肉丝脚一区二区三区| 欧美日韩视频一区二区三区| 久久99精品视频一区97| 久久97人妻无码一区二区三区| 久久精品青草| 久久影视电视剧免费网站清宫辞电视| 99成人在线观看| 天天做天天爱天天综合网| 日韩在线免费av| 午夜激情福利电影| 综合精品久久| 欧美精品18videos性欧美| 豆国产97在线 | 亚洲| 在线免费观看欧美| 8090成年在线看片午夜| 无码人妻丰满熟妇奶水区码| 日本成人中文字幕| 亚洲自拍偷拍区| 亚洲欧美另类日韩| 91免费看视频| 亚洲 国产 日韩 综合一区| 免费高清在线观看| 一区二区三区四区中文字幕| 久草热视频在线观看| 偷拍视频一区二区三区| 欧美人与z0zoxxxx视频| 免费在线观看日韩av| 日韩精品a在线观看91| 亚洲日本欧美中文幕| fc2ppv在线播放| 在线免费高清一区二区三区| 国产精品扒开腿做爽爽爽视频| 国产精品毛片一区二区在线看舒淇| 国产成人在线视频播放| 你懂的视频在线一区二区| √天堂资源地址在线官网| 亚洲精品一二三区| 精品99在线视频| 亚洲一区二区av| 亚洲高清免费观看高清完整版| 老熟妇一区二区| 国产一区亚洲| 国产精品亚洲综合天堂夜夜| 亚洲精品国产手机| 欧美国产一区视频在线观看| 欧美一区二区激情| 草民电影神马电影一区二区| 欧美电影免费观看完整版 | 亚洲天堂网中文字| 久久精品视频16| 亚洲欧洲二区| 日韩国产激情在线| 男人操女人的视频网站| 久久久夜精品| 国产精品jizz视频| 麻豆传媒视频在线观看免费| 欧美性xxxx极品hd满灌| 日本成人在线免费观看| 欧洲激情综合| 97国产精品人人爽人人做| 国产麻豆免费观看| 久久久久久久久久久久久夜| 欧美人成在线观看| 国产麻豆一区二区三区| 亚洲一级黄色片| 一级片免费网址| 国产精品77777| 亚洲精品在线免费看| 中文字幕在线免费观看视频| 日韩精品中文字幕在线一区| 日本一级片免费| 青青青伊人色综合久久| 久久99精品久久久久久秒播放器| av毛片在线| 欧美在线你懂的| 日韩精品卡通动漫网站| 日韩视频在线一区二区三区| 亚洲一区二区三区视频播放| 一级日本在线| 精品1区2区3区| 无码人妻aⅴ一区二区三区69岛| 99热在线精品观看| 国产精品免费区二区三区观看| bt在线麻豆视频| 91精品久久久久久久91蜜桃 | 亚洲高清不卡在线观看| www.久久com| 天天做综合网| 91美女高潮出水| av网站网址在线观看| 91麻豆精品国产自产在线| 一级片黄色录像| 毛片av一区二区| 亚洲人一区二区| 欧美a视频在线| 精品国产一区二区三区久久久狼| 国产精品露脸视频| 国产精品久久久久国产精品日日| 亚洲精品自拍网| 国产精品久久久久久久| 91免费看国产| 亚洲妇熟xxxx妇色黄| 日韩精品一区二区在线观看| 国产精品第一页在线观看| 丰满白嫩尤物一区二区| 黄色www网站| 欧美女王vk| 国产日韩精品综合网站| 在线午夜影院| 亚洲丁香久久久| 欧美国产成人精品一区二区三区| 久久精品夜色噜噜亚洲aⅴ| 亚洲黄色av网址| 超碰在线成人| 中文字幕一区二区视频| 无限资源日本好片| 99成人超碰| 亚洲影院高清在线| 欧美xxxx黑人又粗又长| 亚洲第一男人av| 在线免费黄色av| 国产精品污网站| 午夜福利123| 极品中文字幕一区| 蜜桃导航-精品导航| 精品视频在线一区二区在线| 日日狠狠久久偷偷四色综合免费 | 欧洲另类一二三四区| 免费看的黄色录像| 国产91在线观看| 国产99久久九九精品无码| 日本女优一区| 粉嫩高清一区二区三区精品视频| 另类激情视频| 久久香蕉国产线看观看网| 欧美一级免费片| 欧美在线免费播放| 欧美人妻精品一区二区三区| 久久久久久影视| 四虎成人在线播放| 亚洲欧美日韩国产一区| 手机成人av在线| 日韩超碰人人爽人人做人人添| 国产乱肥老妇国产一区二| 女囚岛在线观看| 中文字幕av一区二区三区谷原希美| a天堂视频在线| 在线亚洲精品福利网址导航| 黄色一级片在线| 国产精品网友自拍| 最近日本中文字幕| 国产一区二区网址| 国产精品亚洲a| 黄色亚洲在线| 亚洲一区二区在线看| 欧美在线导航| 91传媒在线免费观看| 91成人在线| 91精品国产沙发| 色呦呦视频在线观看| 中文字幕精品一区二区精品| 三级视频在线看| 7799精品视频| 中文字幕av影视| 色综合久久天天综合网| 豆国产97在线 | 亚洲| 亚洲色图清纯唯美| 美国美女黄色片| 久久一夜天堂av一区二区三区 | 在线观看中文字幕av| 狠狠爱在线视频一区| 精品少妇theporn| 亚洲欧美国产三级| 极品久久久久久久| 国产亚洲视频系列| 熟女少妇一区二区三区| av中文字幕亚洲| 69xxx免费视频| 国产精品正在播放| 国产无遮挡猛进猛出免费软件| 日韩二区三区在线观看| 日韩中文字幕二区| 久久精品日韩欧美| 国产aaa一级片| 国产欧美不卡| 日日橹狠狠爱欧美超碰| 亚洲黄色av| 青青草视频在线免费播放 | 久久久亚洲国产| 日本天码aⅴ片在线电影网站| 欧美成人精品在线| av片在线观看永久免费| 九色精品美女在线| 日本资源在线| 久久久久久久久久久免费| 亚洲精品白浆| 久久男人资源视频| 牛牛精品一区二区| 奇米四色中文综合久久| 欧美大电影免费观看| 国产成人自拍视频在线观看| 美女网站视频一区| 国产精品久久一区主播| 亚洲狼人综合| 99国精产品一二二线| 成人知道污网站| 久久久久久国产精品免费免费| 色愁久久久久久| 日韩久久在线| 99精品视频在线观看播放| 最新不卡av| 国产综合色产| 国产精品宾馆在线精品酒店| 天堂一区二区在线| 极品粉嫩美女露脸啪啪| 国产精品一区二区免费不卡 | 久久久精品黄色| 亚洲精品国产精品乱码在线观看| 亚洲三级视频在线观看| 国产精品suv一区二区69| 日韩欧美亚洲成人| 一级特黄录像免费看| 日韩免费电影网站| 色视频在线观看| 日韩在线中文视频| wwww在线观看免费视频| 国产成人精品久久亚洲高清不卡| 视频欧美精品| 国内精品久久国产| 成人免费在线播放| 青青在线免费观看| 日韩av一级电影| 人妻精油按摩bd高清中文字幕| 99久久免费精品| 2014亚洲天堂| 婷婷国产v国产偷v亚洲高清| 久久久999久久久| 精品国产露脸精彩对白| www亚洲人| 97高清免费视频| 国产电影一区二区| 麻豆成人在线播放| 欧美破处大片在线视频| 欧美一级黄色影院| 成人动漫一区二区三区| 成人18视频免费69| 婷婷成人激情在线网| 国产又粗又长又黄| 亚洲欧美一区二区激情| 四虎影院观看视频在线观看| 国产精品女人网站| 免费看久久久| 成人手机在线播放| 免费一级欧美片在线观看| 亚洲av无码一区二区三区观看| 综合欧美亚洲日本| 久操视频在线免费观看| 亚洲成人精品久久| av网站导航在线观看免费| 国产精品狼人色视频一区| 日本一区福利在线| 国产日韩亚洲欧美在线| 国产中文字幕精品| 人人爽人人爽人人片| 色香蕉久久蜜桃| 天堂中文资源在线观看| 欧美丰满少妇xxxxx做受| 欧美视频精品| 日韩精品国内| 亚洲在线播放| 久久无码人妻精品一区二区三区| 亚洲图片欧美激情| 中文字幕第一页在线播放| 亚洲人成电影网站色www| 成人免费图片免费观看| 91蜜桃网站免费观看| 羞羞答答成人影院www| 色天使在线观看| 欧美激情中文不卡| 成人一二三四区| 在线观看日韩欧美| 欧美123区| 台湾成人av| 男人的天堂亚洲一区| 五月天综合视频| 色狠狠桃花综合| 国产高清免费在线播放| 国产精彩精品视频| 综合色就爱涩涩涩综合婷婷| 成人毛片视频网站| 2019国产精品| 老熟妇一区二区三区| 正在播放欧美视频| 99热播精品免费| 国产精品av免费| 国内一区二区在线| 欧美成欧美va| 精品99999| 欧美7777| 亚洲成色最大综合在线| 久久国产剧场电影| 美女的奶胸大爽爽大片| 日韩精品一区二区三区在线观看| sm在线播放| 欧美亚州在线观看| 麻豆91小视频| 欧美精品一区二区蜜桃| 亚洲国产欧美在线成人app| 午夜欧美激情| 亚洲福利av| 国产一区二区精品久久99| 国产一级大片在线观看| 日韩电视剧在线观看免费网站| 国产精品av一区二区三区| 亚洲免费久久| 国产乱码精品一区二区三| 国产一级视频在线观看| 亚洲毛茸茸少妇高潮呻吟| 国产综合色在线观看| 一级黄色片播放| 99久久国产综合精品女不卡| 波多野结衣一区二区三区在线| 久久综合电影一区| 成人盗摄视频| 美女一区二区三区视频| 亚洲欧美一区二区三区国产精品| 色偷偷在线观看| 国产精品久久久久久久一区探花| 中文乱码免费一区二区三区下载| 亚洲男女在线观看| 欧美三级三级三级爽爽爽| 神马午夜伦理不卡 | 欧美中文字幕一二三区视频| 久久精品视频免费看| 久久手机视频| 国产麻豆精品视频| 成人毛片在线播放| 久久不射电影网| 欧美猛男男男激情videos| 亚洲欧美日韩中文字幕在线观看| 色哟哟精品一区| 污污影院在线观看| 亚洲精品永久www嫩草| 99久久久久久| 精品国产av鲁一鲁一区| 国产国产精品人在线视| 极品日韩av| www.99re7|