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

微信小程序開發(fā)(2):猜拳游戲全過程詳解

原創(chuàng)
開發(fā) 開發(fā)工具 前端
本文將從零開始開發(fā)一款微信小程序。該程序的功能很簡單,是一個猜拳游戲,點(diǎn)擊“開始”按鈕后,會快速切換“錘子”、“剪刀”和“布”,直到按“停止”按鈕,會顯示“錘子”、“剪刀”和“布”中的一個,該游戲可以雙方或多方進(jìn)行猜拳,這里猜拳的規(guī)則就不多說了,大家應(yīng)該很清楚。

【51CTO.com原創(chuàng)稿件】如果讀者不了解什么是微信小程序,可以看我的另外一篇文章:(微信小程序:原生熱布局終將改變世界)http://zhuanlan.51cto.com/art/201610/519027.htm

本文將從零開始開發(fā)一款微信小程序。該程序的功能很簡單,是一個猜拳游戲,點(diǎn)擊“開始”按鈕后,會快速切換“錘子”、“剪刀”和“布”,直到按“停止”按鈕,會顯示“錘子”、“剪刀”和“布”中的一個,該游戲可以雙方或多方進(jìn)行猜拳,這里猜拳的規(guī)則就不多說了,大家應(yīng)該很清楚。本節(jié)的目的是通過該例子,將開發(fā)微信小程序的過程完整地跑一遍,從注冊公測賬號開始,一直到將微信小程序發(fā)布到微信平臺,并在真機(jī)上測試為止。通過該例子,讀者可以完全掌握微信小程序的開發(fā)流程。

1.注冊微信小程序公測賬號

在上一篇文章中已經(jīng)安裝了微信小程序的IDE,并使用了無AppID的方式創(chuàng)建了工程。盡管這種方式可以在計(jì)算機(jī)上開發(fā)小程序(為了方便,以后將微信小程序簡稱為小程序),并使用模擬器進(jìn)行測試,但無法將小程序在真機(jī)上測試,更無法將小程序上傳到服務(wù)端進(jìn)行審核,所以要想以更完美的方式開發(fā)小程序,必須要有小程序的AppID。

現(xiàn)在騰訊已經(jīng)開放了小程序AppID的注冊,不過目前只針對企業(yè)、政府、媒體等組織,并不針對個人開放注冊,相信小程序正式發(fā)布時,會向個人開放。對于很多讀者來說,可能沒有相關(guān)組織的資質(zhì),但也可以通過本章的學(xué)習(xí),對小程序開發(fā)的全過程有一個深入的了解,以免以后完全開放注冊后不知所措。

要想注冊小程序賬號,首先進(jìn)入如下頁面。

https://mp.weixin.qq.com

然后點(diǎn)擊右上角的“立即注冊”鏈接,會進(jìn)入注冊頁面,在頁面的中心位置會看到如圖1所示的注冊類型,包括訂閱號、服務(wù)號、小程序和企業(yè)號。直接點(diǎn)擊“小程序”,進(jìn)入小程序注冊頁面。

圖1 各種“號”們的注冊頁面

在注冊的過程中,會要求輸入郵箱、密碼等一些常規(guī)信息。在進(jìn)行驗(yàn)證時會要求輸入和企業(yè)有關(guān)的信息,如企業(yè)名稱、統(tǒng)一社會信用代碼、企業(yè)銀行賬號等信息。注冊用戶可以從圖2所示主體類型中選擇一個。

圖2 選擇主體類型

選中一個主體后,在頁面的下方會要求輸入相關(guān)的信息,如果選擇的是企業(yè),會要求輸入企業(yè)名稱、營業(yè)執(zhí)照注冊號等信息,以及管理員的相關(guān)信息(每個管理員最多只能注冊5個小程序)。這里的管理員(在注冊的過程中會和管理員的微信綁定)是用于登錄小程序后臺的,其他加入的普通開發(fā)人員無法登錄小程序后臺,只能登錄小程序IDE。

最后會要求用戶使用企業(yè)賬戶向騰訊官方的賬號打款0.06元進(jìn)行驗(yàn)證(要求在10天之內(nèi)打款,否則驗(yàn)證失敗,而且只能是0.06元)。不管驗(yàn)證是否成功,款項(xiàng)都會退回到原來的企業(yè)賬戶。驗(yàn)證是自動的,但并不是實(shí)時的。騰訊的服務(wù)端應(yīng)該是隔一段時間進(jìn)行一次驗(yàn)證,可能會等幾個小時,請耐心等待。

在驗(yàn)證通過之前,仍然可以用注冊Email登錄小程序后臺,但無法獲取小程序AppID。驗(yàn)證通過后,會通過站內(nèi)短信(在小程序后臺右上角)進(jìn)行通知。要注意的是,登錄小程序后臺的過程中要使用手機(jī)微信掃描二維碼進(jìn)行登錄,請用管理員的微信掃描登錄小程序后臺。

如果驗(yàn)證成功,并成功登錄小程序后臺,會看到左側(cè)出現(xiàn)如圖3所示的菜單。

圖3 小程序后臺菜單

點(diǎn)擊最下方的“設(shè)置”,在頁面的右側(cè)會出現(xiàn)兩個選項(xiàng)卡:“基本設(shè)置”和“開發(fā)設(shè)置”。“基本設(shè)置”用于錄入小程序的基本信息。要注意的是,每一個賬號只能和一個小程序綁定,如果要開發(fā)多個小程序,就需要注冊多個賬號(多個管理員),當(dāng)然,也可以是一個管理員同時管理多個賬號(同一個身份證最多只能注冊5個小程序)。圖4是已經(jīng)錄的小程序基本信息。

圖4 小程序基本信息

接下來,點(diǎn)擊“開發(fā)設(shè)置”標(biāo)簽,就會看到小程序的AppID(被遮擋的部分),如圖5所示。這個AppID最好不要讓無關(guān)人員知道,否則可能會帶來一些問題。讀者可以將這個AppID輸入到AppID文本框。

圖5 獲取小程序的AppID

2 綁定開發(fā)者

盡管是管理員創(chuàng)建了小程序工程,不過可能并不是管理員負(fù)責(zé)開發(fā),而是另外一個開發(fā)人員。這時通常需要為這個開發(fā)人員建立一個賬戶,實(shí)際上,只需要把這個開發(fā)人員的微信賬號綁定到管理員創(chuàng)建的小程序賬號上即可。

在小程序后臺左側(cè)菜單中選擇“用戶身份”,會看到頁面的右側(cè)顯示當(dāng)前管理員和開發(fā)者的賬號,如圖6所示。

圖6 用戶身份頁面

點(diǎn)擊“開發(fā)者”標(biāo)簽,會看到已經(jīng)綁定的開發(fā)者(最多可綁定10個),如圖7所示。

圖7 綁定開發(fā)者

點(diǎn)擊頁面右側(cè)“綁定”按鈕,會彈出一個顯示二維碼的頁面,用要綁定開發(fā)人員的手機(jī)微信掃描該二維碼即可進(jìn)行綁定。綁定完成后,在第一次登錄小程序IDE時,用已經(jīng)綁定開發(fā)者的手機(jī)微信掃描IDE中顯示的二維碼即可進(jìn)行登錄。不過,除了管理員外,綁定的開發(fā)者只能在真機(jī)上預(yù)覽小程序,不能將小程序上傳到騰訊的服務(wù)器。

3 創(chuàng)建和打開微信小程序工程

到這一部分,應(yīng)該是最精彩部分的開始,因?yàn)閺倪@一部分開始,我們將進(jìn)入開發(fā)環(huán)節(jié),來完成我們的第一個小程序:猜拳游戲。

別忙,小程序工程還沒建立呢!

現(xiàn)在運(yùn)行小程序IDE,如果是首次運(yùn)行,會顯示如圖8的登錄窗口,然后用管理員或綁定開發(fā)者的微信掃描該二維碼即可成功登錄。

圖8小程序IDE的登錄窗口

登錄成功后,會顯示如圖9所示的窗口。

圖9 建立小程序工程的窗口

如果以前使用過AppID建立了小程序工程,會自動顯示配置小程序時指定的圖標(biāo),如果未創(chuàng)建工程,就點(diǎn)擊“添加工程”按鈕來創(chuàng)建新的小程序工程。如果已經(jīng)有AppID了,就在圖10所示的AppID文本框中輸入AppID,如果沒有AppID,點(diǎn)擊“無AppID”即可。并按照圖10所示輸入項(xiàng)目名稱和項(xiàng)目目錄。注意,如果是新建的工程,項(xiàng)目目錄應(yīng)為空,如果該目錄中有太多的其他文件和目錄,下次啟動IDE時會由于裝載這些文件和目錄,而進(jìn)入假死狀態(tài)。如果真要進(jìn)入了這種狀態(tài),在Mac OS X系統(tǒng)下,進(jìn)入~/Library/Application Support目錄,刪除“微信web開發(fā)者工具”目錄即可恢復(fù)IDE的最初狀態(tài)。如果在Windows下,直接卸載小程序IDE,并重新安裝即可。

圖10 創(chuàng)建項(xiàng)目窗口

如果“項(xiàng)目目錄”指定的是其他小程序目錄,那么使用上述方法是打開小程序工程,而不是創(chuàng)建小程序項(xiàng)目。IDE會自動識別是新建還是打開動作。

4 猜拳游戲的布局

進(jìn)入小程序IDE,點(diǎn)擊IDE左上角的“編輯”選項(xiàng)(如圖11所示),開始編輯代碼。

圖11 IDE左上角的控制選項(xiàng)

猜拳游戲的布局非常簡單,樣子如圖12所示。

圖12猜拳游戲的布局樣式

猜拳游戲的布局是縱向顯示了三個組件:文本組件(text)、圖像組件(image)和按鈕組件(button)。在創(chuàng)建小程序工程時,默認(rèn)建立了兩個頁面:index和logs,如圖13所示。我們不需要管logs,在這個例子中只修改和index頁面相關(guān)的文件。index是小程序第一個顯示的頁面。

圖13index和logs頁面的文件結(jié)構(gòu)

其中,index.wxml文件是index頁面的布局文件,現(xiàn)在打開該文件,并按下面的內(nèi)容修改代碼。

  1. <!--index.wxml--> 
  2. <view class="container"
  3. <text class="finger_guessing">猜拳游戲</text> 
  4. <view   class="userinfo"
  5. <image class="userinfo-avatar" src="{{imagePath}}" background-size="cover"/> 
  6. <button bindtap="guess">{{title}}</button> 
  7. </view
  8. </view

這段代碼中,image和button組件的內(nèi)容都需要動態(tài)改變,所以image組件的src屬性和button組件的文本值(夾在<button>和</button>之間的部分)都分別與一個變量綁定。這是小程序的一個重要特性(和React Native完全相同)。在改變組件的屬性值時,并不需要直接獲取該組件的實(shí)例,而只需將該屬性與某個同類型的變量綁定,一旦該變量的值改變,屬性值也就會隨之改變了。綁定變量的格式是“{{變量名}}”。改變了的定義和初始化部分,在下一節(jié)會詳細(xì)介紹。

我們發(fā)現(xiàn),就算按照前面的布局,仍然不能像圖12所示那樣擺放組件,這是因?yàn)檫€需要下面代碼調(diào)整一下樣式(index.wxss文件)。

  1. /**index.wxss**/ 
  2.  .userinfo { 
  3.    display: flex; 
  4.    flex-direction: column
  5.    align-items:center; 
  6.    margin-top: 50px; 
  7.  } 
  8.  
  9.  .userinfo-avatar { 
  10.    width: 500rpx; 
  11.    height: 500rpx; 
  12.    margin: 40rpx; 
  13.   } 
  14.   .userinfo-nickname { 
  15.    color: #aaa; 
  16.  } 
  17.   .finger_guessing { 
  18.    color: #F00; 
  19.    font-size: 30px; 
  20.    margin-top: 20px; 

前面的布局代碼主要調(diào)整了userinfo-avatar的寬度和高度,讓圖像顯示得更大一些。

最后,還需要修改一下app.wxss文件的代碼,將padding屬性的值改成50rpx 0,代碼如下:

  1. /**app.wxss**/ 
  2.  .container { 
  3.    height: 100%; 
  4.    display: flex; 
  5.    flex-direction: column
  6.    align-items: center; 
  7.    justify-content: space-between
  8.    padding: 50rpx 0; 
  9.    box-sizing: border-box; 
  10.  }  

當(dāng)然,現(xiàn)在可能仍然無法顯示圖像,因?yàn)閕magePath變量還沒有設(shè)置,而且圖像還沒有放到工程目錄。現(xiàn)在讀者可以到網(wǎng)上找三張圖片,分別是剪子、石頭和布,當(dāng)然,也可以用本例提供的圖像,并在小程序工程根目錄建立一個images目錄,將這三個圖像文件放到該目錄中。

5 控制剪子、石頭、布的快速切換

猜拳游戲的核心就是快速切換剪子、石頭、布三個圖像,當(dāng)點(diǎn)擊“停止”按鈕后,會停到其中一個圖像上。這里涉及到如下兩個動作。

(1)用定時器快速切換圖像

(2)圖像下方的按鈕,當(dāng)一開始點(diǎn)擊時,文本變成了“停止”,當(dāng)再次點(diǎn)擊該按鈕后,按鈕文本又變成了“開始”,也就是說,一個按鈕同時負(fù)責(zé)開始和停止圖像快速切換兩個動作。

控制圖像快速切換和按鈕文本變化兩個動作的代碼都要寫在index.js文件中。首先,你要將這三個圖像文件名存儲在一個全局的數(shù)組中,并使用定時器快速從這個數(shù)組中依次循環(huán)獲取圖像文件名,并將該文件名指定的圖像顯示到image組件中。修改按鈕的文本只需要修改title變量即可。

這里涉及到兩個主要變量:imagePath和title。這兩個都定義在data對象中,點(diǎn)擊按鈕會執(zhí)行g(shù)uess函數(shù)(在index.wxml文件中使用bindtap屬性指定按鈕的單擊事件函數(shù)名),該函數(shù)也需要在index.js中編寫。完整的實(shí)現(xiàn)代碼如下:

  1. //index.js 
  2. //獲取應(yīng)用實(shí)例 
  3.  var app = getApp() 
  4. //  在數(shù)組中存在三個圖像文件名 
  5.  var imagePaths = ['../../images/scissors.png''../../images/stone.png''../../images/cloth.png']; 
  6. //  當(dāng)前圖像的索引 
  7.  var imageIndex = 0; 
  8.  
  9.  
  10.  Page({ 
  11.    data: { 
  12.      imagePath: imagePaths[0],  //  用于修改image組件顯示圖像的變量 
  13.      title: '開始',               //  用于改變按鈕文本的變量 
  14. isRunning:false,            // 該變量為true,表示圖像正在快速切換 
  15.      userInfo: {}, 
  16.  
  17.  
  18.    }, 
  19.    //事件處理函數(shù) 
  20.    bindViewTap: function () { 
  21.      wx.navigateTo({ 
  22.        url: '../logs/logs' 
  23.      }) 
  24.    }, 
  25.    //  定時器要執(zhí)行的函數(shù) 
  26.    change: function (e) { 
  27.      imageIndex++; 
  28.      //  當(dāng)前圖像索引大于最大索引時,重新設(shè)為第一個索引值(已達(dá)到循環(huán)顯示圖像的目的) 
  29.      if (imageIndex > 2) { 
  30.        imageIndex = 0; 
  31.      } 
  32.     //  修改image組件要顯示的圖像(改變imagePath變量的值) 
  33.      this.setData( 
  34.        { 
  35.          imagePath: imagePaths[imageIndex] 
  36.        } 
  37.      ) 
  38.    }, 
  39.     //  點(diǎn)擊按鈕要執(zhí)行的函數(shù) 
  40.     guess: function (e) { 
  41.      //  獲取isRunning變量的值 
  42.      let isRunning = this.data.isRunning; 
  43.   // 根據(jù)是否正在快速切換圖像,決定如何修改按鈕文本,以及是開啟定時器,還是移除定時器 
  44.      if (!isRunning) { 
  45.        this.setData( 
  46.          { 
  47.            title: '停止'
  48.            isRunning:true 
  49.          } 
  50.        ); 
  51.       //  開啟定時器(沒100毫秒調(diào)用一次change函數(shù)) 
  52.        this.timer = setInterval((function () { 
  53.          this.change() 
  54.        }).bind(this), 100); 
  55.      } 
  56.      else { 
  57.        this.setData( 
  58.          { 
  59.            title: '開始'
  60.            isRunning:false 
  61.          } 
  62.        ); 
  63.       //  移除定時器 
  64.        this.timer && clearInterval(this.timer); 
  65.  
  66.      } 
  67.  
  68.    }, 
  69.    onLoad: function () { 
  70.      console.log('onLoad'
  71.      var that = this 
  72.  
  73.      //調(diào)用應(yīng)用實(shí)例的方法獲取全局?jǐn)?shù)據(jù) 
  74.      app.getUserInfo(function (userInfo) { 
  75.        //更新數(shù)據(jù) 
  76.        that.setData({ 
  77.          userInfo: userInfo 
  78.        }) 
  79.      }) 
  80.    } 
  81.  }) 

是不是這個猜拳游戲很簡單呢,這么點(diǎn)代碼就搞定了,現(xiàn)在可以通過左側(cè)的模擬器測試我們的成果了。大家可以點(diǎn)擊“開始”按鈕,看看圖像是否會快速切換,再點(diǎn)擊“停止”按鈕,看看是否會停止在某個圖像上。

6 真機(jī)測試小程序

現(xiàn)在輪到用真機(jī)測試我們的成果了。如果只想在真機(jī)上測試,通過管理員或綁定的開發(fā)者登錄小程序IDE就可以。

現(xiàn)在點(diǎn)擊IDE左上角的“項(xiàng)目”選項(xiàng),右側(cè)會顯示如圖14所示的項(xiàng)目操作頁面。

圖14 項(xiàng)目操作頁面

點(diǎn)擊“預(yù)覽”按鈕,會顯示如圖15所示的二維碼窗口,用當(dāng)前登錄小程序IDE的用戶(管理員或綁定的開發(fā)者)的微信掃描該二維碼,即可將小程序上傳到真機(jī)上運(yùn)行。

圖15 掃描二維碼上傳小程序到真機(jī)

在真機(jī)(Android手機(jī))的測試結(jié)果如圖16所示。

圖16 在真機(jī)上的運(yùn)行結(jié)果

7 上傳和審核小程序

如果覺得在真機(jī)上測試沒問題,那么可以點(diǎn)擊圖14所示的“上傳”按鈕將小程序上傳到騰訊的服務(wù)器(該工作只能由管理員完成,綁定的開發(fā)者不允許上傳小程序)。點(diǎn)擊“上傳”按鈕后,也會顯示一個類似圖15的二維碼窗口,用管理員的微信掃描該二維碼,然后會顯示如圖17所示的窗口,輸入相應(yīng)的版本號和項(xiàng)目備注,最后點(diǎn)擊“上傳”按鈕上傳即可。

圖17 完成最后的上傳設(shè)置工作

成功上傳小程序后,回到小程序的后臺,點(diǎn)擊左側(cè)的“開發(fā)管理”選項(xiàng),會看到如圖18所示的三個小程序版本的管理頁面。我們直接上傳的是開發(fā)版本,如果管理員認(rèn)為沒問題,可以點(diǎn)擊“提交審核”按鈕,會將小程序提交給騰訊,這就是審核版本,如果騰訊審核通過,就正式上線了,這就是線上版本。讀者也可以點(diǎn)擊“提交審核”按鈕右側(cè)的向下箭頭按鈕,并點(diǎn)擊“刪除”按鈕刪除當(dāng)前開發(fā)版本。要注意的是,下一次上傳,會覆蓋當(dāng)前的開發(fā)版本。

圖18 管理小程序的版本

本文用一個完整的例子從頭到尾演示了從開發(fā)小程序,到真機(jī)測試,再到上傳發(fā)布的完整過程。盡管本章提供的例子非常簡單,但足以清楚地展示了小程序開發(fā)的完整過程。不過要想開發(fā)牛逼的小程序,還需要繼續(xù)閱讀后續(xù)的文章。

相關(guān)課程:征服微信小程序視頻教程(程序接口+API、UI+實(shí)戰(zhàn)案例)
http://edu.51cto.com/course/course_id-7334.html

【51CTO原創(chuàng)稿件,合作站點(diǎn)轉(zhuǎn)載請注明原文作者和出處為51CTO.com】

 

責(zé)任編輯:武曉燕 來源: 51CTO.com
相關(guān)推薦

2011-09-06 15:38:20

QT安裝

2010-03-10 13:24:45

Zend Debugg

2011-07-20 14:04:46

Cocos2d iPhone 游戲

2009-11-02 14:53:30

Oracle創(chuàng)建用戶權(quán)

2011-02-22 10:46:02

Samba配置

2010-10-08 09:03:51

2011-08-30 18:01:20

2011-04-18 15:56:10

軟件測試

2009-12-08 17:56:16

WCF配置

2015-06-08 09:43:18

青云QingCloudIDC

2015-07-08 09:57:59

Git服務(wù)器分步詳解

2009-04-13 12:37:18

2011-01-21 17:51:52

2024-08-27 08:00:00

2009-04-23 10:04:55

2009-10-21 09:14:26

Visual Stud

2017-05-08 15:03:07

微信小程序開發(fā)實(shí)戰(zhàn)

2016-09-28 18:10:59

微信程序MINA

2024-07-16 08:31:41

2016-11-04 10:49:48

微信小程序
點(diǎn)贊
收藏

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

欧美成人aaaaⅴ片在线看| 欧美污视频网站| www.蜜臀av| 天堂中文av在线资源库| 91女厕偷拍女厕偷拍高清| 国产精品久久久久免费a∨| 99自拍偷拍视频| а天堂中文最新一区二区三区| 一区二区欧美国产| 欧美日韩一区二区视频在线观看| 在线观看毛片av| 亚洲承认在线| 精品国产一区二区三区久久| 国产女人18毛片水真多18 | 欧美sm美女调教| 国产在线青青草| 黄视频在线观看网站| av在线一区二区三区| 国产视频福利一区| 在线观看日本网站| 国产一区二区三区四区老人| 中文字幕日韩精品在线| 黄色av网址在线观看| 欧美综合影院| 91成人免费在线| 人人妻人人做人人爽| 国产黄色在线免费观看| 国产女人18毛片水真多成人如厕| 国内伊人久久久久久网站视频 | 亚洲欧美日韩中文播放| 国产精品男人的天堂| 国产亚洲精品久久久久久打不开| 久久久影院免费| 亚洲欧美在线一区二区| 亚洲av人人澡人人爽人人夜夜| 2019中文亚洲字幕| 欧美三级电影网| 成年人免费大片| 日韩伦理在线| 午夜精品久久久久影视| www.夜夜爱| 影院在线观看全集免费观看| 中文字幕一区在线| 视频一区视频二区视频三区高| 日韩资源在线| 91视频xxxx| 精品伦理一区二区三区| 午夜精品久久久久久久96蜜桃 | 成人av番号网| 一区二区视频播放| 奇米一区二区三区av| 国产999精品久久久| 国产欧美一区二区三区在线看蜜臂| 激情文学一区| 日韩视频免费在线| 三上悠亚在线观看视频| 婷婷久久综合| 日韩视频在线永久播放| 久久精品一卡二卡| 亚洲精品毛片| 欧美一区二区三区在线看| 少妇一晚三次一区二区三区| 成人区精品一区二区不卡| 亚洲人成网站色在线观看| 男人的天堂成人| 欧美性受xxxx狂喷水| 成人激情小说网站| 精品视频第一区| 酒色婷婷桃色成人免费av网| 国产日韩视频一区二区三区| 亚洲欧美成人一区| av免费在线免费| 亚洲一区自拍偷拍| 免费在线观看亚洲视频| 亚洲精品一级二级| 综合久久一区二区三区| 8x8x华人在线| 超碰在线cao| 91成人在线精品| 亚洲成人动漫在线| 黄色av免费在线看| 国产精品久久久久久久久免费相片| 婷婷久久青草热一区二区| 日本激情视频在线观看| 一区av在线播放| 18禁男女爽爽爽午夜网站免费| 四虎4545www精品视频| 欧美日韩卡一卡二| 精品久久久久一区二区| 国产一区二区三区日韩精品| 日韩视频永久免费观看| 国产乡下妇女做爰| 麻豆视频观看网址久久| 欧美重口另类videos人妖| 中文字幕 人妻熟女| 国产乱码精品一区二区三区忘忧草 | 免费成人进口网站| 欧美三级网站| 91精品国产91久久综合桃花| 97人妻天天摸天天爽天天| 成人vr资源| 久久久久久久久久久免费精品| 人人妻人人爽人人澡人人精品| 国产在线视频不卡二| 精品麻豆av| av色综合久久天堂av色综合在| 欧美性videos高清精品| 在线免费观看av网| 免费观看久久av| 欧美激情手机在线视频 | 天堂va蜜桃一区二区三区漫画版| 久久久久免费精品国产| 中文字幕视频二区| 91网上在线视频| 伊人再见免费在线观看高清版| 另类中文字幕国产精品| 亚洲精品在线三区| 欧美日韩一区二区区别是什么| 亚洲三级性片| 欧美激情极品视频| 91麻豆一区二区| 久久久久久97三级| 无码播放一区二区三区| 伊人久久大香线蕉av超碰| 自拍偷拍亚洲区| 日韩欧美在线观看免费| 成人av手机在线观看| 无码毛片aaa在线| 99精品国自产在线| 欧美日本一区二区三区| 最新中文字幕视频| 99这里有精品| 国产欧美日韩亚洲| 欧美人动性xxxxz0oz| 日韩三级免费观看| 成人在线观看高清| 精彩视频一区二区| 亚洲欧美国产精品桃花| 久久电影tv| 日韩电影网在线| 亚洲欧美在线视频免费| 成人免费av网站| 久草视频国产在线| www.爱久久| 欧美精品久久久久久久久久| av中文字幕免费在线观看| 国产精品不卡一区二区三区| 九色porny自拍| 久久美女精品| 成人精品视频99在线观看免费| a√在线中文网新版址在线| 欧美性大战久久久久久久| 一级片手机在线观看| 天堂va蜜桃一区二区三区漫画版| 青青草原成人| 国产成人毛片| 深夜福利91大全| 一级黄色小视频| 亚洲精品精品亚洲| jjzz黄色片| av成人天堂| 欧美日韩精品中文字幕一区二区| 奇米777日韩| 国产成人午夜性a一级毛片| 在线观看国产精品网站| 正在播放国产对白害羞| 久久激情综合网| 97超碰人人爱| 白白在线精品| 7m第一福利500精品视频| 久久精品色图| 欧美日韩精品一区二区三区四区 | 国产精品亚洲片在线播放| 国产精品久久久久久久久久久久 | 亚洲综合av网| 国产麻豆xxxvideo实拍| 日韩精品视频网站| 一区二区三区一级片| 成人午夜网址| 国产精品福利无圣光在线一区| 免费在线视频欧美| 亚洲成年人在线| 人人草在线观看| 亚洲色图在线视频| 91精品久久久久久久91蜜桃 | 中文字幕 久热精品 视频在线| 天天色天天综合网| youjizz欧美| 欧美与黑人午夜性猛交久久久| av网页在线| 欧美www视频| 精品久久久久久久久久久国产字幕| 国产精品久久久久国产精品日日| 奇米777第四色| 日日夜夜免费精品| 国产一级片91| 自拍视频一区| 成人av电影免费| 色成人免费网站| 欧美激情一区二区久久久| 国产视频第一区| 日韩欧美三级在线| 五月天婷婷色综合| 91免费看视频| 国产精品久久久久野外| 日本女优在线视频一区二区| 亚洲男人7777| 老司机午夜免费福利| 日韩国产欧美在线观看| av免费看网址| 亚洲天堂免费| 天堂资源在线亚洲资源| 小说区图片区色综合区| 成人3d动漫一区二区三区91| 欧美一区二区三区婷婷| 欧美综合国产精品久久丁香| 色在线视频网| x99av成人免费| 精品成人一区二区三区免费视频| 精品国产乱码久久久久久闺蜜 | 日韩电影免费观看高清完整| 国产精品久久久久av蜜臀| 成人午夜在线观看| 日韩制服一区| 秋霞av国产精品一区| 爱搞国产精品| 欧美激情伊人电影 | 亚洲色图20p| 亚洲色图欧美色| 久久免费午夜影院| 91精品小视频| 白白色 亚洲乱淫| 久久久久亚洲av无码麻豆| 久久精品国产成人一区二区三区 | 亚洲欧洲自拍偷拍| 午夜视频福利在线| 欧美日韩美女在线观看| 久草网视频在线观看| 亚洲欧美日韩国产成人精品影院| 一本在线免费视频| 国产精品美女久久久久高潮| 91视频免费在观看| 欧美国产激情一区二区三区蜜月| 国产成人精品无码免费看夜聊软件| 久久综合九色综合欧美亚洲| av在线网站观看| 久久蜜桃一区二区| caopeng视频| 国产欧美精品日韩区二区麻豆天美| 91久久精品美女高潮| 爱啪啪综合导航| 18久久久久久| 欧美日韩视频网站| 国产精品av免费在线观看| 日本电影在线观看网站| 色偷偷av亚洲男人的天堂| 免费在线看黄网站| 欧美日韩成人在线视频| 日本不卡免费播放| 亚洲美女动态图120秒| 极品美乳网红视频免费在线观看| 一区二区av在线| 日本中文字幕视频在线| 久久中文字幕在线视频| 久久免费电影| 欧美怡春院一区二区三区| 最新欧美电影| 91精品在线看| 白嫩白嫩国产精品| 欧美日韩国产三区| 97久久夜色精品国产| www婷婷av久久久影片| 亚洲国产日本| www.xxx亚洲| 狠狠色丁香婷婷综合| 在线播放av网址| 91免费国产视频网站| jizz18女人高潮| 一区二区三区四区国产精品| 99热国产在线观看| 91搞黄在线观看| 国产毛片毛片毛片毛片| 亚洲激情自拍图| jzzjzzjzz亚洲成熟少妇| 久久亚洲精品小早川怜子66| 国内在线免费视频| 国产激情视频一区| 日韩最新av| 成人免费网视频| 国产精品香蕉| 夜夜春亚洲嫩草影视日日摸夜夜添夜| 欧美日韩视频一区二区三区| 一区二区三区四区视频在线| 亚洲午夜视频| 美女少妇一区二区| 成人精品视频网站| 亚洲综合第一区| 午夜欧美视频在线观看 | 国产理论在线| 国产精品成人国产乱一区| 精品国产乱码久久久久久樱花| 麻豆91蜜桃| 午夜精品999| 天美星空大象mv在线观看视频| 成人黄色综合网站| 91免费公开视频| 色偷偷久久一区二区三区| 亚洲国产中文字幕在线| 日韩在线视频网| jizz内谢中国亚洲jizz| 国产成人免费观看| 99久久久久国产精品| 国产裸体舞一区二区三区| 岛国精品一区二区| 神马久久精品综合| 欧美日韩一级片网站| 人成在线免费视频| 午夜精品一区二区三区视频免费看 | 狠狠色伊人亚洲综合网站l| 久久久久免费精品国产| 欧美经典影片视频网站| 日本特级黄色大片| 免费成人av在线| 亚洲理论片在线观看| 精品久久久久久久久久久久| www.xxxx国产| 久久国产精品免费视频| 精品国产黄a∨片高清在线| 欧美最大成人综合网| 亚洲综合另类| 亚洲调教欧美在线| 五月天欧美精品| 开心激情综合网| 亚洲国产精品久久久久久| 超碰免费在线播放| 成人激情综合网| 97偷自拍亚洲综合二区| 九九热精品在线播放| 欧美国产1区2区| 丰满熟女人妻一区二区三| 原创国产精品91| 91综合国产| 伊人色综合影院| 精品写真视频在线观看| 精品无码久久久久成人漫画| 91精品中文字幕一区二区三区| 嫩草在线视频| 91亚洲一区精品| 欧美精品18| 亚洲av无码一区东京热久久| 亚洲一区二区视频在线| 后入内射欧美99二区视频| 欧美激情在线有限公司| 韩国女主播一区二区三区| 人人妻人人添人人爽欧美一区| 91在线视频在线| 伦av综合一区| 中文字幕亚洲欧美日韩2019| 电影亚洲一区| 一区二区国产日产| 国产精品白丝jk白祙喷水网站| 国产一级片视频| 欧美日韩中文一区| 美女免费久久| 99久久精品久久久久久ai换脸| 狠狠爱www人成狠狠爱综合网| 国产真实乱人偷精品| 色婷婷av一区二区三区大白胸 | 精品国产伦一区二区三区| 欧美精品久久久久久久久| 伊人久久大香线蕉| 日本不卡一区二区在线观看| 亚洲免费av网站| 污污的视频网站在线观看| 国产精品a久久久久久| 婷婷亚洲五月色综合| 精品国产一区在线| 欧美亚洲一区二区在线| 最爽无遮挡行房视频在线| 久久爱av电影| 毛片基地黄久久久久久天堂| 日本青青草视频| 亚洲欧美中文日韩v在线观看| 欧美91在线|欧美| 欧美又粗又长又爽做受| 国产日韩影视精品| 欧美自拍第一页| 国产日韩欧美视频| 亚洲三级毛片| 久久久久人妻一区精品色| 亚洲国产美女久久久久| 伦一区二区三区中文字幕v亚洲| 久青草视频在线播放| 国产人成亚洲第一网站在线播放 | 亚洲午夜色婷婷在线| 欧一区二区三区| 亚洲色图久久久| 欧美日韩精品在线视频| 超碰在线网址| 天堂√在线观看一区二区|