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

OpenHarmony繼續上云之騰訊云平臺

系統
說實話,騰訊云物聯網平臺一直是我比較喜歡的物聯網云太平,除了有騰訊大廠作為品質背書之外,提供的sdk也是相當好用,更有騰訊連連小程序可以幫助做界面,調試功能.

[[442860]]

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

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

https://harmonyos.51cto.com

一.前面的話

說實話,騰訊云物聯網平臺一直是我比較喜歡的物聯網云太平,除了有騰訊大廠作為品質背書之外,提供的sdk也是相當好用,更有騰訊連連小程序可以幫助做界面,調試功能,后端的API有java,c++,Golang,js,python等等語言版本,非常方便,簡直是上云首選.

二.首先下載sdk

我們首先來找官方sdk,茫茫文檔中給我看到了那熟悉的身影:

#星光計劃2.0#  OpenHarmony繼續上云之騰訊云平臺-鴻蒙HarmonyOS技術社區

文檔地址在這,拿走不謝:

https://cloud.tencent.com/document/product/1081/48356

把sdk下載之后,熟練的放進thirdparty文件夾,

#星光計劃2.0#  OpenHarmony繼續上云之騰訊云平臺-鴻蒙HarmonyOS技術社區

不得不提一下,2.x版本的OpenHarmony比1.x版本的代碼結構清晰多了.

1.實現幾個重要接口

這個時候依然要看文檔,因為有些函數需要自己實現,具體是哪些呢,在這里:

https://cloud.tencent.com/document/product/1081/48389

這篇文檔寫了,我們要實現里面的這些接口,此處列舉一二:

#星光計劃2.0#  OpenHarmony繼續上云之騰訊云平臺-鴻蒙HarmonyOS技術社區
#星光計劃2.0#  OpenHarmony繼續上云之騰訊云平臺-鴻蒙HarmonyOS技術社區

仔細一看,霍,好家伙還不少呢,但是不怕,都是打工人,誰怕誰啊,二話不說我就寫,結果就給我給寫出來了:

#星光計劃2.0#  OpenHarmony繼續上云之騰訊云平臺-鴻蒙HarmonyOS技術社區

寫出來這些后就可以準備編譯了嗎?

nonono,我們還沒做BUILD.gn文件呢,話不多說,直接教你寫。

  1. # Copyright (c) 2020 Huawei Device Co., Ltd. 
  2. # Licensed under the Apache License, Version 2.0 (the "License"); 
  3. # you may not use this file except in compliance with the License. 
  4. # You may obtain a copy of the License at 
  5. #     http://www.apache.org/licenses/LICENSE-2.0 
  6. # Unless required by applicable law or agreed to in writing, software 
  7. # distributed under the License is distributed on an "AS IS" BASIS, 
  8. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
  9. # See the License for the specific language governing permissions and 
  10. # limitations under the License. 
  11.  
  12. import("//build/lite/config/component/lite_component.gni"
  13. import("//build/lite/ndk/ndk.gni"
  14.  
  15. config("qcloud_sdk_config") { 
  16.      
  17.        include_dirs = [ 
  18.         "sdk_src/internal_inc"
  19.         "sdk_src/library"
  20.         "include"
  21.         "include/exports"
  22.  
  23.         "//kernel/liteos_m/kernel/include"
  24.        
  25.         # "//third_party/cmsis"
  26.         "//third_party/mbedtls/include"
  27.         "//third_party/mbedtls/include/mbedtls"
  28.      
  29.     ] 
  30.  
  31.  
  32.     cflags = [ "-Wno-unused-variable" ] 
  33.     cflags += [ "-Wno-unused-but-set-variable" ] 
  34.     cflags += [ "-Wno-unused-parameter" ] 
  35.     cflags += [ "-Wno-sign-compare" ] 
  36.     cflags += [ "-Wno-unused-function" ] 
  37.     cflags += [ "-Wno-return-type" ] 
  38.  
  39. qcloud_sdk_sources = [ 
  40.     "sdk_src/network/socket/network_socket.c"
  41.     "sdk_src/network/tls/network_tls.c"
  42.     "sdk_src/network/network_interface.c"
  43.  
  44.     "sdk_src/utils/utils_list.c"
  45.     "sdk_src/utils/utils_base64.c"
  46.     "sdk_src/utils/qcloud_iot_ca.c"
  47.     "sdk_src/utils/utils_aes.c"
  48.     "sdk_src/utils/utils_getopt.c"
  49.     "sdk_src/utils/utils_hmac.c"
  50.     "sdk_src/utils/utils_md5.c"
  51.     "sdk_src/utils/utils_sha1.c"
  52.     "sdk_src/utils/json_parser.c"
  53.     "sdk_src/utils/json_token.c"
  54.     "sdk_src/utils/string_utils.c"
  55.     "sdk_src/utils/utils_ringbuff.c"
  56.     "sdk_src/utils/qcloud_iot_log.c"
  57.     "sdk_src/utils/qcloud_iot_device.c"
  58.     "sdk_src/utils/utils_timer.c"
  59.  
  60.     "sdk_src/protocol/mqtt/mqtt_client_common.c"
  61.     "sdk_src/protocol/mqtt/mqtt_client_connect.c"
  62.     "sdk_src/protocol/mqtt/mqtt_client_net.c"
  63.     "sdk_src/protocol/mqtt/mqtt_client_publish.c"
  64.     "sdk_src/protocol/mqtt/mqtt_client_subscribe.c"
  65.     "sdk_src/protocol/mqtt/mqtt_client_unsubscribe.c"
  66.     "sdk_src/protocol/mqtt/mqtt_client_yield.c"
  67.     "sdk_src/protocol/mqtt/mqtt_client.c"
  68.  
  69.     "sdk_src/services/data_template/data_template_action.c"
  70.     "sdk_src/services/data_template/data_template_client.c"
  71.     "sdk_src/services/data_template/data_template_client_common.c"
  72.     "sdk_src/services/data_template/data_template_client_json.c"
  73.     "sdk_src/services/data_template/data_template_client_manager.c"
  74.     "sdk_src/services/data_template/data_template_event.c"
  75.  
  76.     "platform/os/liteos_m/HAL_Device_liteos_m.c"
  77.     "platform/os/liteos_m/HAL_OS_liteos_m.c"
  78.     "platform/os/liteos_m/HAL_TCP_liteos_m.c"
  79.     "platform/os/liteos_m/HAL_Timer_liteos_m.c"
  80.     # "./os/liteos_m/HAL_TLS_mbedtls_liteos_m.c"
  81.     # "./tls/mbedtls/HAL_DTLS_mbedtls.c"
  82.     "platform/tls/mbedtls/HAL_TLS_mbedtls.c"
  83.  
  84.   
  85.  
  86. lite_library("qcloud_sdk_static") { 
  87.     target_type = "static_library" 
  88.  
  89.     sources = qcloud_sdk_sources 
  90.     public_configs = [ ":qcloud_sdk_config" ] 
  91.  
  92. lite_library("qcloud_sdk_shared") { 
  93.     target_type = "shared_library" 
  94.     sources = qcloud_sdk_sources 
  95.     public_configs = [ ":qcloud_sdk_config" ] 
  96.  
  97. ndk_lib("qcloud_ndk") { 
  98.     if (board_name != "hi3861v100") { 
  99.         lib_extension = ".so" 
  100.         deps = [ 
  101.             ":qcloud_sdk_shared" 
  102.         ] 
  103.     } else { 
  104.         deps = [ 
  105.             ":qcloud_sdk_static" 
  106.         ] 
  107.     } 
  108.     head_files = [ 
  109.         "//third_party/iot_link/network/mqtt/paho_mqtt/paho" 
  110.     ] 

整完之后就可以嘗試一下有沒有錯誤了.

2.在main里面寫邏輯,處理事情

我們把官方sdk里面的點燈demo拿過來,直接新建一個demo文件夾,把文件放進去:

#星光計劃2.0#  OpenHarmony繼續上云之騰訊云平臺-鴻蒙HarmonyOS技術社區

自己寫好BUILD.gn,跟之前華為云對接一個套路,大家這么聰明,不用我多說了:

  1. # Copyright (c) 2020 Nanjing Xiaoxiongpai Intelligent Technology Co., Ltd. 
  2. # Licensed under the Apache License, Version 2.0 (the "License"); 
  3. # you may not use this file except in compliance with the License. 
  4. # You may obtain a copy of the License at 
  5. #     http://www.apache.org/licenses/LICENSE-2.0 
  6. # Unless required by applicable law or agreed to in writing, software 
  7. # distributed under the License is distributed on an "AS IS" BASIS, 
  8. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
  9. # See the License for the specific language governing permissions and 
  10. # limitations under the License. 
  11.  
  12. static_library("qcloud_demo") { 
  13.     sources = [ 
  14.         # "iot_thread.c"
  15.         "light.c"
  16.         "light_data_template_sample.c" 
  17.         
  18.     ] 
  19.      
  20.     cflags = [ "-Wno-unused-variable" ] 
  21.     cflags += [ "-Wno-unused-but-set-variable" ] 
  22.      
  23.     include_dirs = [ 
  24.         "."
  25.         "//foundation/communication/softbus_lite/os_adapter/include"
  26.         "//utils/native/lite/include"
  27.         "//kernel/liteos_m/components/cmsis/2.0"
  28.         "//base/iot_hardware/peripheral/interfaces/kits"
  29.         "//third_party" 
  30.  
  31.     ] 
  32.  
  33.     deps = [  
  34.         "//third_party/qcloud-iot-explorer-sdk-embedded-c-3.2.0:qcloud_sdk_static"
  35.         # "//third_party/qcloud-iot-explorer-sdk-embedded-c-3.2.0/external_libs/mbedtls:mbedtls_static"
  36.     ] 
  37.  
  38.  

然后在sample里面的sdk把這個文件夾開啟編譯:

#星光計劃2.0#  OpenHarmony繼續上云之騰訊云平臺-鴻蒙HarmonyOS技術社區

這樣就完成了代碼的編寫了,很快樂有木有。

三.在云平臺上創建設備

其實創建設備的過程官方文檔也的確挺詳細的,幾乎不用再另外加工,這里給出官方的智能燈接入指南:

https://cloud.tencent.com/document/product/1081/41155

官方定義了許多的物模型,其實我們的產品可能是官方物模型沒有定義的,此時我們就需要自己定義產品的屬性,事件和動作等,這塊自己仔細閱讀官方文檔就能搞懂

https://cloud.tencent.com/document/product/1081/34916

搞定了物模型,創建一個設備,記錄下設備的產品id,設備id和連接秘鑰

這點跟華為云平臺不太一樣,騰訊云的產品秘鑰是平臺生成的,而華為云平臺是你自己定義好設備的秘鑰,在創建設備的時候傳上去

四.編譯,運行

編譯的過程倒是很順利,這里就不過多廢話了.

不過在運行的時候出現一個情況,就是mutex不夠用了

自己折騰了一晚上也沒找不解決辦法,后面經過請教猴哥才搞明白:

[[442861]]

阿不對,下面這個候哥才對,大家可以去他主頁關注一下:

https://harmonyos.51cto.com/user/posts/13519852

候哥真大神也,短短一兩句話就幫我搞定了,在此特別感謝侯哥的幫助:

#星光計劃2.0#  OpenHarmony繼續上云之騰訊云平臺-鴻蒙HarmonyOS技術社區

然后我就把我的mutex相關代碼改成posix接口,這是修改之前的:

  1. void *HAL_MutexCreate(void) 
  2.     osMutexAttr_t   attr; 
  3.     osMutexId_t     mutex; 
  4.     char            mutexName[RT_NAME_MAX]; 
  5.     static uint32_t mutex_v; 
  6.  
  7.     attr.name    = mutexName; 
  8.     attr.cb_mem  = &mutex_v; 
  9.     attr.cb_size = 4; 
  10.  
  11.     mutex = osMutexNew(&attr); 
  12.     if (NULL == mutex) { 
  13.         HAL_Printf("create mutex failed"); 
  14.     } 
  15.  
  16.     return mutex; 
  17.  
  18. void HAL_MutexDestroy(_IN_ void *mutex) 
  19.     int err_num; 
  20.  
  21.     err_num = osMutexDelete((osMutexId_t)mutex); 
  22.  
  23.     if (0 != err_num) { 
  24.         HAL_Printf("destroy mutex failed"); 
  25.     } 
  26.  
  27. void HAL_MutexLock(_IN_ void *mutex) 
  28.     int err_num; 
  29.  
  30.     err_num = osMutexAcquire((osMutexId_t)mutex, osWaitForever); 
  31.  
  32.     if (0 != err_num) { 
  33.         HAL_Printf("lock mutex failed"); 
  34.     } 
  35.  
  36. void HAL_MutexUnlock(_IN_ void *mutex) 
  37.     int err_num; 
  38.  
  39.     err_num = osMutexRelease((osMutexId_t)mutex); 
  40.  
  41.     if (0 != err_num) { 
  42.         HAL_Printf("unlock mutex failed"); 
  43.     } 
  44.  
  45. int HAL_MutexTryLock(_IN_ void *mutex) 
  46.     int err_num; 
  47.  
  48.     err_num = osMutexAcquire((osMutexId_t)mutex, osNoWait); 
  49.  
  50.     if (0 != err_num) { 
  51.         HAL_Printf("trylock mutex failed"); 
  52.     } 
  53.     return err_num; 

改完之后是這樣:

  1. void *HAL_MutexCreate(void) 
  2.     // osMutexAttr_t   attr; 
  3.     // osMutexId_t     mutex; 
  4.     char            mutexName[RT_NAME_MAX]; 
  5.     static uint32_t mutex_v; 
  6.  
  7.     pthread_mutex_t *   mutex = HAL_Malloc(sizeof(pthread_mutex_t)); 
  8.     pthread_mutexattr_t attr; 
  9.  
  10.     int ret = pthread_mutex_init(mutex, &attr);  // osMutexNew(&attr); 
  11.     // if (NULL == mutex) { 
  12.     if (ret != 0) { 
  13.         HAL_Printf("create mutex failed\n"); 
  14.     } 
  15.  
  16.     return mutex; 
  17.  
  18. void HAL_MutexDestroy(_IN_ void *mutex) 
  19.     int err_num; 
  20.  
  21.     err_num = pthread_mutex_destroy(mutex); 
  22.  
  23.     if (0 != err_num) { 
  24.         HAL_Printf("destroy mutex failed"); 
  25.     } 
  26.  
  27. void HAL_MutexLock(_IN_ void *mutex) 
  28.     int err_num; 
  29.  
  30.     err_num = pthread_mutex_lock(mutex); 
  31.  
  32.     if (0 != err_num) { 
  33.         HAL_Printf("lock mutex failed"); 
  34.     } 
  35.  
  36. void HAL_MutexUnlock(_IN_ void *mutex) 
  37.     int err_num; 
  38.  
  39.     err_num = pthread_mutex_unlock(mutex); 
  40.  
  41.     if (0 != err_num) { 
  42.         HAL_Printf("unlock mutex failed"); 
  43.     } 
  44.  
  45. int HAL_MutexTryLock(_IN_ void *mutex) 
  46.     int err_num; 
  47.     struct timespec absTimeout={0,0}; 
  48.  
  49.     err_num = pthread_mutex_timedlock(mutex, &absTimeout); 
  50.  
  51.     if (0 != err_num) { 
  52.         HAL_Printf("trylock mutex failed"); 
  53.     } 
  54.     return err_num; 

使用的時候記得加上頭文件: #include

處理完這個異常情況,接下來就很順利的登錄騰訊云平臺收發數據了

五.云平臺控制展示

直接查看動圖,控制還是很及時的:

#星光計劃2.0#  OpenHarmony繼續上云之騰訊云平臺-鴻蒙HarmonyOS技術社區

六.總結

其實對接騰訊云還是蠻簡單的,最新版的sdk在打印上也比以前好多了.OpenHarmony的2.x版本優化了不少東西,記得去年這時候用1.x版本對接的時候還是很費勁的,給OpenHarmony團隊點贊,也給騰訊云團隊點贊

大家趕緊玩起來吧

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

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

https://harmonyos.51cto.com

 

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

2023-09-28 08:01:41

2013-07-18 10:10:31

2012-06-13 11:10:59

2021-12-28 16:06:15

鴻蒙HarmonyOS應用

2016-07-05 10:53:56

2021-06-08 09:54:18

云計算混合云Region架構

2019-05-14 13:02:26

私有云公有云企業

2015-05-05 11:20:09

騰訊云

2016-12-27 16:13:06

亞馬遜云阿里云騰訊云

2022-10-26 11:59:05

騰訊云IaaSPaaS

2024-07-25 10:28:51

2016-07-14 16:48:59

云計算

2012-07-06 15:48:59

華為服務器

2020-11-29 15:09:15

騰訊云云開發代碼

2017-08-23 10:50:26

騰訊云政企轉型

2016-04-28 14:03:39

騰訊云計算CDN

2018-12-10 23:01:44

2012-12-28 14:38:15

阿里云百度云騰訊云
點贊
收藏

51CTO技術棧公眾號

欧美va亚洲va香蕉在线| 不卡av在线免费观看| 中文字幕亚洲无线码a| www.久久av.com| 在线电影福利片| av成人动漫在线观看| 国产国语videosex另类| 国产黄色小视频网站| 黄色成人美女网站| 在线中文字幕一区| www.欧美黄色| 成人免费高清在线播放| 亚洲网址在线观看| 久久精品国产久精国产| 久久精品人人做人人爽| 岛国精品一区二区三区| 中文在线资源| 黄色日韩网站| 亚洲视频你懂的| 久久免费99精品久久久久久| 91一区二区视频| 夜久久久久久| 久色乳综合思思在线视频| 日本黄色片在线播放| 亚洲三级在线| 色激情天天射综合网| 少妇大叫太大太粗太爽了a片小说| 久草在线网址| k8久久久一区二区三区 | 欧美日韩国产免费一区二区 | 色爱综合区网| 国产精品无人区| 免费在线成人av电影| 亚洲精品福利网站| 国精产品一区一区三区mba桃花 | 国产精品久久久久久久第一福利| 久久66热这里只有精品| 亚洲卡一卡二卡三| 国内成人精品2018免费看| 国产精品美女www爽爽爽视频| 日本道在线观看| 国产精品二区影院| 欧美另类老女人| 国产精品成人69xxx免费视频| 国产一区毛片| 亚洲视频视频在线| 无码h肉动漫在线观看| 乱亲女h秽乱长久久久| 欧美大片一区二区| 99热这里只有精品2| 精品国产乱码一区二区三区 | 三区视频在线观看| 免费成人黄色网| 欧美日韩中文国产| 在线看的黄色网址| 丁香久久综合| 欧美日韩免费不卡视频一区二区三区 | 亚洲做受高潮无遮挡| 欧美激情影院| 国产婷婷色综合av蜜臀av | 中文字幕成人网| 色视频一区二区三区| 国产乱子伦三级在线播放| 久久综合九色综合97婷婷女人 | 国产精品一区二区三| 久久这里只有精品9| 美女久久久精品| 国产精品专区h在线观看| 影音先锋国产在线| 黄色资源网久久资源365| 91精品综合久久久久久五月天| 国产裸体永久免费无遮挡| 韩国v欧美v日本v亚洲v| 成人动漫视频在线观看免费| 蜜桃视频久久一区免费观看入口| gogogo免费视频观看亚洲一| 农村寡妇一区二区三区| av资源网站在线观看| 自拍av一区二区三区| 日本黄大片在线观看| 在线免费看h| 欧美性做爰猛烈叫床潮| 小早川怜子一区二区三区| 欧美日本三级| 日韩电影在线观看永久视频免费网站| 在线国产视频一区| 婷婷综合社区| 欧美怡春院一区二区三区| 亚洲午夜无码久久久久| 国产麻豆成人精品| 久久国产精品99久久久久久丝袜| 成人在线高清视频| 亚洲蜜臀av乱码久久精品 | 奇米精品一区二区三区四区| 91亚洲精品在线| 天天在线女人的天堂视频| 国产欧美一区二区精品久导航| 国产精品久久成人免费观看| 涩涩在线视频| 欧美一区二区免费观在线| 中文字幕在线免费看线人| 久久香蕉国产| 韩剧1988在线观看免费完整版| 波多野结衣绝顶大高潮| 国产成人av一区| 日韩视频精品| 日本а中文在线天堂| 717成人午夜免费福利电影| 人妻av一区二区| 天天影视综合| 青青草精品毛片| 亚洲av无码乱码国产麻豆| 久久久久久久久久久久久夜| 欧美做受777cos| 国产 日韩 欧美一区| 精品日韩欧美在线| 肉色超薄丝袜脚交69xx图片| 亚洲综合国产| 国产精品久久久久久免费观看| 毛片在线播放网站| 亚洲国产你懂的| 日韩欧美理论片| 波多野结衣的一区二区三区| 97超碰国产精品女人人人爽 | 国产高潮久久久| 国产乱人伦精品一区二区在线观看| 品久久久久久久久久96高清| 日韩有码中文字幕在线| 国产盗摄在线观看| 亚洲自拍与偷拍| www亚洲成人| 日本成人7777| 欧美大片欧美激情性色a∨久久| 日本视频在线观看免费| 成人在线一区二区三区| 国产精品jizz在线观看老狼| 欧美人与性动交xxⅹxx| 亚洲成人精品视频| 青青草免费av| 国产精品一区二区男女羞羞无遮挡| 日韩欧美亚洲精品| 97se综合| 亚洲欧洲在线看| 97久久久久久久| 日本高清不卡的在线| 手机看片福利盒子久久| 国产欧美自拍一区| 久久在线免费视频| 中日精品一色哟哟| 校园春色亚洲| 亚洲精品中文在线| 杨幂毛片午夜性生毛片 | 综合国产视频| 欧美激情久久久| 亚洲精品久久久久久无码色欲四季 | 久久激情一区| 欧亚洲嫩模精品一区三区| 亚洲最大视频网| 国产真实久久| 国产在线精品一区二区中文| bl在线肉h视频大尺度| 亚洲第一页自拍| 久久久国产精品成人免费| 26uuu精品一区二区在线观看| 免费国产黄色网址| 欧美人妖在线| 国产精品狼人色视频一区| jizzjizz在线观看| 91麻豆精品国产91久久久资源速度| 玖玖爱这里只有精品| 成人午夜碰碰视频| 久久精品视频16| 国产欧美高清视频在线| 国产精品视频内| 天堂8中文在线| 日韩av在线中文| 精品99在线| 国产精品夜间视频香蕉| 国产原创视频在线观看| 日韩精品专区在线| 亚洲欧美三级伦理| 国产精品1000部啪视频| 亚洲先锋成人| 午夜剧场免费在线观看| 久久综合欧美| 国产精品一区二区久久久久| 福利视频在线| 亚洲第一区第一页| 无码人妻丰满熟妇区bbbbxxxx| 中文字幕欧美日本乱码一线二线| 精品综合久久久久| 在线日本成人| 亚洲激情一区二区三区| 九九视频在线观看| 99久久精品一区| 无限资源日本好片| 亚洲经典三级| 亚洲欧洲日本国产| 高清一区二区三区| 国产精品视频999| 国产蜜臀在线| 中文字幕国产精品久久| 亚洲毛片在线播放| 在线观看免费成人| 精品无码黑人又粗又大又长| 国产欧美精品一区二区三区四区| 亚洲精品中文字幕乱码无线| 国产精品一区亚洲| 最新av网址在线观看| 国产九一精品| 成人久久18免费网站漫画| 最新欧美电影| 97久久国产精品| 国产二区三区在线| 国产一区二区三区在线播放免费观看| 性中国xxx极品hd| 欧美三级视频在线播放| 国产做受高潮漫动| 亚洲欧美日韩电影| 亚洲一级片在线播放| 99国产精品久久| 丰满人妻一区二区三区大胸| 久久国产剧场电影| 日本www高清视频| 99人久久精品视频最新地址| 国产激情片在线观看| 色狮一区二区三区四区视频| 牛人盗摄一区二区三区视频| 国产香蕉精品| 99电影网电视剧在线观看| 久久亚洲国产精品尤物| 国产成人精品一区二区| 亚洲欧洲高清| 91精品国产成人| 1234区中文字幕在线观看| 欧美日韩国产91| 青青青草视频在线| 久久人人爽亚洲精品天堂| 95在线视频| 中文字幕不卡在线视频极品| 男女网站在线观看| 日韩精品免费综合视频在线播放 | а天堂中文在线资源| 久久久精品人体av艺术| 中日韩精品一区二区三区| 久久亚洲精品国产精品紫薇| 一级性生活毛片| 久久蜜桃av一区精品变态类天堂| 久久丫精品国产亚洲av不卡| 26uuu欧美| 日韩人妻无码精品综合区| 久久久久久久国产精品影院| 欧美 日韩 国产 成人 在线观看| 久久久91精品国产一区二区精品 | 伦伦影院午夜理论片| 国产一区二区三区四区在线观看| 亚洲精品手机在线观看| 另类的小说在线视频另类成人小视频在线| 青青青国产在线视频| 日本亚洲欧美天堂免费| 亚洲成人天堂网| 国产揄拍国内精品对白| 无人码人妻一区二区三区免费| 国产成人av资源| 在线天堂www在线国语对白| 97精品久久久午夜一区二区三区 | 色综合免费视频| 亚洲女人天堂色在线7777| 国产在线91| 精品国产一区av| 欧美性受ⅹ╳╳╳黑人a性爽| 国内精品久久久久久影视8| 中文日产幕无线码一区二区| 国产精品久久久久久久av电影| 九九九精品视频| 5g国产欧美日韩视频| 国产精品任我爽爆在线播放| 欧美二区三区在线| 久久中文字幕av| 91网站在线观看免费| 亚洲免费网址| 中文字幕亚洲乱码| 高清不卡在线观看av| 精品人妻无码一区二区三区| 亚洲欧洲三级电影| 日本一级淫片色费放| 欧洲精品中文字幕| www.久久伊人| 亚洲网站在线观看| 亚洲羞羞网站| 日本精品久久久久久久| 9999在线精品视频| 精品一区二区三区日本| 国产精品88久久久久久| 欧美日韩不卡在线视频| 日本不卡视频在线观看| av不卡中文字幕| 国产精品天天看| 国产精品不卡av| 欧美日韩国产另类一区| 天堂网av在线播放| 日韩一区二区久久久| 碰碰在线视频| 亚洲伊人第一页| 国产永久精品大片wwwapp| 日本阿v视频在线观看| 另类小说一区二区三区| 中文字幕在线播放一区| 亚洲色图视频网站| jizz国产在线观看| 精品久久一区二区三区| 免费黄色在线观看| 日本不卡高字幕在线2019| 日韩精品视频中文字幕| 日韩久久久久久久| 亚洲毛片在线| 乱码一区二区三区| 中文字幕中文字幕在线一区| 天堂网视频在线| 亚洲精品电影网| 欧美一卡二卡| 91久久爱成人| 99久久婷婷国产综合精品电影√| 妺妺窝人体色www在线小说| 懂色av一区二区三区蜜臀| 5566中文字幕| 欧美亚洲动漫精品| 国产九色在线| 国产成人精品av| 天堂成人娱乐在线视频免费播放网站| 国产一级不卡视频| 精油按摩中文字幕久久| 内射毛片内射国产夫妻| 91黄视频在线| 国产三区四区在线观看| 国产ts人妖一区二区三区| 精品欧美午夜寂寞影院| 六月婷婷激情综合| 国产福利91精品| 印度午夜性春猛xxx交| 91精品国产欧美一区二区18| 999国产在线视频| 国产精品日日做人人爱| 成人嘿咻视频免费看| 一路向西2在线观看| 国产婷婷色一区二区三区| 久久久久久少妇| 亚洲欧美日韩精品久久| 午夜激情成人网| 亚洲午夜精品久久久中文影院av | 亚洲熟女乱综合一区二区三区| 亚洲永久免费av| 蜜桃视频在线观看www| 91av在线影院| 国产剧情一区| 日韩一级免费片| 自拍偷拍欧美激情| 精品久久人妻av中文字幕| 久久久在线视频| 亚洲理论电影片| 我看黄色一级片| 亚洲欧美另类图片小说| 亚洲精品国产一区二| 91av视频在线| 精品国产一区二区三区av片| 91福利国产成人精品播放| 亚洲柠檬福利资源导航| 亚洲国产精品一| 欧美亚洲另类视频| 成人在线免费观看视频| 先锋资源在线视频| 天天免费综合色| 国产视频福利在线| 亚洲影影院av| 一本色道88久久加勒比精品| 国产精品密蕾丝袜| 欧美一级搡bbbb搡bbbb| 黄在线观看免费网站ktv| 日韩精品一线二线三线| 国产一区二区三区视频在线播放| 国产在线欧美在线| 亚洲欧美日韩精品久久奇米色影视 | 国产精品视频1区| 国语精品一区| 美女被到爽高潮视频| 制服丝袜中文字幕一区| 91白丝在线| 亚洲精品成人a8198a| 国产iv一区二区三区| 无码人妻丰满熟妇精品区| 免费不卡在线观看av| 日韩精品导航| 午夜免费福利网站| 欧美日韩一区二区三区在线免费观看 | 99国产精品免费网站| 波多野结衣家庭教师在线播放| 国产精品网站导航| 亚欧在线观看视频| 91精品美女在线| 久久久久久亚洲精品杨幂换脸|