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

跟著小白一起學(xué)鴻蒙--JS應(yīng)用控制LED(十)

系統(tǒng) OpenHarmony
Ace(foundation/arkui/ace_engine_lite)是OpenHarmony的輕量級(jí)系統(tǒng)所使用的UI框架子系統(tǒng),為開發(fā)者提供JS-UI開發(fā)框架。包括.html,.css,.js。

??想了解更多關(guān)于開源的內(nèi)容,請(qǐng)?jiān)L問:??

??51CTO 開源基礎(chǔ)軟件社區(qū)??

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

在《#跟著小白一起學(xué)鴻蒙# [九] 寫個(gè)簡單的LED驅(qū)動(dòng)》我們熟悉了如何在開源鴻蒙開發(fā)驅(qū)動(dòng)應(yīng)用,并通過hdc工具拷貝至開發(fā)板運(yùn)行。在《#跟著小白一起學(xué)鴻蒙#[六]第一個(gè)hap應(yīng)用》的文章里我們學(xué)會(huì)如何用IDE工具編寫hap應(yīng)用并他通過IDE工具安裝至開發(fā)板運(yùn)行。我們學(xué)會(huì)了hap程序的開發(fā),但是hap程序是運(yùn)行在標(biāo)準(zhǔn)系統(tǒng)的應(yīng)用,對(duì)于輕量和小型系統(tǒng)我們應(yīng)該如何進(jìn)行開發(fā)呢?接下來我們需要學(xué)習(xí)下如何開發(fā)JS應(yīng)用。

輕量、小型系統(tǒng)JS應(yīng)用

Ace(foundation/arkui/ace_engine_lite)是OpenHarmony的輕量級(jí)系統(tǒng)所使用的UI框架子系統(tǒng),為開發(fā)者提供JS-UI開發(fā)框架。包括.html,.css,.js。開發(fā)者可以通過DevEco工具進(jìn)行開發(fā)。其中JS的引擎采用三方庫里的JerryScript(jerryscript是IoT設(shè)備上的輕量級(jí)JS引擎,支持ECMAScript 5.1標(biāo)準(zhǔn),適配低內(nèi)存硬件,最小運(yùn)行在64KB RAM和小于200KB的flash,提供C API)。關(guān)于jerryscript的詳細(xì)介紹可以看如下參考鏈接(https://github.com/jerryscript-project/jerryscript )。

#沖刺創(chuàng)作新星# #跟著小白一起學(xué)鴻蒙# [十] JS應(yīng)用控制LED-開源基礎(chǔ)軟件社區(qū)

詳細(xì)的內(nèi)容介紹在一下鏈接內(nèi)可以看到官方的說明:

參考鏈接:https://gitee.com/openharmony/arkui_ace_engine_lite。

此樣例參考小熊派設(shè)計(jì),使用小熊派HM_Micro開發(fā)板進(jìn)行驗(yàn)證。

JS-UI開發(fā)流程

graph LR
--> 配置工程 --> 增加LED程序 --> 添加JSAPI接口

創(chuàng)建工程配置工程增加LED程序添加JSAPI接口編譯運(yùn)行。

建立[Lite]Empty Ability。

#沖刺創(chuàng)作新星# #跟著小白一起學(xué)鴻蒙# [十] JS應(yīng)用控制LED-開源基礎(chǔ)軟件社區(qū)

配置工程。

#沖刺創(chuàng)作新星# #跟著小白一起學(xué)鴻蒙# [十] JS應(yīng)用控制LED-開源基礎(chǔ)軟件社區(qū)

工程結(jié)構(gòu)說明。

#沖刺創(chuàng)作新星# #跟著小白一起學(xué)鴻蒙# [十] JS應(yīng)用控制LED-開源基礎(chǔ)軟件社區(qū)

工程目錄主要在entry里,有以下內(nèi)容:

  • .preview: 界面預(yù)覽目錄。
  • build: 工程編譯目錄。
  • src:包括i18n(國際化翻譯路徑),pages(界面目錄,index.css, index.hml, index.js)。

工程預(yù)覽。

#沖刺創(chuàng)作新星# #跟著小白一起學(xué)鴻蒙# [十] JS應(yīng)用控制LED-開源基礎(chǔ)軟件社區(qū)

添加按鍵功能控制LED燈。

  • 修改index.hml
<div class="container">
<text class="title">
{{ $t('strings.hello') }} {{ title }}
</text>

<div class="rowcontainer">
<text class="content" if="{{statu == '0'}}">[狀態(tài):{{ $t('strings.ledoff') }}]</text>
<text class="content" if="{{statu == '1'}}">[狀態(tài):{{ $t('strings.ledon') }}]</text>
<text class="content" onclick="ledon">
{{ $t('strings.ledon') }}
</text>
<text class="content" onclick="ledoff">
{{ $t('strings.ledoff') }}
</text>
<text class="content" onclick="ledtoggle">
{{ $t('strings.ledtoggle') }}
</text>
</div>
<text class="content" onclick="exit">
{{ $t('strings.exit') }}
</text>
</div>
  • 修改index.css
.container {
width: 100%;
height: 100%;
flex-direction: column;
justify-content: center;
align-items: center;
}
.title {
width: 200px;
font-size: 30px;
text-align: center;
}
.content{
width: 200px;
font-size: 30px;
text-align: center;
}
.rowcontainer {
width: 100%;
height: 50%;
flex-direction: row;
justify-content: center;
align-items: center;
}
  • 修改index.js
var led = {open:1,close:0,change:2}
import app from '@system.app';
export default {
data: {
title: "",
statu:'0'
},
onInit() {
this.title = this.$t('strings.world');
},
ledon(e) {
let that = this
console.info("ledon")
app.ledcontrol({
code:led.open,
success(res){
that.statu = res.led_status
},
fail(res,code){
console.error("ledon error")
},
complete(){
console.info("ledon complete")
}
})
},
ledoff(e) {
let that = this
console.info("ledoff")
app.ledcontrol({
code:led.close,
success(res){
that.statu = res.led_status
},
fail(res,code){
console.error("ledoff error")
},
complete(){
console.info("ledoff complete")
}
})
},
ledtoggle(e) {
let that = this
console.info("ledtoggle")
app.ledcontrol({
code:led.change,
success(res){
that.statu = res.led_status
},
fail(res,code){
console.error("ledtoggle failed")
},
complete(){
console.info("ledtoggle complete")
}
})
},
exit(e) {
app.terminate()
},
}
  • 預(yù)覽

#沖刺創(chuàng)作新星# #跟著小白一起學(xué)鴻蒙# [十] JS應(yīng)用控制LED-開源基礎(chǔ)軟件社區(qū)

  • 將代碼編譯成hap包:點(diǎn)擊編輯器最左下角的OhosBuild Varilants,打開編譯模式選擇視圖,編譯模式分debug和release,選擇release模式;
  • 點(diǎn)擊編輯器上方菜單欄的Build->Build Hap(s)/App(s)->Build Hap(s),系統(tǒng)就會(huì)開始自動(dòng)編譯代碼成hap包,等到下方Build Output無編譯錯(cuò)誤,就表示代碼編譯完成了。

增加JS的API接口。

  • 在app_module.h里增加接口

JSI::SetModuleAPI(exports, "ledcontrol", AppModule::ToggleLed);

  • 在app_module.cpp里增加接口實(shí)現(xiàn)
#include "hdf_sbuf.h"
#include "hdf_io_service_if.h"
#define LED_WRITE_READ 1
#define LED_SERVICE "hdf_led"
......
static int OnDevEventReceived(void *priv, uint32_t id, struct HdfSBuf *data)
{
uint32_t value;
HdfSbufReadUint32(data, &value);
HILOG_ERROR(HILOG_MODULE_ACE,"%s: dev event received: %u %u\n", (char *)priv, id, value);

return HDF_SUCCESS;
}
static int GpioWriteRead(struct HdfIoService *serv, int32_t eventData, int32_t *val)
{
int ret = HDF_FAILURE;
struct HdfSBuf *data = HdfSBufObtainDefaultSize();
struct HdfSBuf *reply = HdfSBufObtainDefaultSize();

if (data == NULL || reply == NULL) {
HILOG_ERROR(HILOG_MODULE_ACE,"fail to obtain sbuf data\n");
return ret;
}
if (!HdfSbufWriteUint8(data, (uint8_t)eventData))
{
HILOG_ERROR(HILOG_MODULE_ACE,"fail to write sbuf\n");
HdfSBufRecycle(data);
HdfSBufRecycle(reply);
return ret;
}
ret = serv->dispatcher->Dispatch(&serv->object, LED_WRITE_READ, data, reply);
if (ret != HDF_SUCCESS)
{
HILOG_ERROR(HILOG_MODULE_ACE,"fail to send service call\n");
HdfSBufRecycle(data);
HdfSBufRecycle(reply);
return ret;
}
if (!HdfSbufReadInt32(reply, val))
{
HILOG_ERROR(HILOG_MODULE_ACE,"fail to get service call reply\n");
ret = HDF_ERR_INVALID_OBJECT;
HdfSBufRecycle(data);
HdfSBufRecycle(reply);
return ret;
}
HILOG_ERROR(HILOG_MODULE_ACE,"Get reply is: %d\n", val);

HdfSBufRecycle(data);
HdfSBufRecycle(reply);
return ret;
}
JSIValue AppModule::ToggleLed(const JSIValue thisVal, const JSIValue *args, uint8_t argsNum)
{
HILOG_ERROR(HILOG_MODULE_ACE, "led button pressed.");
struct HdfIoService *serv = HdfIoServiceBind(LED_SERVICE);
if (serv == NULL)
{
HILOG_ERROR(HILOG_MODULE_ACE,"fail to get service2 %s\n", LED_SERVICE);
return JSI::CreateUndefined();
}
if ((args == nullptr) || (argsNum == 0) || (JSI::ValueIsUndefined(args[0]))) {
return JSI::CreateUndefined();
}
JSIValue success = JSI::GetNamedProperty(args[0], CB_SUCCESS);
JSIValue fail = JSI::GetNamedProperty(args[0], CB_FAIL);
JSIValue complete = JSI::GetNamedProperty(args[0], CB_COMPLETE);

int32_t num = (int32_t)JSI::GetNumberProperty(args[0], "code");

int32_t replyData = 0;

if (GpioWriteRead(serv, num, &replyData))
{
HILOG_ERROR(HILOG_MODULE_ACE,"fail to send event\n");
JSI::CallFunction(fail, thisVal, nullptr, 0);
JSI::CallFunction(complete, thisVal, nullptr, 0);
JSI::ReleaseValueList(success, fail, complete);
return JSI::CreateUndefined();
}
JSIValue result = JSI::CreateObject();
JSI::SetNumberProperty(result, "led_status", replyData);
JSIValue argv[ARGC_ONE] = {result};
JSI::CallFunction(success, thisVal, argv, ARGC_ONE);
JSI::CallFunction(complete, thisVal, nullptr, 0);
JSI::ReleaseValueList(success, fail, complete, result);

HdfIoServiceRecycle(serv);

return JSI::CreateUndefined();
}
  • 在foundation\ace\ace_engine_lite\ace_lite.gni中添加HDF頭文件路徑
ace_lite_include_dirs += [    
......
"http://drivers/framework/ability/sbuf/include",
"http://drivers/framework/include/core",
"http://drivers/framework/include/utils",
"http://drivers/adapter/uhdf/posix/include",
]
  • 添加編譯依賴
修改foundation\ace\ace_engine_lite\frameworks\BUILD.gn,在public_deps中添加以下代碼
"http://drivers/adapter/uhdf/manager:hdf_core",
修改foundation\ace\ace_engine_lite\test\ace_test_config.gni,在extra_deps中添加以下代碼
"http://drivers/adapter/uhdf/manager:hdf_core",

總結(jié)

  1. 基于JS擴(kuò)展的類Web開發(fā)范式的方舟開發(fā)框架,采用經(jīng)典的HML、CSS、JavaScript三段式開發(fā)方式。使用HML標(biāo)簽文件進(jìn)行布局搭建,使用CSS文件進(jìn)行樣式描述,使用JavaScript文件進(jìn)行邏輯處理。UI組件與數(shù)據(jù)之間通過單向數(shù)據(jù)綁定的方式建立關(guān)聯(lián),當(dāng)數(shù)據(jù)發(fā)生變化時(shí),UI界面自動(dòng)觸發(fā)更新。此種開發(fā)方式,更接近Web前端開發(fā)者的使用習(xí)慣,快速將已有的Web應(yīng)用改造成方舟開發(fā)框架應(yīng)用。主要適用于界面較為簡單的中小型應(yīng)用開發(fā);
  2. 通過appmodule調(diào)用framework層接口,然后通過framework接口調(diào)用Hdf接口。

這樣我們就有了自己的driver和配置,后面的章節(jié)我們會(huì)講如何在hap應(yīng)用里調(diào)用驅(qū)動(dòng)接口。

??想了解更多關(guān)于開源的內(nèi)容,請(qǐng)?jiān)L問:??

??51CTO 開源基礎(chǔ)軟件社區(qū)??

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

責(zé)任編輯:jianghua 來源: 51CTO開源基礎(chǔ)軟件社區(qū)
相關(guān)推薦

2022-10-10 14:47:04

藍(lán)牙應(yīng)用鴻蒙

2022-10-17 14:29:24

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

2022-11-29 16:35:02

Tetris鴻蒙

2022-12-02 14:20:09

Tetris鴻蒙

2023-03-30 09:32:27

2022-11-14 17:01:34

游戲開發(fā)畫布功能

2023-02-27 16:30:32

鴻蒙開源協(xié)議分析

2022-08-19 19:02:20

開源鴻蒙操作系統(tǒng)

2023-03-30 09:19:54

SELinux安全子系統(tǒng)

2023-04-04 09:24:11

鴻蒙HiDumper

2022-12-09 15:34:38

2023-01-03 15:09:10

鴻蒙常用工具

2022-10-09 15:05:50

NAPI框架鴻蒙

2022-12-06 15:39:16

鴻蒙主干代碼

2022-11-24 14:34:41

Hap程序鴻蒙

2023-03-15 16:19:03

BinderIPC工具

2022-09-30 14:08:26

Hap應(yīng)用鴻蒙

2022-10-31 15:35:02

Wi-Fi藍(lán)牙子系統(tǒng)

2022-11-03 15:47:04

HTTP通信協(xié)議

2022-11-08 15:43:45

開源鴻蒙藍(lán)牙協(xié)議棧
點(diǎn)贊
收藏

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

亚洲美女在线视频| 亚洲精品欧美二区三区中文字幕| 欧美激情18p| 国产ts丝袜人妖系列视频| 先锋欧美三级| 一区二区视频免费在线观看| 蜜桃久久影院| 97超视频在线观看| 一区二区精品| 精品国产欧美一区二区三区成人| 国产国语老龄妇女a片| 超碰aⅴ人人做人人爽欧美| 国产精品久久久久影院亚瑟| 国产一区二区三区奇米久涩| 中文字幕日韩经典| 在线亚洲自拍| 久久婷婷国产麻豆91天堂| 久久精品综合视频| 玖玖玖视频精品| 色婷婷激情综合| 日韩精品在线观看av| 北岛玲日韩精品一区二区三区| 国产成人亚洲综合a∨猫咪| 国产精品国产福利国产秒拍| 国产大片中文字幕在线观看| 欧美韩日一区| 亚洲天堂网在线观看| 无码人妻少妇色欲av一区二区| 亚洲承认视频| 黑人巨大精品欧美一区二区一视频| 一级二级三级欧美| 你懂的在线观看| www.欧美.com| 成人区精品一区二区| 伊人免费在线观看| 天堂久久久久va久久久久| 久久人人爽人人爽人人片av高请| 娇小11一12╳yⅹ╳毛片| 国产精品午夜一区二区三区| 亚洲高清免费观看高清完整版| 欧美性猛交xxxx乱大交91| 91精品xxx在线观看| 精品久久久久久中文字幕一区奶水| 日本美女爱爱视频| 美女国产在线| 中文字幕在线视频一区| 亚洲va韩国va欧美va精四季| 免费在线毛片| 久久久另类综合| 精选一区二区三区四区五区| 丰满肥臀噗嗤啊x99av| 国产一区二区三区高清播放| 国产免费成人av| 中文字幕乱码中文字幕| 免费观看成人av| 国产精品香蕉国产| 一级黄色免费看| 蜜桃av噜噜一区二区三区小说| 日韩av成人在线| av首页在线观看| 日韩精品国产精品| 国产精品三级在线| 中文字幕理论片| 久久国产精品露脸对白| 成人美女免费网站视频| 国产精品区在线观看| 国产一区二区精品久久| 97久久夜色精品国产九色| 精品国产无码一区二区| 成人网男人的天堂| 国产一区免费观看| 偷拍自拍在线视频| 国产日韩欧美一区二区三区乱码| 任我爽在线视频精品一| 三区四区电影在线观看| 亚洲女性喷水在线观看一区| 日韩在线观看a| 98色花堂精品视频在线观看| 色综合天天综合色综合av | 911亚洲精选| 澳门精品久久国产| 亚洲精品视频在线观看视频| 免费黄色片网站| 无码一区二区三区视频| 欧美精品videossex性护士| 日韩乱码一区二区| 日韩成人伦理电影在线观看| 国产在线播放91| 黄色成人一级片| 久久人人爽爽爽人久久久| 亚洲日本无吗高清不卡| 欧美伦理免费在线| 日本精品一区二区三区高清 | 视频欧美精品| 精品国产一区二区三区忘忧草| 中文在线永久免费观看| 成人三级视频| 国外视频精品毛片| 国产精品欧美综合| 国产99久久精品| 欧美中文娱乐网| 深夜国产在线播放| 色999日韩国产欧美一区二区| 亚洲视频在线不卡| 国产成人ay| 欧美情侣性视频| 不卡av电影在线| 成人高清在线视频| 亚洲综合激情五月| 日本乱码一区二区三区不卡| 欧美日韩高清在线播放| 色噜噜在线观看| 一区二区影院| 国产精品美女视频网站| 秋霞网一区二区| 亚洲欧美在线视频| 能看的毛片网站| 美女视频免费精品| 久久99精品久久久久久噜噜| 中文字幕久久熟女蜜桃| av亚洲精华国产精华精| 国产免费xxx| 免费成人高清在线视频| 日韩成人在线视频| 麻豆chinese极品少妇| 麻豆国产精品视频| 欧美激情导航| av成人 com a| 精品捆绑美女sm三区| 四虎永久免费在线| 精品一区二区三区欧美| 深田咏美在线x99av| 偷拍中文亚洲欧美动漫| 亚洲精品国产精品久久清纯直播 | 欧美jizzhd精品欧美巨大免费| 日本精品视频网站| 日韩一区av| 午夜亚洲国产au精品一区二区| 女王人厕视频2ⅴk| 天天做天天爱天天综合网| 国产精品视频久久| yiren22亚洲综合伊人22| 一区二区三区在线免费观看| 免费日韩视频在线观看| 福利片在线一区二区| 欧美高清在线视频观看不卡| 国产免费不卡av| 亚洲欧美一区二区在线观看| 99日在线视频| 一本到12不卡视频在线dvd| 国产在线高清精品| 免费黄色在线| 91精品国产综合久久久久久久| 综合 欧美 亚洲日本| 久久精品99国产精品| 中文有码久久| 国内不卡的一区二区三区中文字幕 | 一区二区三区欧美日韩| 一级黄色免费毛片| 亚洲综合激情在线| 3d精品h动漫啪啪一区二区| 国产丝袜在线| 日韩精品一区二区三区视频| 激情五月激情综合| 麻豆一区二区三| 狠狠干视频网站| 成人动漫视频| 欧美综合国产精品久久丁香| 精品影院一区| 欧美日韩成人综合| 青青青在线免费观看| 国产激情视频一区二区在线观看| 男女日批视频在线观看| 日韩欧美ww| 国产精品美女免费视频| 91最新在线视频| 亚洲第一网中文字幕| 9i看片成人免费看片| 国产精品美女久久久久久2018| 99九九99九九九99九他书对| 欧美黄在线观看| 久久99国产精品99久久| 精品国模一区二区三区| 久久久精品一区| 人妻va精品va欧美va| 欧亚一区二区三区| 亚洲二区在线播放| 91美女蜜桃在线| 中文字幕成人免费视频| 亚洲乱码久久| 日韩中文字幕一区二区| 精品午夜视频| 日韩av手机在线观看| 超碰在线无需免费| 亚洲老司机av| 精品人妻无码一区二区三区蜜桃一| 激情懂色av一区av二区av| 国产18无套直看片| eeuss影院一区二区三区| 亚洲欧洲日本精品| 精品福利电影| 亚洲精品一区二区三区四区五区| gogo久久日韩裸体艺术| 国产精品精品视频| 精品三级久久| 噜噜噜久久亚洲精品国产品小说| 国产精品一二三在线| 国产乱妇乱子在线播视频播放网站| 国产偷亚洲偷欧美偷精品| 国产原创中文av| 欧美三级免费观看| 久久黄色免费网站| 国产精品丝袜久久久久久app| 久久久久无码精品| 蜜桃av一区二区| 免费在线激情视频| 午夜国产精品视频免费体验区| 亚洲国产一区二区三区在线| 牛牛影视久久网| 亚洲精品欧美日韩| 日本午夜精品久久久久| 日韩av免费看| 阿v视频在线观看| 久久视频在线免费观看| 91在线网址| 亚洲欧美中文日韩在线| 殴美一级特黄aaaaaa| 日韩一区二区高清| 97人妻人人澡人人爽人人精品| 91久久线看在观草草青青| 久久久久久久国产视频| 亚洲欧洲日产国码二区| 亚洲精品91在线| 久久久久综合网| 风间由美一二三区av片| 成人动漫av在线| 中文字幕视频观看| 成人丝袜高跟foot| www.久久久久久久久久久| 日韩精品午夜视频| 四虎永久在线精品无码视频| 99国产精品| 91国视频在线| 99国产精品久久久久久久| 可以看毛片的网址| 亚洲一级二级| 成人性免费视频| 亚洲人成免费| 男女激情无遮挡| 亚洲美女黄网| 久久久久免费看黄a片app| 亚洲午夜激情在线| 妞干网在线播放| 欧美视频亚洲视频| 无码熟妇人妻av在线电影| 好看的亚洲午夜视频在线| 蜜臀精品一区二区| 亚洲每日更新| av片中文字幕| 日韩福利电影在线观看| 少妇一级淫免费放| 国内精品一区视频| 天天爽夜夜爽夜夜爽精品视频| 日韩三级免费看| 天天综合网 天天综合色| 免费看一级视频| 在线观看亚洲精品| 国产精品高潮呻吟AV无码| 日韩午夜激情av| 姝姝窝人体www聚色窝| 亚洲免费电影在线观看| 成a人v在线播放| 久久艳片www.17c.com | 欧美激情免费看| 九色porny自拍视频在线观看| 日本不卡免费高清视频| yy6080久久伦理一区二区| 成人国产亚洲精品a区天堂华泰| 亚洲成人毛片| 国产日韩欧美一区二区三区四区| 日韩精品免费一区二区夜夜嗨| 先锋影音一区二区三区| 亚洲午夜精品一区二区国产 | www成人免费观看| 欧美亚洲国产另类| 欧美日韩伦理一区二区| 国产精品入口免费| 欧美理论视频| 喜爱夜蒲2在线| 久久精品男女| 久久久福利影院| 91毛片在线观看| 国产97免费视频| 在线高清av| 97婷婷涩涩精品一区| 成人综合网站| 好吊色欧美一区二区三区四区| 欧美一级精品| 男女超爽视频免费播放| 久久国产夜色精品鲁鲁99| 女同性恋一区二区三区| 国产精品免费观看视频| 国产精品18p| 在线不卡免费av| 欧美日本韩国一区二区| 欧美高清激情视频| 精品176极品一区| 麻豆91av| 雨宫琴音一区二区在线| 国产原创精品在线| 久久色.com| 国产 日韩 欧美 成人| 欧美电影在线免费观看| 日韩黄色影片| 欧美国产精品va在线观看| 小明成人免费视频一区| 精品国产一区二区三区四区vr | 一本色道久久88精品综合| heyzo在线播放| 国产嫩草影院久久久久| 国产中文字幕一区二区| 一区二区免费看| 国产又色又爽又黄又免费| 亚洲性无码av在线| 一二三四视频在线中文| 国产精品自拍首页| 欧美1级日本1级| 国产成人在线综合| 中文av一区特黄| 波多野结衣电车痴汉| 日韩精品一区二区三区第95| 国内在线视频| 亚洲精品欧美日韩专区| 天天操综合网| 性欧美在线视频| 国产精品拍天天在线| 免费又黄又爽又猛大片午夜| 精品亚洲国产成av人片传媒| 美女精品导航| 国产精品亚洲综合| 国产一区亚洲| 日本黄色三级网站| 亚洲欧美日韩久久精品| 国产又粗又猛又爽又黄视频 | 蜜桃av免费在线观看| 欧美无砖专区一中文字| 国产最新视频在线观看| 国产成人精品久久久| 国产精品免费99久久久| 老头吃奶性行交视频| 亚洲国产精品国自产拍av| 毛片在线免费播放| 日韩在线精品一区| 国产精品亚洲欧美一级在线 | 久久大逼视频| xxxx日本免费| 欧美色图12p| 超碰在线无需免费| 国产成人亚洲欧美| 日韩亚洲国产精品| 国产精品无码久久久久一区二区| 色综合色狠狠综合色| av在线二区| 成人欧美一区二区三区黑人| 欧美日韩国产精品一区二区亚洲| 野战少妇38p| 一本色道a无线码一区v| 福利在线视频导航| 国产自摸综合网| 国产综合视频| 99久久人妻无码精品系列| 欧美性做爰猛烈叫床潮| 精品人妻互换一区二区三区| 美日韩一区二区三区| 精品熟妇无码av免费久久| 欧美精品电影在线播放| 日本一本在线免费福利| 精品九九九九| 日本91福利区| 久久久久久久久久久久久久免费看| 亚洲国产精品久久久久| 日韩不卡免费高清视频| 亚洲第一综合网站| av亚洲产国偷v产偷v自拍| 中文字幕 国产| 欧美激情在线一区| 狠狠色丁香婷婷综合影院| 三级黄色片播放| 欧美日韩亚洲一区二区三区| 1769在线观看| 国产成人成网站在线播放青青| 日韩av网站在线观看| 69av.com| 亚洲一区第一页| 丁香综合av| 国产精品入口免费软件| 亚洲一二三区视频在线观看| 国产视频网站在线| 成人毛片网站| 成人做爰免费视频免费看|