精品欧美一区二区三区在线观看 _久久久久国色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)

国产视频精品一区二区三区| 综合亚洲深深色噜噜狠狠网站| 午夜精品久久久久久久99热| av无码av天天av天天爽| 在线成人av观看| 国产精品高潮久久久久无| 国产v亚洲v天堂无码| 无码视频在线观看| 中文字幕免费一区二区| 日韩国产激情在线| 日韩在线不卡一区| 精品丝袜在线| 综合在线观看色| 麻豆亚洲一区| 精品人妻午夜一区二区三区四区 | 国产精品suv一区| 一区二区三区网站| 亚洲男人天堂2023| 午夜视频在线免费看| 日韩中文视频| 黄色成人av在线| 影音先锋男人的网站| 日韩a在线观看| 国产99久久久国产精品| 国产区精品视频| 青草视频在线观看免费| 午夜精品999| 日韩中文娱乐网| a天堂中文字幕| 亚欧日韩另类中文欧美| 欧美sm美女调教| www.亚洲自拍| 成人国产精品一区二区免费麻豆 | 中国黄色片免费看| 超级碰碰久久| 午夜激情久久久| 国产精品va在线观看无码| 免费观看久久久久| 中文字幕av一区二区三区| 麻豆av一区二区三区| 高清一区二区三区四区| 国产综合色视频| 国产日韩欧美视频在线| 亚洲精品91天天久久人人| 翔田千里一区二区| 97视频在线观看播放| 国产精品23p| 激情婷婷亚洲| 久久久久久有精品国产| 久久久久久福利| 综合天堂av久久久久久久| 日韩在线播放av| 日本爱爱小视频| 91精品久久久久久久久久不卡| 日韩性生活视频| 91视频青青草| 欧美久久99| 欧美激情网站在线观看| 久久精品国产亚洲av高清色欲| 午夜久久美女| 97久久精品人人澡人人爽缅北| 久久精品国产av一区二区三区| 韩国av一区| 98精品国产自产在线观看| 在线看成人av| 免播放器亚洲| 国产精品久久久久9999| 一级aaaa毛片| 国产一区二区不卡在线| 99伊人久久| 天堂中文在线资源| 久久精品人人做| 亚洲综合av一区| 最新日本在线观看| 亚洲成人一区在线| 日韩久久一级片| 成人久久网站| 欧美一级免费大片| 色婷婷精品久久二区二区密| 亚洲福利网站| 日日狠狠久久偷偷四色综合免费| 中文字幕在线观看2018| 在线国产欧美| 国产精品久久99久久| 国产精品热久久| 成人精品国产福利| 欧洲在线视频一区| 国产剧情在线| 欧美日韩免费在线| 色国产在线视频| 大桥未久女教师av一区二区| 亚洲男人的天堂网站| 日本成人精品视频| 国产日韩欧美在线播放不卡| 国产精品露脸av在线| 成人黄色在线观看视频| 国产亚洲精品bt天堂精选| 中文字幕中文字幕在线中心一区| 免费污视频在线| 色www精品视频在线观看| 国产精欧美一区二区三区白种人| 久久久久观看| 日韩中文字幕欧美| 欧美bbbbbbbbbbbb精品| 精品一区二区三区视频在线观看| 久久精品99久久| av香蕉成人| 在线精品亚洲一区二区不卡| 一个人看的视频www| 国产探花在线精品一区二区| 欧美—级a级欧美特级ar全黄| 无码人妻丰满熟妇精品区| 国产a区久久久| 亚洲欧洲精品在线观看| 日本乱码一区二区三区不卡| 7777精品伊人久久久大香线蕉| 亚洲国产果冻传媒av在线观看| 国产精品99一区二区三| 欧美在线性爱视频| 好吊视频一二三区| 18涩涩午夜精品.www| 熟女人妇 成熟妇女系列视频| www.国产精品一区| 久久最新资源网| 中文字幕人成人乱码亚洲电影| 成人精品国产一区二区4080| 久久人妻无码一区二区| 日韩成人在线电影| 伊人成人开心激情综合网| 麻豆久久久久久久久久| 成人激情免费网站| 国产a级黄色大片| 日本亚洲欧洲无免费码在线| 国产视频在线一区二区| 日本学生初尝黑人巨免费视频| 国内精品伊人久久久久av一坑 | 可以直接在线观看的av| 无码av中文一区二区三区桃花岛| 国产成人精品一区二区三区在线观看 | 亚洲成人aaa| 免费人成在线观看| 国产精品中文欧美| 无码人妻精品一区二区三区99v| 九七影院97影院理论片久久 | 日本综合在线观看| 日韩中文字幕区一区有砖一区| 久久久久久久久一区二区| 忘忧草在线影院两性视频| 亚洲精品久久视频| 中日韩黄色大片| 91蜜桃网址入口| 精品人妻一区二区三区四区在线| 秋霞蜜臀av久久电影网免费| 69**夜色精品国产69乱| 国产又爽又黄网站亚洲视频123| 亚洲成人第一页| 中出视频在线观看| 亚洲女同在线| 日本一区免费看| 福利一区视频| 久久精品国产久精国产思思| 国产视频手机在线| 亚洲精品欧美专区| 伦理片一区二区| 亚洲视频二区| 日韩欧美在线一区二区| 欧美天堂在线| 欧美噜噜久久久xxx| 黄色美女一级片| 一本色道a无线码一区v| 潮喷失禁大喷水aⅴ无码| 加勒比av一区二区| 美女黄色免费看| 亚洲人成精品久久久| 国产欧美在线播放| 激情图片在线观看高清国产| 日韩风俗一区 二区| 久久久999久久久| 亚洲欧美偷拍卡通变态| 国产精品久久久久久亚洲av| 水蜜桃久久夜色精品一区的特点| 杨幂一区欧美专区| 大陆精大陆国产国语精品 | 精品人妻一区二区三区潮喷在线 | 成人短视频在线观看免费| 女同久久另类99精品国产| 国产精品 欧美在线| 好吊日视频在线观看| 亚洲精品v天堂中文字幕| 伊人免费在线观看高清版| 亚洲蜜臀av乱码久久精品 | 亚洲欧美另类一区| 日韩欧美高清视频| 欧美爱爱免费视频| 99精品欧美一区二区蜜桃免费| 99视频在线视频| 亚洲视频久久| 亚洲欧美国产精品桃花| 国偷自产av一区二区三区| 国产精品无码专区在线观看| 9999在线视频| www.国产一区| 牛牛影视精品影视| 精品久久人人做人人爽| 亚洲综合精品在线| 狠狠色香婷婷久久亚洲精品| 卡通动漫亚洲综合| 国产日韩欧美精品在线| 无码国产69精品久久久久网站| 久久福利视频一区二区| 337p粉嫩大胆噜噜噜鲁| 这里只有精品在线| 日韩精品一区二区三区四区五区| 操欧美女人视频| 成人欧美一区二区三区黑人孕妇| 黑人巨大精品欧美一区二区桃花岛| 久久成人综合视频| 国产视频网站在线| 亚洲精品久久久一区二区三区 | 一本色道久久综合精品婷婷| 精品久久久久久国产| 精品99在线观看| 中文字幕第一页久久| 久久精品国产亚洲av麻豆| 成人丝袜18视频在线观看| 亚洲视频一二三四| 日韩黄色小视频| 欧美 日韩精品| 18成人免费观看视频| www.亚洲成人网| 欧美成人精品| 精品一区二区成人免费视频 | 66m—66摸成人免费视频| 污片视频在线免费观看| 久久成人在线视频| 哥也色在线视频| 久久影视电视剧免费网站清宫辞电视| fc2在线中文字幕| 国产亚洲人成网站在线观看| 免费在线黄色电影| 亚洲精品之草原avav久久| 午夜福利视频一区二区| 日韩av在线网页| 涩爱av在线播放一区二区| 亚洲精品白浆高清久久久久久| 好吊色在线观看| 亚洲精品xxx| 日韩在线无毛| 亚洲欧美日韩在线高清直播| 撸视在线观看免费视频| 国产亚洲一级高清| av中文在线| xxxx性欧美| 中文在线免费| 久久久久中文字幕2018| 2020国产在线| 国产91九色视频| 国产精品第一国产精品| 成人两性免费视频| 一区二区三区免费在线看| 国产日韩欧美精品| 免费成人结看片| 亚洲精品一区二区三区樱花 | 国产精品三级电影| 国产白丝一区二区三区| 亚洲人成精品久久久久| 免费中文字幕在线观看| 欧美日韩午夜剧场| 国产成人无码专区| 欧美日韩国产综合视频在线观看 | 四虎影视国产精品| av成人观看| 日韩三级av| 亚洲欧美日韩国产yyy| 欧美1级日本1级| 91免费视频网站在线观看| 蜜臀国产一区二区三区在线播放| 亚洲av无日韩毛片久久| 成人黄色av电影| 69xxx免费| 一区二区三区精品| 欧美一区二区三区不卡视频| 制服视频三区第一页精品| 色哟哟国产精品色哟哟| 色av吧综合网| а√在线中文在线新版| 国产欧美中文字幕| 国产精品99久久免费观看| 麻豆av一区| 欧美激情aⅴ一区二区三区| av片中文字幕| 国产成人在线电影| 妺妺窝人体色WWW精品| 亚洲免费在线视频| 无码人妻精品一区二| 日韩一级大片在线| 国产黄色片在线播放| 九九热最新视频//这里只有精品| 625成人欧美午夜电影| 97se亚洲综合| 成人激情电影在线| 3d动漫一区二区三区| 精品一区二区三区免费视频| 欧美 变态 另类 人妖| 亚洲欧美日韩国产一区二区三区 | 欧美一三区三区四区免费在线看 | 美女国内精品自产拍在线播放| 一区二区三区四区日本视频| 3d动漫啪啪精品一区二区免费| 狠狠色狠狠色综合婷婷tag| 人妻夜夜添夜夜无码av| 激情图片小说一区| 日本免费www| 欧美午夜精品久久久久久久| 不卡视频在线播放| 在线视频日本亚洲性| 少妇视频在线观看| 国产精品久久7| 午夜精品av| 一本之道在线视频| 一区在线观看免费| 国产成人av免费| 亚洲人高潮女人毛茸茸| 免费成人在线电影| 国产精品区免费视频| 亚洲精品va| 亚洲天堂av一区二区| 中文字幕乱码日本亚洲一区二区| 久久人妻免费视频| 日韩成人av网| 免费成人在线电影| 国产私拍一区| 欧美体内she精视频在线观看| 天天看片天天操| 国产精品高清亚洲| 国产精品欧美激情在线| 久久精品成人欧美大片| 国产毛片精品久久| 亚洲精品一区二区三区四区五区| 日本在线不卡视频一二三区| 无码人妻aⅴ一区二区三区69岛| 欧美日韩国产综合新一区| 色呦呦免费观看| 欧美最猛性xxxxx(亚洲精品)| 欧美黑人做爰爽爽爽| 欧美成人一区二区在线观看| 99久久伊人网影院| 国产精品久久久久久久久久久久久久久久久 | 好吊色一区二区三区| 国内精品小视频在线观看| 成人三级av在线| 欧美深夜福利视频| 91免费精品国自产拍在线不卡 | 欧美一区二区在线视频| 爆操欧美美女| 懂色av一区二区三区在线播放| 亚洲高清久久| 丰满少妇在线观看资源站| 91官网在线免费观看| 在线观看二区| 亚洲一区二区三区xxx视频| 欧美三级免费| 日本黄色动态图| 色噜噜狠狠色综合中国| 午夜视频成人| 成人午夜电影免费在线观看| 日韩视频中文| 男人的天堂av网| 欧美一区二区三区播放老司机 | 国产精品欧美激情| 97精品国产| 久久久久国产免费| 色综合天天综合色综合av| 久操视频在线播放| 丁香五月网久久综合| 久久久噜噜噜久久狠狠50岁| 99热99这里只有精品| 亚洲第一福利视频| 电影亚洲一区| 日本免费a视频| 亚洲国产精品国自产拍av| 午夜精品久久久久久久91蜜桃| 5566成人精品视频免费| 日韩中字在线| 毛茸茸free性熟hd| 欧美日韩性生活| 久久香蕉一区| 亚洲7777| av亚洲精华国产精华精| 在线免费观看高清视频| 久久久久久久久亚洲| 成人国产精品一级毛片视频| 美女久久久久久久久| 欧美日韩情趣电影| 1区2区3区在线| 99久久久无码国产精品性色戒| 99久久夜色精品国产网站| 中文字幕乱码无码人妻系列蜜桃| 国内伊人久久久久久网站视频 | jjzzjjzz欧美69巨大|