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

HarmonyOSJS分布式能力—學習筆記

開發 前端 分布式 OpenHarmony
JS也是具有分布式能力的,本文就以兩個小項目來分享JS的分布式拉起和分布式遷移♪(∇*),分布式拉起允許拉起一個本地或遠程的FA,拉起時可以傳遞參數。

[[420496]]

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

前言

JS也是具有分布式能力的,本文就以兩個小項目來分享JS的分布式拉起和分布式遷移♪(∇*)

正文

這是從官網中找到的分布式API在FA生命周期中的位置圖,圖中的onStartContinuation()、onSaveData(OBJECT)、onRestoreData(OBJECT)和onCompleteContinuation(code)均為分布式能力接口

【木棉花】JS分布式能力——學習筆記-鴻蒙HarmonyOS技術社區

項目相同的操作:

1. 安裝和配置DevEco Studio 2.1 Release

DevEco Studio 2.1 Release下載DevEco Studio 2.1 Release安裝

2. 創建一個Empty Java Phone應用

DevEco Studio下載安裝成功后,打開DevEco Studio,點擊左上角的File,點擊New,再選擇New Project,選擇Empty Ability(Java)選項,點擊Next按鈕。

【木棉花】JS分布式能力——學習筆記-鴻蒙HarmonyOS技術社區

分布式拉起將文件命名為Distributrd1,分布式遷移將文件命名為Distributrd2(文件名不能出現中文或者特殊字符,否則將無法成功創建項目文件),選擇保存路徑,選擇API5,設備勾選Phonet,最后點擊Finish按鈕。

【木棉花】JS分布式能力——學習筆記-鴻蒙HarmonyOS技術社區

3. 準備工作

在entry>src>main>config.json文件中最下方"launchType": "standard"的后面添加以下代碼,這樣就可以實現去掉應用上方的標簽欄了。

config.json部分代碼:

  1. "name""com.test.distributed1.MainAbility"
  2.         "icon""$media:icon"
  3.         "description""$string:mainability_description"
  4.         "label""$string:entry_MainAbility"
  5.         "type""page"
  6.         "launchType""standard"
  7.         "metaData": { 
  8.           "customizeData": [ 
  9.             { 
  10.               "name""hwc-theme"
  11.               "value""androidhwext:style/Theme.Emui.Light.NoTitleBar"
  12.               "extra""" 
  13.             } 
  14.           ] 
  15.         } 
  16.       } 
  17.     ], 
  18.     "js": [ 
  19.       { 
  20.         "pages": [ 
  21.           "pages/index/index" 
  22.         ], 
  23.         "name""default"
  24.         "window": { 
  25.           "designWidth": 720, 
  26.           "autoDesignWidth"true 
  27.         } 
  28.       } 
  29.     ] 
  30.   } 

4. 添加權限

在config.json中添加權限。

  1. "reqPermissions": [ 
  2.     { 
  3.       "name""ohos.permission.DISTRIBUTED_DATASYNC" 
  4.     } 
  5.   ], 

 在MainAbility.java中動態申請權限。

  1. public class MainAbility extends AceAbility { 
  2.     @Override 
  3.     public void onStart(Intent intent) { 
  4.         super.onStart(intent); 
  5.  
  6.         // 動態判斷權限 
  7.         if (verifySelfPermission("ohos.permission.DISTRIBUTED_DATASYNC") != IBundleManager.PERMISSION_GRANTED) { 
  8.             // 應用未被授予權限 
  9.             if (canRequestPermission("ohos.permission.DISTRIBUTED_DATASYNC")) { 
  10.                 // 是否可以申請彈框授權(首次申請或者用戶未選擇禁止且不再提示) 
  11.                 requestPermissionsFromUser(new String[]{"ohos.permission.DISTRIBUTED_DATASYNC"}, 0); 
  12.             } 
  13.         } 
  14.     } 
  15.  
  16.     @Override 
  17.     public void onStop() { 
  18.         super.onStop(); 
  19.     } 

分布式拉起

效果圖

1. 實現界面布局

在index.hml中編寫以下代碼。

添加兩個button組件,類選擇器名均為btn,分別添加一個單擊事件,按鈕上的文本分別為“加1”和“拉起”。

  1. <div class="container"
  2.     <text class="title"
  3.         {{ title }} 
  4.     </text> 
  5.     <button class="btn" onclick="plus">加1</button> 
  6.     <button class="btn" onclick="distributed">拉起</button> 
  7. </div> 

在index.css中編寫以下代碼。

添加類選擇器btn,并修改其屬性值。

  1. .container { 
  2.     flex-direction: column
  3.     justify-content: center; 
  4.     align-items: center; 
  5.  
  6. .title { 
  7.     font-size: 40px; 
  8.     color: #000000; 
  9.     opacity: 0.9; 
  10.  
  11. .btn { 
  12.     height: 60px; 
  13.     width: 100px; 
  14.     font-size: 40px; 
  15.     background-color: aquamarine; 
  16.     margin: 10px; 

2. 實現分布式拉起

在index.js中編寫以下代碼。

分布式拉起允許拉起一個本地或遠程的FA,拉起時可以傳遞參數。添加按鈕點擊事件distributed()通過FeatureAbility.startAbility(OBJECT)方法拉起一個FA,無回調結果,允許以顯式的方式,拉起遠程或本地的FA。

其中OBJECT為RequestParams類型的參數,包含必填的bundleName(要啟動的包名。需和abilityName配合使用,區分大小寫)、abilityName(要啟動的ability名,區分大小寫)和選填的entities(希望被調起的FA所歸屬的實體列表,如果不填,默認查找所有實體列表。需配合action使用)、action(在不指定包名及ability名的情況下,可以通過傳入action值從而根據Operation的其他屬性啟動應用)、deviceType(默認0: 從本地以及遠端設備中選擇要啟動的FA。1: 從本地設備啟動FA。有多個FA滿足條件的情況下,將彈框由用戶選擇設備)、data(指定要傳遞給對方的參數,需要可被序列化)、flag(拉起FA時的配置開關,如是否免安裝等)、url(拉起FA時,指定打開的頁面的url。默認直接打開首頁)。

  1. export default { 
  2.     data: { 
  3.         title: "0" 
  4.     }, 
  5.     onInit() { 
  6.          
  7.     }, 
  8.     distributed(){ 
  9.         let target = { 
  10.             bundleName: "com.test.distributed1"
  11.             abilityName: "com.test.distributed1.MainAbility" 
  12.         }; 
  13.         let result = FeatureAbility.startAbility(target); 
  14.     }, 

3. 實現帶數據傳遞的分布式拉起

定義一個全局變量sum,并初始化為0。添加一個按鈕點擊事件plus()實現加1功能。

在FeatureAbility.startAbility(OBJECT)中添加一個參數data并實例化sum。

因為所有在data中設置的字段,在對端FA中均可以直接在 this下拿到,所以在生命周期事件onInit()中通過this.number取得該值。

  1. var sum = 0; 
  2.  
  3. export default { 
  4.     data: { 
  5.         title: "0" 
  6.     }, 
  7.     onInit() { 
  8.         sum = this.number; 
  9.         this.title = sum
  10.     }, 
  11.     distributed(){ 
  12.         let actionData = { 
  13.             number: sum 
  14.         }; 
  15.         let target = { 
  16.             bundleName: "com.test.distributed1"
  17.             abilityName: "com.test.distributed1.MainAbility"
  18.             data: actionData 
  19.         }; 
  20.         let result = FeatureAbility.startAbility(target); 
  21.     }, 
  22.     plus(){ 
  23.         sum++; 
  24.         this.title = sum
  25.     } 

分布式遷移

效果圖

1. 實現界面布局

創建一個名為Distributed2的Empty JS Phone空應用。

【木棉花】JS分布式能力——學習筆記-鴻蒙HarmonyOS技術社區

在index.hml中編寫以下代碼。

添加兩個button組件,類選擇器名均為btn,分別添加一個單擊事件,按鈕上的文本分別為“加1”和“遷移”。

  1. <div class="container"
  2.     <text class="title"
  3.         {{ title }} 
  4.     </text> 
  5.     <button class="btn" onclick="plus">加1</button> 
  6.     <button class="btn" onclick="distributed">拉起</button> 
  7. </div> 

在index.css中編寫以下代碼。

添加類選擇器btn,并修改其屬性值。

  1. .container { 
  2.     flex-direction: column
  3.     justify-content: center; 
  4.     align-items: center; 
  5.  
  6. .title { 
  7.     font-size: 40px; 
  8.     color: #000000; 
  9.     opacity: 0.9; 
  10.  
  11. .btn { 
  12.     height: 60px; 
  13.     width: 100px; 
  14.     font-size: 40px; 
  15.     background-color: aquamarine; 
  16.     margin: 10px; 

2. 實現分布式遷移

在index.js中編寫以下代碼。

分布式遷移提供了一個主動遷移接口及一系列頁面生命周期回調,以支持將本地業務無縫遷移到指定設備中。添加按鈕點擊事件distributed()通過FeatureAbility.continueAbility()方法主動進行FA遷移的入口。

其中onStartContinuation()為FA發起遷移時的回調,在此回調中應用可以根據當前狀態決定是否遷移。返回值為Boolean類型,true表示允許進行遷移,false表示不允許遷移。

onSaveData(OBJECT)為保存狀態數據的回調,開發者需要往參數對象中填入需遷移到目標設備上的數據。參數為可被序列化的自定義數據。

onRestoreData(OBJECT)為恢復發起遷移時onSaveData方法保存的數據的回調,用于恢復應用狀態的對象,其中的數據及結構由onSaveData決定。

onCompleteContinuation(code)為遷移完成的回調,在調用端被觸發,表示應用遷移到目標設備上的結果。參數為遷移完成的結果。0:成功,-1:失敗。

  1. export default { 
  2.     data: { 
  3.         title: "0" 
  4.     }, 
  5.     onStartContinuation() { // 判斷當前的狀態是不是適合遷移 
  6.         console.info("onStartContinuation被調用,適合遷移"); 
  7.         return true
  8.     }, 
  9.  
  10.     onCompleteContinuation(code) { // 遷移操作完成,code返回結果 
  11.         if(code == 0){ 
  12.             console.info("onCompleteContinuation(code)被調用,遷移成功"); 
  13.         } else if(code == -1){ 
  14.             console.info("onCompleteContinuation(code)被調用,遷移失敗"); 
  15.         } 
  16.     }, 
  17.     onSaveData(saveData) { // 數據保存到savedData中進行遷移。 
  18.         console.info("onSaveData(saveData)被調用"); 
  19.     }, 
  20.     onRestoreData(restoreData) { // 收到遷移數據,恢復。 
  21.         console.info("onRestoreData(restoreData)被調用"); 
  22.     }, 
  23.     distributed(){ 
  24.         let result =  FeatureAbility.continueAbility(); 
  25.     } 

3. 實現帶數據傳遞的分布式遷移

定義一個序列化continueAbilityData,其中的number為0。添加一個按鈕點擊事件plus()實現加1功能。

在onSaveData(saveData)函數中將序列化continueAbilityData保存到savedData中進行遷移。在onRestoreData(restoreData)函數中將遷移的數據顯示出來。

  1. export default { 
  2.     data: { 
  3.         title: "0"
  4.         continueAbilityData: { 
  5.             number: 0 
  6.         } 
  7.     }, 
  8.     onStartContinuation() { // 判斷當前的狀態是不是適合遷移 
  9.         console.info("onStartContinuation被調用,適合遷移"); 
  10.         return true
  11.     }, 
  12.  
  13.     onCompleteContinuation(code) { // 遷移操作完成,code返回結果 
  14.         if(code == 0){ 
  15.             console.info("onCompleteContinuation(code)被調用,遷移成功"); 
  16.         } else if(code == -1){ 
  17.             console.info("onCompleteContinuation(code)被調用,遷移失敗"); 
  18.         } 
  19.     }, 
  20.     onSaveData(saveData) { // 數據保存到savedData中進行遷移。 
  21.         var data = this.continueAbilityData; 
  22.         Object.assign(saveData, data) 
  23.         console.info("onSaveData(saveData)被調用"); 
  24.     }, 
  25.     onRestoreData(restoreData) { // 收到遷移數據,恢復。 
  26.         this.continueAbilityData = restoreData; 
  27.         this.title = this.continueAbilityData.number; 
  28.         console.info("onRestoreData(restoreData)被調用"); 
  29.     }, 
  30.     distributed(){ 
  31.         let result =  FeatureAbility.continueAbility(); 
  32.     }, 
  33.     plus(){ 
  34.         this.continueAbilityData.number++; 
  35.         this.title = this.continueAbilityData.number; 
  36.     } 

寫在最后

本項目會長期更新 ,希望隨著鴻蒙一同成長變強的既有我們,也有正在看著這個項目的你。明年3月,深大校園內的木棉花會盛開,那時,鴻蒙也會變的更好,愿這花開,有你我的一份。

文章相關附件可以點擊下面的原文鏈接前往下載

Distributed1.zip

Distributed2.zip

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2021-10-09 14:49:50

鴻蒙HarmonyOS應用

2017-10-12 09:36:54

分布式存儲系統

2021-09-09 15:45:17

機器學習人工智能Ray

2014-08-05 09:15:14

SDN

2019-10-10 09:16:34

Zookeeper架構分布式

2019-06-19 15:40:06

分布式鎖RedisJava

2017-09-01 05:35:58

分布式計算存儲

2023-05-29 14:07:00

Zuul網關系統

2018-08-28 15:47:03

人工智能深度學習機器學習

2024-03-15 07:33:02

分布式數據庫索引數據結構

2017-10-27 08:40:44

分布式存儲剪枝系統

2023-10-26 18:10:43

分布式并行技術系統

2018-07-17 08:14:22

分布式分布式鎖方位

2024-03-01 09:53:34

2022-06-27 08:21:05

Seata分布式事務微服務

2023-05-12 08:23:03

分布式系統網絡

2010-06-07 10:39:40

Hadoop分布式文件

2020-09-21 09:15:12

系統

2016-08-31 07:02:51

2015-06-10 09:47:18

微軟分布式云平臺
點贊
收藏

51CTO技術棧公眾號

免费网站成人| 在线观看 中文字幕| 91精品视频一区二区| 一区二区三区免费观看| 久久青青草综合| 亚洲一区二区影视| 91久久亚洲| 视频直播国产精品| 在线观看国产免费视频| 久久69成人| 精品美女久久久久久免费| 一区二区日本伦理| 日韩一区av| 国产精品一区二区三区99| 国产成人精品电影久久久| 国产乱国产乱老熟300| se在线电影| av网址在线免费观看| 国v精品久久久网| 日本不卡高字幕在线2019| 麻豆精品国产免费| 免费观看久久av| 精品久久国产97色综合| 日韩中文字幕a| 色在线免费观看| 亚洲精品国产精华液| 日韩精品久久久免费观看| 动漫av一区二区三区| 激情都市一区二区| 国产精品日日摸夜夜添夜夜av| 日本一本高清视频| 欧美日韩第一区| 久久影院中文字幕| 调教驯服丰满美艳麻麻在线视频| 亚洲不卡在线视频| 激情丁香综合| 欧美精品制服第一页| 日韩精品久久久久久久的张开腿让| 日韩影视在线观看| 亚洲国产欧美一区二区丝袜黑人 | 欧美男生操女生| 欧美激情精品久久久久久小说| 玖玖在线播放| 午夜精品福利在线| 青青青免费在线| 蜜桃视频在线网站| 黑人精品xxx一区一二区| 欧美黑人经典片免费观看| 91美女精品| 亚洲福利一区二区三区| 99在线免费视频观看| 色婷婷在线播放| 亚洲国产日韩精品| 天天夜碰日日摸日日澡性色av| 波多野结衣乳巨码无在线观看| 亚洲精品高清视频在线观看| 国产1区2区3区中文字幕| 18加网站在线| 亚洲专区一二三| 老司机激情视频| 国产精品69xx| 欧美色欧美亚洲高清在线视频| 成人综合视频在线| 亚洲精品在线影院| 欧美久久久久久久久久| 中文国产在线观看| 老司机精品视频在线播放| 亚洲国产精品va在线| 亚洲天堂网一区二区| 成人精品视频| 久久资源免费视频| 日本三级视频在线| 奇米色一区二区三区四区| 91久久精品久久国产性色也91| 99视频在线观看免费| 成人国产亚洲欧美成人综合网 | 国产精品爽爽爽爽爽爽在线观看| 一区二区三区播放| 国产91丝袜在线播放0| 久久五月天婷婷| 91激情在线| 亚洲成人一二三| 国产小视频精品| 欧美日韩中出| 亚洲欧美第一页| 欧美特级一级片| 亚洲综合国产| 成人国产精品久久久| 韩国av免费在线观看| 国产欧美精品一区二区色综合朱莉| a级黄色片网站| 天堂av在线网| 日韩午夜小视频| av女人的天堂| 激情成人亚洲| 91欧美精品成人综合在线观看| 日韩在线视频观看免费| 国产精品欧美一区二区三区| 欧美亚洲色图视频| 精品亚洲a∨| 亚洲国产一区二区三区在线观看 | 日本成人一区| 亚洲精品日产精品乱码不卡| 成人3d动漫一区二区三区| 亚洲成av人片在线观看www| 亚洲图片制服诱惑| 国产第一页第二页| 精品无码三级在线观看视频| 欧美成熟毛茸茸复古| 中文字幕免费高清电视剧网站在线观看 | 宅男在线精品国产免费观看| 深夜福利视频一区二区| 日韩视频在线一区二区| 免费一级suv好看的国产网站| 99视频在线精品国自产拍免费观看| 91精品久久久久久久久不口人| 五月婷婷丁香六月| 一区二区三区在线播| 一区二区三区网址| 免费一区二区| 国产91精品青草社区| 风流少妇一区二区三区91| 中文字幕一区视频| av五月天在线| 九热爱视频精品视频| 欧美性受xxxx白人性爽| 蜜桃视频污在线观看| 夜夜精品视频一区二区| 亚洲第一成肉网| 99久久99热这里只有精品 | 国产精品51麻豆cm传媒| www久久精品| 国产精品网站免费| 国产精品香蕉| 韩国精品久久久999| 亚洲成人77777| 亚洲一区二区影院| 91精品又粗又猛又爽| 激情偷拍久久| 国产伦精品一区二区| 69av成人| 亚洲黄色片网站| 国产精品一区二区6| 99久久精品费精品国产一区二区 | 日本午夜一区二区| 亚洲成人蜜桃| 欧美亚洲福利| 久久久精品久久久久| 国产精品毛片一区二区在线看舒淇| 国产精品第一页第二页第三页| 亚洲精品午夜在线观看| 国产精品久久天天影视| 亚洲综合在线中文字幕| 男男gaygays亚洲| 亚洲第一区第二区| 久久一区二区三区视频| 久久久亚洲精品石原莉奈| 99视频精品免费| 色135综合网| 91久久精品国产91性色| 黄色小说在线播放| 日韩国产中文字幕| 欧美日韩 一区二区三区| 国产精品另类一区| 手机在线观看日韩av| 精品动漫一区| 欧美在线视频一区二区三区| 日韩美香港a一级毛片| 欧美成人免费全部| 日韩av地址| 欧美日韩精品一区二区天天拍小说 | 欧美三级自拍| 国产99久久精品一区二区 夜夜躁日日躁| www日韩tube| 91精品国产色综合久久| 日韩av女优在线观看| 久久精品视频一区二区| 四川一级毛毛片| 国产日韩免费| 特级毛片在线免费观看| 极品尤物一区| 国产欧美一区二区三区久久人妖| 色呦呦在线观看视频| 亚洲片在线资源| 国产福利小视频| 色欧美片视频在线观看| 日本福利片在线观看| 99视频精品在线| 五月花丁香婷婷| 亚洲影视在线| 国产精品啪啪啪视频| 国内成人精品| 成人在线观看av| 亚洲精品乱码日韩| 91精品国产色综合久久不卡98口 | 97精品久久久中文字幕免费| av免费在线一区二区三区| 亚洲成人网在线| 亚洲天堂中文在线| 日韩欧美第一页| 久久久久免费看| 国产精品国产自产拍高清av王其| 亚洲精品乱码久久久久久不卡| 国产一区三区三区| 午夜激情福利在线| 99人久久精品视频最新地址| 日本丰满少妇黄大片在线观看| 综合亚洲自拍| 国产伦精品一区二区三区高清| 日韩一级特黄| 国产精品精品久久久| 91色在线看| 欧美福利在线观看| 九七电影韩国女主播在线观看| 亚洲欧美精品一区二区| 少妇av在线播放| 日韩欧美久久久| 国产精品呻吟久久| 欧美日韩午夜精品| 国产裸体美女永久免费无遮挡| 香蕉影视欧美成人| 欧美一级高潮片| 一区二区三区成人| 青青草原国产视频| 亚洲欧美另类久久久精品2019| 精品熟妇无码av免费久久| 久久久久青草大香线综合精品| a视频免费观看| 99精品视频一区| 国产女人18毛片水真多18| 风流少妇一区二区| 日本xxxx免费| 成人av资源站| fc2成人免费视频| 夫妻av一区二区| 国产 xxxx| 97精品电影院| aaaaa一级片| 久久久久久久一区| 亚洲精品色午夜无码专区日韩| 久久午夜羞羞影院免费观看| 粉嫩av蜜桃av蜜臀av| 91在线国产福利| v8888av| 国产校园另类小说区| 加勒比综合在线| 欧美高清在线视频| 黄色精品视频在线观看| 亚洲激情男女视频| 国产精品.www| 欧美午夜激情在线| 少妇一级淫片日本| 欧美女孩性生活视频| 国产免费福利视频| 精品国产污污免费网站入口| 秋霞av鲁丝片一区二区| 日韩av在线看| 春暖花开成人亚洲区| 色噜噜久久综合伊人一本| 中文在线免费| 欧美做爰性生交视频| www.国产精品| 99r国产精品视频| 外国成人在线视频| 新呦u视频一区二区| 五月激情综合| 免费看国产曰批40分钟| 视频一区二区国产| 精品国产乱码久久久久久1区二区| 成人一区二区三区在线观看| 黄色正能量网站| 国产精品欧美一区喷水| 不卡的免费av| 欧美亚洲综合另类| 精品国产av 无码一区二区三区| 亚洲二区中文字幕| 电影在线一区| 欧美激情网友自拍| 久久天堂av| 成人av播放| 日韩欧美精品综合| 国产不卡一区二区视频| 免费av成人在线| 精品人妻伦一二三区久| 亚洲国产精品传媒在线观看| 久久这里只有精品国产| 色哦色哦哦色天天综合| 不卡的日韩av| 一区二区三区视频观看| 国产精品—色呦呦| 国产日韩av高清| 老汉色老汉首页av亚洲| 欧美日韩亚洲国产成人| 久久久久网站| 亚洲av午夜精品一区二区三区| 国产婷婷色一区二区三区四区| 九九热只有精品| 欧美日韩在线一区二区| 亚洲欧美日韩免费| 欧美激情中文网| 亚洲伦理网站| 日本一区二区在线视频| 黄色日韩在线| 国产一级免费大片| 国产婷婷色一区二区三区| 日本三级理论片| 欧美一级日韩免费不卡| 国产午夜在线观看| 97avcom| 永久免费精品视频| 午夜啪啪免费视频| 久久精品国产一区二区三| 久久久精品人妻无码专区| 亚洲va欧美va人人爽| 精品国产av鲁一鲁一区| 久久视频在线播放| 国产成人精选| 日韩影片在线播放| 久久久久国产精品一区二区| 午夜av免费看| 亚洲一级二级在线| www.激情五月| 欧美成年人视频网站| 99久久99九九99九九九| 亚洲精品久久久久久一区二区| 丝袜美腿一区二区三区| 野外性满足hd| 91国产福利在线| 欧美亚洲日本| 欧美又大又粗又长| 色综合久久中文| 各处沟厕大尺度偷拍女厕嘘嘘| 91免费看视频| 老熟妇仑乱一区二区av| 国产丝袜高跟一区| 欧美黑人疯狂性受xxxxx野外| 另类小说综合网| 久久久久久穴| 亚洲天堂岛国片| 精品视频在线免费观看| 在线观看h片| 国产免费亚洲高清| 91久久夜色精品国产按摩| 91热视频在线观看| 亚洲最快最全在线视频| 欧美一区二区公司| 欧洲成人免费aa| 欧美色网址大全| 拔插拔插华人永久免费| 国产精品国产三级国产普通话蜜臀| 91精品视频免费在线观看| 久久影院中文字幕| 成人激情自拍| 久久精品午夜福利| 国产精品午夜久久| 国产精品欧美亚洲| 久久久久久成人| 伊甸园亚洲一区| 国产wwwxx| 一区二区三区在线影院| 婷婷色在线观看| 国产精品久久久久久久久| 99精品视频精品精品视频| 国产精品99精品无码视亚| 精品露脸国产偷人在视频| 国产黄色免费在线观看| 成人激情视频免费在线| 精品91在线| a资源在线观看| 欧美精品第一页| 国产免费拔擦拔擦8x高清在线人| 热re99久久精品国产99热 | 国产高清自拍视频| 欧美日韩在线播| 欧美aaaaaaa| 日本在线免费观看一区| 国产伦理精品不卡| 久热这里只有精品6| 久久精品91久久久久久再现| 超碰地址久久| 欧美成人福利在线观看| 一区二区三区av电影 | 超薄丝袜一区二区| 亚洲精品白浆高清| 中文国产在线观看| 日本道色综合久久| 久草在线视频资源| 亚洲美女搞黄| 成人激情免费电影网址| 亚洲图片在线播放| 9.1国产丝袜在线观看| 亚洲国产一成人久久精品| 毛片网站免费观看| 欧美成人精品1314www| 97精品国产99久久久久久免费| 超碰成人免费在线| 亚洲人123区| 国产免费视频在线| 精品国产一区二区三区免费 | 小嫩苞一区二区三区|