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

使用CPP編寫小型系統(tǒng)APP

系統(tǒng) OpenHarmony
Ability是應(yīng)用所具備能力的抽象,也是應(yīng)用程序的重要組成部分。Ability是系統(tǒng)調(diào)度應(yīng)用的最小單元,是能夠完成一個(gè)獨(dú)立功能的組件。

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

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

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

前言

本文將介紹如何使用cpp編寫用于小型系統(tǒng)的app。

一、ability相關(guān)介紹

Ability是應(yīng)用所具備能力的抽象,也是應(yīng)用程序的重要組成部分。Ability是系統(tǒng)調(diào)度應(yīng)用的最小單元,是能夠完成一個(gè)獨(dú)立功能的組件。一個(gè)應(yīng)用可以包含一個(gè)或多個(gè)Ability。其中ability又分為Page類型的和Service類型的,前者是為用戶提供人機(jī)交互能力的,后者是提供后臺(tái)任務(wù)機(jī)制的,簡(jiǎn)單來講就是Page帶界面,Service不帶界面。這里將重點(diǎn)介紹Page類型的ability。

使用CPP編寫小型系統(tǒng)app-開源基礎(chǔ)軟件社區(qū)

使用到的子系統(tǒng)有ability子系統(tǒng)、包管理子系統(tǒng)和圖形ui子系統(tǒng)。ability子系統(tǒng)是管理OpenHarmony應(yīng)用運(yùn)行狀態(tài)的開發(fā)框架;包管理子系統(tǒng)是OpenHarmony為開發(fā)者提供的安裝包管理框架;圖形ui子系統(tǒng)提供基礎(chǔ)UI組件和容器類組件。

使用CPP編寫小型系統(tǒng)app-開源基礎(chǔ)軟件社區(qū)

二、簡(jiǎn)單實(shí)現(xiàn)1、ability和abilityslice

 1、ability和abilityslice

abilityslice是單個(gè)頁面及其控制邏輯的總和,是Page類型Ability特有的組件,一個(gè)Page類型的Ability可以包含多個(gè)AbilitySlice,此時(shí),這些頁面提供的業(yè)務(wù)能力應(yīng)當(dāng)是高度相關(guān)的。

使用CPP編寫小型系統(tǒng)app-開源基礎(chǔ)軟件社區(qū)

2、生命周期

整體流程下來大致有OnStart()、OnAvtive()、OnInactive()、OnBackground()和OnStop()五階段。abilityslice生命周期與ability相似,但是仍要區(qū)分。

使用CPP編寫小型系統(tǒng)app-開源基礎(chǔ)軟件社區(qū)

3、hello world

./helloworld/
├── config.json //配置文件
├── resource //資源
└── src //主要文件
├── include
├── main_ability.h
└── main_ability_slice.h
└── main
├── main_ability.cpp
└── main_ability_slice.cpp

首先定義并注冊(cè)ability。

// main_ability.h
#ifndef HELLO_MAIN_ABILITY_H
#define HELLO_MAIN_ABILITY_H

#include "ability_loader.h"

namespace OHOS {
class MainAbility : public Ability {
protected:
void OnStart(const Want &want) override; //Want結(jié)構(gòu)體,ability的相關(guān)信息
/*
* 由于在這里我們只要簡(jiǎn)單的展示helloworld標(biāo)簽,其它函數(shù)不需要重載。
*/
// void OnInactive() override;
// void OnActive(const Want &want) override;
// void OnBackground() override;
// void OnStop() override;
};
}

#endif
//main_ability.cpp
#include "main_ability.h"

namespace OHOS {
REGISTER_AA(MainAbility) //使用REGISTER_AA注冊(cè)ability

void MainAbility::OnStart(const Want &want)
{
printf("This is MainAbility OnStart status!\r\n");
SetMainRoute("MainAbilitySlice"); //設(shè)置主頁面為MainAbilitySlice,這要與后續(xù)的slice名字匹配

Ability::OnStart(want);
}
}

最后編寫slice界面。

//main_ability_slice.h
#ifndef HELLO_ABILITY_SLICE_H
#define HELLO_ABILITY_SLICE_H

#include "ability_loader.h"
#include "ability_manager.h"
#include "bundle_manager.h"
#include "components/ui_label.h"

namespace OHOS {
class MainAbilitySlice : public AbilitySlice { //創(chuàng)建AbilitySlice類 與上面同名
public:
MainAbilitySlice() = default;
virtual ~MainAbilitySlice();

protected:
void OnStart(const Want &want) override;
/*
* 同理
*/
// void OnInactive() override;
// void OnActive(const Want &want) override;
// void OnBackground() override;
// void OnStop() override;
};
}
#endif
//main_ability_slice.cpp
#include "main_ability_slice.h"
const int screen_width = 720;
const int screen_height = 1280;

namespace OHOS {
REGISTER_AS(MainAbilitySlice)

MainAbilitySlice::~MainAbilitySlice()
{
printf("This is ~MainAbilitySlice!\r\n");
}

void MainAbilitySlice::OnStart(const Want& want)
{
AbilitySlice::OnStart(want);
RootView* rootView_ = RootView::GetWindowRootView(); //創(chuàng)建底層界面
rootView_->SetPosition(0, 0, screen_width, screen_height);
rootView_->SetStyle(STYLE_BACKGROUND_COLOR, Color::ColorTo32(Color::Black()));
rootView_->SetFocusable(true);
rootView_->SetInterceptFocus(false);

UILabel* label = new UILabel(); //創(chuàng)建label寫入Hello World
label->SetPosition(0, 0, 720, 64);
label->SetText("Hello World!");
label->SetFont("SourceHanSansSC-Regular.otf", 64);
label->SetStyle(STYLE_TEXT_COLOR, Color::ColorTo32(Color::White()));

rootView_->Add(label); //將label放入rootView

SetUIContent(rootView_); //設(shè)置顯示RootView UI
}
}
#endif

4、config.json的編寫

//config.json
{
"app": {
"bundleName": "com.sample.hello",
"vendor": "sample",
"version": {
"code": 1,
"name": "1.0"
},
"apiVersion": {
"compatible": 3,
"target": 4
}
},
"deviceConfig": {
"default": {
}
},
"module": {
"package": "com.sample.hello",
"name": ".MyHarmonyAbilityPackage",
"deviceType": [
"phone",
"tv",
"tablet",
"pc",
"car",
"smartWatch",
"sportsWatch",
"smartVision"
],
"distro": {
"deliveryWithInstall": true,
"moduleName": "hello",
"moduleType": "entry"
},
"abilities": [ //ability配置聲明
{
"name": "MainAbility",
"label": "hello world app",
"launchType": "standard",
"type": "page",
"visible": true
}
]
}
}

三、hap編譯

1、通過BUILD.gn與系統(tǒng)一并編譯。

使用到編譯鏈中的hap_pack,添加配置 import(“//build/lite/config/hap_pack.gni”)

import("http://build/lite/config/hap_pack.gni")

shared_library("hello") {
sources = [
"src/main/main_ability.cpp",
"src/main/main_ability_slice.cpp"
] #將主要文件編譯出庫

deps = [
"${aafwk_lite_path}/frameworks/ability_lite:aafwk_abilitykit_lite",
"${appexecfwk_lite_path}/frameworks/bundle_lite:bundle",
"http://foundation/graphic/ui:lite_ui",
"http://foundation/graphic/utils:lite_graphic_utils",
"http://foundation/systemabilitymgr/samgr_lite/samgr:samgr",
]

include_dirs = [
"src/include",
"${aafwk_lite_path}/interfaces/kits/ability_lite",
"${aafwk_lite_path}/interfaces/kits/want_lite",
"${appexecfwk_lite_path}/interfaces/kits/bundle_lite",
]

ldflags = [ "-shared" ]
ldflags += [ "-lstdc++" ]
ldflags += [ "-L$ohos_root_path/sysroot/usr/lib" ]
ldflags += [ "-Wl,-rpath-link=$ohos_root_path/sysroot/usr/lib" ]
ldflags += [
"-lui",
"-lability",
] #添加依賴

defines = [
"ENABLE_WINDOW=1",
"ABILITY_WINDOW_SUPPORT",
"OHOS_APPEXECFWK_BMS_BUNDLEMANAGER",
] #配置定義
}

hap_pack("hello_hap") { #打包成hap
deps = [ ":hello" ]
mode = "hap"
json_path = "config.json"
ability_so_path = "$root_out_dir/libhello.so" #編譯后的庫文件
force = "true"
cert_profile = "com.huawei.launcher_AppProvision_release.p7b" #由于不清楚獲取證書方法 先用源碼案例自帶的證書代替
resources_path = "resources"
hap_name = "hello"
}

2、 通過app_packing_tool單獨(dú)編譯

該打包工具在源碼目錄developtools/packing_tool/jar下。
主要參數(shù)如下:

命令參數(shù)

對(duì)應(yīng)的資源文件

說明

是否可缺省

–mode

-

為“hap”字段,打包生成Hap

–json-path

清單文件config.json

-

–ability-so-path

主功能so文件

-

–out-path

-

生成的Hap包輸出路徑,默認(rèn)為當(dāng)前目錄

具體操作:
還是得先將動(dòng)態(tài)庫編譯出來。
然后將動(dòng)態(tài)庫libhello.so和config.json放到一個(gè)文件夾里。

./out/
├── config.json
└── libhello.so

最后使用java -jar app_packing_tool.jar 進(jìn)行打包 如下:

java -jar app_packing_tool.jar |
--mode hap |
--json-path ./config.json |
--ability-out-path ./libhello.so |
--out-path ./hello.hap

四、hap安裝

1、安裝命令bm

由于小型系統(tǒng)不支持使用HDC工具,我們需要使用到bm命令進(jìn)行安裝程序。

bm set -s disable //取消簽名安裝。
bm install -p system/internal/hello.hap //使用BUILD.gn一起編譯的hap默認(rèn)會(huì)在這個(gè)路徑,如果使用工具打包的,視情況填寫路徑。

2、相關(guān)參數(shù)

# bm
Usage: install hap-path [options]
Description:
--help|-h help menu
--happath|-p location of the hap to install
Usage: uninstall bundle-name [options]
Description:
--help|-h help menu
--bundlename|-n name of the bundle to uninstall
Usage: dump [options]
Option Description:
--help|-h help menu
--list|-l app list
--bundlename|-n dump installed hap's info
--metadatakey|-m dump bundleNames match metaData key
Usage: set [options]
Option Description:
--externalmode|-e status enable externalmode
--debugmode|-d status enable debugmode
--signmode|-s status enable signmode

小型系統(tǒng)的bm指令是標(biāo)準(zhǔn)系統(tǒng)的閹割版。

安裝成功后就可以打開該app,部分小型系統(tǒng)的設(shè)備屏幕沒有觸摸功能和鼠標(biāo)驅(qū)動(dòng),我們可以使用aa命令來啟動(dòng)app。

aa start -p com.sample.hello -n MainAbility //包名和ability名都在config.json中定義
# aa
Usage:
aa start -p bundlename -n ability_name
aa stopability -p bundlename -n ability_name
aa terminate -p bundlename
aa dump -p bundlename -n ability_name -e extra_option
aa dump -a

Options:
-h (--help) Show the help information. [eg: aa -h]
-p (--bundlename) Appoint the bundlename name. [eg: -p com.huawei]
-n (--abilityname) Appoint the ability name. [eg: -n MyAbility]
-a (--all) [Unnecessary]dump all ability info. [eg: -a]
-e (--extra) [Unnecessary]extra info when dump. [eg: -e]

Commands:
aa start Start the target ability.
aa stopability Stop the target service ability.
aa terminate Terminate the target app.
aa dump Dump ability

總結(jié)

使用cpp編寫用戶應(yīng)用程序,我們可以更方便有效的調(diào)用南向接口,這將會(huì)在開發(fā)和調(diào)試的過程中給我們帶來極大的便利。

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

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

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

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

2019-09-27 15:11:14

iOS Android 操作系統(tǒng)

2023-06-28 15:00:02

開源鴻蒙輸入系統(tǒng)架構(gòu)

2009-04-14 11:01:33

GoogleApp EngineGroovy

2024-09-29 10:56:58

2009-07-10 18:10:18

Jython編寫SerJython

2024-01-22 10:31:09

Kate文檔

2010-05-05 14:01:51

Unix系統(tǒng)

2019-04-03 10:50:09

Javascript區(qū)塊鏈技術(shù)

2013-04-07 10:00:18

2013-05-14 10:44:19

混合云Windows AzuApp Control

2023-04-03 15:39:31

2012-07-09 11:15:22

電子商務(wù)

2023-02-06 16:11:22

代碼研發(fā)鴻蒙

2022-06-21 09:26:21

Shell腳本JavaScript

2009-09-16 08:21:16

2023-06-27 15:12:46

C++三方庫移植

2023-07-10 13:46:58

PythonLlama.cppLLM

2023-03-24 14:39:17

鴻蒙系統(tǒng)開發(fā)

2020-10-10 19:14:09

FlutterApp軟件開發(fā)

2011-08-02 09:49:10

CSS
點(diǎn)贊
收藏

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

97人人爽人人澡人人精品| 中文字幕在线网址| 日本午夜精品| 欧美日韩二区三区| 成人国产在线看| 每日更新av在线播放| 久久99国产精品久久99| 国内精品视频一区| 性少妇xx生活| 欧美久久精品| 欧美精品在线一区二区| 久久久久久www| 巨大荫蒂视频欧美大片| 久久综合99re88久久爱| 亚洲自拍高清视频网站| 亚洲视频 欧美视频| 欧美.日韩.国产.一区.二区| 亚洲欧美在线x视频| av在线免费观看不卡| 成人美女视频| 亚洲成人1区2区| av动漫免费观看| 国产中文字幕在线| 成人av在线观| 2022国产精品| 一级全黄裸体免费视频| 久久九九99| 国内伊人久久久久久网站视频| 成人18视频免费69| 免费一区二区三区视频导航| 精品成人一区二区三区| 极品粉嫩美女露脸啪啪| 亚洲精品一级二级| 日韩欧美a级成人黄色| 男人天堂av片| www在线视频| 国产精品毛片久久久久久久| 日本亚洲自拍| 水莓100国产免费av在线播放| 国产91精品一区二区麻豆网站 | 9999精品成人免费毛片在线看| 国产精品第一页第二页第三页| 日本不卡在线播放| 三级毛片在线免费看| 懂色av一区二区夜夜嗨| 亚洲最大福利网站| xxxx国产精品| 国产激情视频一区二区三区欧美 | 欧美美女操人视频| 久艹在线观看视频| 日韩免费一区| 日韩视频中文字幕| 正在播放国产对白害羞| 欧美一二区在线观看| 亚洲人在线视频| 欧美 日韩 成人| 精品国产乱码久久久| 一本色道久久88精品综合| 一区二区精品免费| 波多野结衣在线播放一区| 国产一区二区三区在线看| 黄瓜视频污在线观看| 日韩大片在线免费观看| 亚洲精品永久免费| 亚洲永久精品ww.7491进入| 九九亚洲精品| 色av吧综合网| 欧美精品久久久久久久久46p| 一区二区电影在线观看| 久久99热精品这里久久精品| 国产性一乱一性一伧一色| 雨宫琴音一区二区在线| 欧美亚洲第一区| 欧美在线视频精品| 国产伦精品一区二区三区免费迷 | 一区二区三区四区乱视频| 欧美中文字幕在线观看视频 | 色哟哟网站在线观看| 国产精品宾馆| 亚洲人成在线观| 国产黄色录像片| 激情五月***国产精品| 日本一区二区三区在线播放| 国产乱码在线观看| 国产成人免费视频网站 | 三级国产在线观看| 国产精品免费久久久久| 国产精品久久国产| 香蕉久久免费电影| 91精品在线观看入口| 人妻体内射精一区二区三区| 国产欧美日韩影院| 久久国产加勒比精品无码| 日本熟妇毛茸茸丰满| 蜜桃av一区二区在线观看| 国产精品久久久久久久久久久久冷 | 亚洲综合不卡| 国产免费观看久久黄| 色婷婷av一区二区三区之e本道| 久久久蜜桃精品| 91视频成人免费| 男人最爱成人网| 日韩欧美在线不卡| 69视频在线观看免费| 伊人久久久大香线蕉综合直播| 国产精品美女免费看| 免费av网站观看| 中文字幕一区二| 色欲av无码一区二区人妻| 欧美在线在线| 在线成人中文字幕| 日韩精品一区二区av| 久久国产综合精品| 欧美一级二级三级九九九| 日本性爱视频在线观看| 欧美日韩在线一区二区| 久久久久久久无码| 午夜精品亚洲| 国产原创欧美精品| 国产黄色在线播放| 欧美性极品少妇精品网站| 国产精品91av| 中文无码久久精品| 国产女精品视频网站免费| 免费在线性爱视频| 黑人巨大精品欧美一区二区三区| 韩国三级丰满少妇高潮| 99九九热只有国产精品| 国产成人精品久久| 黄色在线网站| 色94色欧美sute亚洲线路二| 亚洲少妇一区二区三区| 伊人久久大香线蕉精品组织观看| 国产精品久久久久影院日本| 噜噜噜噜噜在线视频| 欧美日韩亚洲系列| 亚洲黄色免费在线观看| 亚洲一级黄色| 粉嫩精品一区二区三区在线观看| 国产一二区在线观看| 欧美精品久久一区二区三区| 天天舔天天操天天干| 日韩vs国产vs欧美| 日本成人黄色| 激情小说亚洲| 日韩在线视频国产| 国产又黄又大又粗的视频| 国产三级精品视频| 香蕉视频禁止18| 999久久久免费精品国产| 国产日韩欧美视频| 麻豆传媒在线完整视频| 91精品国产91久久久久久一区二区| 夫妇露脸对白88av| 精品一区二区在线免费观看| 亚洲综合网中心| 国产免费区一区二区三视频免费| 久久夜色精品国产亚洲aⅴ| 国产精品一级二级| 亚洲视频1区2区| 91视频免费入口| 亚洲国产一区二区精品专区| 国产一区二区三区四区五区在线 | 国产一区玩具在线观看| 精品国产白色丝袜高跟鞋| 欧美一级视频精品观看| 国产精品日日夜夜| 久久久久国产精品人| 粉色视频免费看| 欧美成人中文| 久久av免费一区| 精品九九久久| 欧美精品xxx| 免费在线看v| 欧美日本在线播放| 国产亚洲精品久久777777| 久久综合给合久久狠狠狠97色69| 亚洲不卡视频在线| 午夜激情一区| 日本精品一区二区| 视频精品一区二区三区| 欧洲亚洲免费在线| 黄色一级大片在线免费看产| 精品国产麻豆免费人成网站| 久久久蜜桃一区二区| 亚洲欧洲制服丝袜| 可以直接看的无码av| 久久狠狠亚洲综合| 18岁网站在线观看| 亚洲成人日韩| 久久人人九九| 麻豆国产一区二区三区四区| 欧美亚洲国产成人精品| 老司机精品视频在线观看6| 精品对白一区国产伦| 久久久蜜桃一区二区| 悠悠色在线精品| a天堂中文字幕| 成人精品在线视频观看| 中日韩av在线播放| 国产一区成人| 97久久国产亚洲精品超碰热 | 永久免费网站视频在线观看| 伊甸园亚洲一区| 成人免费看片网站| 欧美成人家庭影院| 欧美中文在线免费| 免费在线看污片| 久久精品91久久久久久再现| 欧美日韩伦理片| 亚洲电影免费观看高清| 国产精品久久久久久久久久久久久久久久久久 | 日韩三级影视| 韩剧1988免费观看全集| bt在线麻豆视频| 色七七影院综合| 国产中文字幕在线视频| 国产视频精品免费播放| 亚洲精品一区二区三区四区| 91精品婷婷国产综合久久竹菊| 国产成人精品777777| 舔着乳尖日韩一区| 国产乱码久久久久久| 亚洲激情网站免费观看| 亚洲综合图片一区| 国产精品天干天干在线综合| 大又大又粗又硬又爽少妇毛片 | а√天堂资源官网在线资源| 蜜臀久久99精品久久久久久宅男 | 久久久噜噜噜久久久| v片在线观看| 久久精品国产亚洲精品2020| av电影在线播放高清免费观看| 亚洲图中文字幕| 欧美少妇另类| 亚洲天堂免费观看| 欧美中文在线| 亚洲视频在线免费观看| 国产乱理伦片a级在线观看| 亚洲美女免费精品视频在线观看| 天堂影院在线| 亚洲无av在线中文字幕| 久草福利在线视频| 在线国产精品视频| 天堂аⅴ在线地址8| www国产精品com| 欧美成人三区| 九九热在线精品视频| 日本不卡影院| 午夜精品久久久久久久99热浪潮| 91九色在线播放| 69久久夜色精品国产69| 亚洲性色av| 国产精品久久久久77777| 99久久婷婷国产综合精品首页 | 亚洲动漫在线观看| 欧洲av一区| 手机在线一区二区三区| 最新不卡av| 韩国在线一区| 久久无码高潮喷水| 免费视频最近日韩| 成人不卡免费视频| 高清成人免费视频| 成人无码www在线看免费| 国产色综合久久| 91麻豆精品成人一区二区| 亚洲影视在线观看| 久久亚洲精品国产| 欧美疯狂做受xxxx富婆| 免费观看毛片网站| 国产亚洲精品激情久久| 久操免费在线| 欧美亚洲国产视频| 日本午夜精品久久久久| 国产精品久久久对白| 久久综合影院| 国产精品一二三在线观看| 亚洲三级免费| 午夜一级免费视频| av影院午夜一区| 色哟哟一一国产精品| 精品国产乱码久久久久久虫虫漫画 | 欧美成人艳星乳罩| 日本中文字幕电影在线观看| 色综合伊人色综合网| 黄污视频在线观看| 国产精国产精品| 日韩三级精品| 日韩亚洲一区在线播放| 欧美一区二区| 天天影视综合色| 粉嫩av一区二区三区在线播放| 性欧美一区二区| 亚洲一级二级三级在线免费观看| 国产成人精品一区二区色戒| 精品欧美久久久| 97电影在线| 欧美一级视频在线观看| 伊人国产精品| 日本高清久久一区二区三区| 欧美另类专区| 一起操在线视频| 久久蜜桃av一区二区天堂| 日日骚一区二区三区| 欧美在线观看视频在线| 欧美性受xxxx狂喷水| 久久五月情影视| 亚洲mmav| 久久久av水蜜桃| 黄色国产精品| 国产999免费视频| 国产精品久久夜| 日韩免费av网站| 日韩av在线高清| 乱插在线www| 51国产成人精品午夜福中文下载| 大片网站久久| 欧美精品第三页| 99国产欧美久久久精品| 久久一二三四区| 欧美一级黄色录像| 麻豆视频在线| 成人黄色在线免费| 欧美一区二区三| 国产男女激情视频| 2022国产精品视频| 狠狠躁夜夜躁人人爽天天高潮| 日韩精品中午字幕| 成人看av片| 亚洲已满18点击进入在线看片 | 国产欧美一区二区精品秋霞影院| 91蜜桃视频在线观看| 亚洲国产91色在线| 九色porny自拍视频在线观看| 成人欧美一区二区| 韩国欧美一区| 日本黄色免费观看| 午夜精品123| 午夜福利视频一区二区| 2019中文字幕免费视频| 天堂俺去俺来也www久久婷婷| 国产二区视频在线| 91在线云播放| 无码人妻丰满熟妇精品| 中文字幕在线看视频国产欧美在线看完整| av亚洲一区二区三区| 日本在线观看一区二区三区| 日韩激情在线观看| 亚洲欧美卡通动漫| 日韩视频中午一区| ****av在线网毛片| 久久精品国产一区二区三区日韩| 亚洲中字黄色| 粉嫩精品久久99综合一区| 精品视频123区在线观看| 国产鲁鲁视频在线观看特色| 99re6热在线精品视频播放速度| 韩日在线一区| 亚洲国产第一区| 在线看不卡av| 国产三级在线播放| 国产青春久久久国产毛片| 美女日韩在线中文字幕| 久久中文字幕精品| 69av一区二区三区| √8天堂资源地址中文在线| 欧美日韩喷水| 狠狠色综合日日| 日本a在线观看| 亚洲欧美中文在线视频| 欧美亚洲二区| 久久av综合网| 国产日韩精品视频一区| 国产三级小视频| 韩国一区二区电影| 日韩中文在线电影| 成人免费看片载| 精品久久久久久中文字幕一区奶水 | 国产大片一区二区| 久久国产视频一区| 久久天天躁夜夜躁狠狠躁2022| 黑色丝袜福利片av久久| 亚洲一区二区三区四区五区xx| 亚洲激情图片qvod| 国产免费av在线| www.久久久| 青青青爽久久午夜综合久久午夜| 国产精品九九九九九九| 亚洲精品在线观看www| vam成人资源在线观看| 欧美激情 国产精品| 最新日韩在线视频| 色综合888| 波多野结衣一区二区三区在线观看| 国产精品一卡| 欧美日韩在线视频免费| 国产一区二区三区18| 精品国产乱子伦一区二区| mm131亚洲精品|