• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Unity3D的聊天室應(yīng)用程序開發(fā)

    2019-07-16 03:14:59郭驍陸海燕陶星州王浩
    電腦知識(shí)與技術(shù) 2019年15期
    關(guān)鍵詞:聊天室服務(wù)端客戶端

    郭驍 陸海燕 陶星州 王浩

    摘要:針對(duì)典型聊天室開發(fā)中所涉及的服務(wù)端與客戶端程序設(shè)計(jì)、數(shù)據(jù)同步、客戶端UI設(shè)計(jì)、群組管理、掃碼進(jìn)群方面的基本技術(shù)做了較為詳盡的介紹,詳細(xì)地分析了各個(gè)功能模塊的實(shí)現(xiàn)方法,提出了一系列在Unity3D開發(fā)客戶端程序的設(shè)計(jì)思路,為在Unity3D平臺(tái)實(shí)現(xiàn)網(wǎng)絡(luò)聊天功能提供了較為完整的解決方案,并以實(shí)例證明了該方案的可行性。

    關(guān)鍵詞:Unity3D;聊天室;服務(wù)端;客戶端;掃碼進(jìn)群;群組管理

    中圖分類號(hào):TP311 ? ?文獻(xiàn)標(biāo)識(shí)碼:A

    文章編號(hào):1009-3044(2019)15-0073-03

    Abstract: This paper introduces in detail the basic technologies of client and server programming, data synchronization, client UI design, group management, scanning and grouping involved in the development of typical chat rooms, analyses in detail the implementation methods of each functional module, and puts forward a series of design ideas for developing client program in Unity3D, in order to realize network chat on Unity3D platform. The sky function provides a more complete solution, and the feasibility of the solution is proved by an example.

    Key words: U3D; chat room; server; client; sweep code into group; group management

    1 背景

    隨著網(wǎng)絡(luò)通信技術(shù)的迅猛發(fā)展,特別是微信、QQ和釘釘?shù)壬缃卉浖膽?yīng)用普及,采用聊天室方式的信息溝通成為生活與工作中的重要需求。在各種實(shí)際工作場(chǎng)景中,聊天室這一用于實(shí)現(xiàn)消息通知、文件及音視頻傳輸?shù)膽?yīng)用,已經(jīng)成為一種基本功能。通常一個(gè)具體的網(wǎng)絡(luò)應(yīng)用程序都擁有屬于自己的用戶群體,而聊天室正是用戶群體間信息交流中不可或缺的一部分。

    Unity3D作為一款游戲引擎,正在越來越多地被應(yīng)用于游戲之外的各種領(lǐng)域如建筑、汽車、醫(yī)學(xué)、教育等傳統(tǒng)行業(yè);同時(shí)Unity3D也是VR技術(shù)發(fā)展中一股重要的力量,可以預(yù)見在不遠(yuǎn)的將來,會(huì)出現(xiàn)各種具有聊天室功能并以Unity3D為平臺(tái)的網(wǎng)絡(luò)應(yīng)用程序。本文采用面向客戶/服務(wù)器模型(Client/Server,C/S)設(shè)計(jì)的Socket技術(shù)[1],基于Unity3D平臺(tái),探索典型聊天室開發(fā)的解決方案。本文開發(fā)環(huán)境采用Windows10操作平臺(tái),MySQL5.6Server數(shù)據(jù)庫(kù)和Unity2018.3.10f1 (64-bit)個(gè)人版。

    2 總體方案設(shè)計(jì)

    2.1 需求分析

    在本項(xiàng)目中,將基于Unity平臺(tái)實(shí)現(xiàn)網(wǎng)絡(luò)聊天室的基本功能,包括登錄、群聊、群組管理、掃碼進(jìn)群等。

    2.2 基本設(shè)計(jì)概念和處理流程

    服務(wù)器首先將Socket初始化,綁定指定的端口,進(jìn)行端口監(jiān)聽,調(diào)用BeginAccept方法實(shí)現(xiàn)異步接收,等待客戶端連接,同時(shí)服務(wù)器連接到MySQL數(shù)據(jù)庫(kù),讀取數(shù)據(jù)庫(kù)中信息,載入歷史配置。當(dāng)有客戶端發(fā)出連接請(qǐng)求時(shí),服務(wù)器將實(shí)例化一個(gè)Conn對(duì)象至連接池,并初始化Conn對(duì)象的Socket,如果連接成功,便可以在客戶端與服務(wù)端之間傳輸數(shù)據(jù)。服務(wù)端接收客戶端發(fā)送的數(shù)據(jù)請(qǐng)求并處理,處理結(jié)束后將處理結(jié)果發(fā)送給指定客戶端,該客戶端接收到服務(wù)端發(fā)來的數(shù)據(jù),并利用該數(shù)據(jù)執(zhí)行各種業(yè)務(wù)邏輯。當(dāng)結(jié)束數(shù)據(jù)傳輸之后則關(guān)閉連接,客戶端與服務(wù)端不再進(jìn)行交互。

    該聊天室采用面向連接的傳輸控制協(xié)議,即TCP(Transmission Control Protocol),在傳輸數(shù)據(jù)之前必須先建立連接[2],完成數(shù)據(jù)輸出之后應(yīng)釋放連接。服務(wù)器采用異步接收,可以并發(fā)處理多個(gè)用戶的連接請(qǐng)求,需要注意的是,每一次開辟新的線程來處理連接時(shí),都需要向系統(tǒng)申請(qǐng)內(nèi)存,隨著連接數(shù)的增加,系統(tǒng)內(nèi)存損耗也會(huì)迅速上升,因此當(dāng)客戶端不再傳輸數(shù)據(jù)時(shí)要及時(shí)銷毀線程,釋放內(nèi)存。

    3 服務(wù)端設(shè)計(jì)

    在服務(wù)端程序中首先需要綁定一個(gè)固定端口并監(jiān)聽來自客戶端的連接,同時(shí)連接到數(shù)據(jù)庫(kù)并同步歷史數(shù)據(jù)(如群組信息、資源文件路徑等),初始化連接池,等待接收來自客戶端的連接。

    在客戶端發(fā)出連接請(qǐng)求時(shí),服務(wù)端與該客戶端建立Socket連接,若連接成功,將在連接池中實(shí)例化Conn對(duì)象,同時(shí)開辟一個(gè)新的線程來處理服務(wù)端與該客戶端的連接。使用多線程的策略是因?yàn)榉?wù)端需要同時(shí)處理多個(gè)客戶端的連接[3-4],在實(shí)際應(yīng)用場(chǎng)景中,在同一時(shí)刻往往會(huì)有大量客戶端訪問同一服務(wù)端,使用單線程逐個(gè)響應(yīng)顯然在效率上是無法接受的。

    在成功建立連接后,服務(wù)端將處理來自客戶端的各種請(qǐng)求,并在處理完成將結(jié)果回傳給客戶端,如果這些請(qǐng)求中包含了數(shù)據(jù)庫(kù)相關(guān)的操作,服務(wù)端將訪問啟動(dòng)時(shí)連接的數(shù)據(jù)庫(kù),對(duì)數(shù)據(jù)庫(kù)進(jìn)行增、刪、改、查等操作。

    3.1 綁定端口

    實(shí)例化ServNet對(duì)象,并調(diào)用Start函數(shù),在該函數(shù)中,將調(diào)用Bind方法綁定端口與具體的IP地址,在本地測(cè)試時(shí)將使用本機(jī)地址127.0.0.1,若需要在公網(wǎng)狀態(tài)下測(cè)試,需要重新配置Socket。在服務(wù)端程序中提供了手動(dòng)配置的接口,測(cè)試人員可以通過命令行對(duì)正在運(yùn)行的服務(wù)端程序進(jìn)行重啟程序、重置端口等操作,便于在不同環(huán)境下的調(diào)試。

    3.2 建立連接

    在成功啟動(dòng)服務(wù)器后,程序?qū)⒆詣?dòng)調(diào)用BeginAccept方法,與發(fā)出連接請(qǐng)求的客戶端建立連接[5],如果出現(xiàn)連接失敗的情況,程序?qū)伋霎惓#⒃谶B接池中銷毀錯(cuò)誤的Conn對(duì)象。在BeginAccept方法中需要傳入一個(gè)回調(diào)函數(shù),在該回調(diào)函數(shù)中將繼續(xù)調(diào)用BeginAccept方法,實(shí)現(xiàn)服務(wù)端不斷接收客戶端的連接請(qǐng)求,同時(shí)調(diào)用BeginReceive方法,不斷接收客戶端發(fā)送的信息。

    3.3 響應(yīng)處理

    針對(duì)客戶端的各種數(shù)據(jù)請(qǐng)求,服務(wù)端將采取不同的處理策略,對(duì)于聊天內(nèi)容,服務(wù)端首先將發(fā)送者ID、內(nèi)容、所屬群組、發(fā)送時(shí)間等信息整合后存入數(shù)據(jù)庫(kù)作為聊天記錄,然后遍歷該消息所屬群組的成員,將消息廣播至所有群組成員所屬的客戶端。對(duì)于命令類的數(shù)據(jù)請(qǐng)求,如登錄賬號(hào)、創(chuàng)建群組、管理群組等,服務(wù)端首先判斷該命令是否有效,確認(rèn)為合法命令后解析命令字段,獲取命令的具體類型,然后在ProcessData方法中使用分支結(jié)構(gòu),對(duì)不同命令進(jìn)行相應(yīng)的處理,然后將處理結(jié)果發(fā)回該客戶端,供客戶端執(zhí)行后續(xù)的操作。

    4 聊天室典型功能的實(shí)現(xiàn)

    聊天室典型功能有登錄賬號(hào)、建立群組、群聊及群?jiǎn)T管理等,下面介紹具體實(shí)現(xiàn)。

    1)登錄功能的實(shí)現(xiàn)

    系統(tǒng)將所有用戶的信息組織為一張表userdata,該表存放在與服務(wù)端相連的數(shù)據(jù)庫(kù)msgboard中。用戶輸入賬號(hào)與密碼后單擊Login按鈕,客戶端向服務(wù)器發(fā)出登錄請(qǐng)求,在收到登錄請(qǐng)求后,服務(wù)端將根據(jù)客戶端提供的賬號(hào)信息與數(shù)據(jù)庫(kù)中的信息進(jìn)行驗(yàn)證,并回傳驗(yàn)證結(jié)果。驗(yàn)證成功后,服務(wù)器會(huì)為發(fā)出請(qǐng)求的Conn對(duì)象初始化User信息(包括用戶名、權(quán)限等級(jí)等),將該用戶設(shè)置為在線狀態(tài),從而實(shí)現(xiàn)用戶的登錄。

    2)群聊功能的實(shí)現(xiàn)

    群聊功能可以拆分為創(chuàng)建群組、發(fā)送信息、接收信息、消息提示幾個(gè)部分,下面將分別論述各部分功能的具體實(shí)現(xiàn)方法。

    創(chuàng)建群組的實(shí)現(xiàn)。用戶在主界面中可以找到創(chuàng)建群組選項(xiàng),輸入群組信息后單擊確認(rèn)按鈕,客戶端將向服務(wù)端發(fā)出創(chuàng)建群組請(qǐng)求,服務(wù)端根據(jù)服務(wù)端發(fā)送的初始數(shù)據(jù)(群名、人數(shù)等)在數(shù)據(jù)庫(kù)msgboard中的表grouptable中添加記錄,同時(shí)生成一張與群組名對(duì)應(yīng)的表,用于存放群聊記錄,從而完成新群組在數(shù)據(jù)庫(kù)的注冊(cè)。

    發(fā)送信息的實(shí)現(xiàn)??蛻舳送ㄟ^交互界面獲取用戶將要發(fā)送的字符串消息,將字符串使用Base64碼制編碼后,利用Socket提供的異步發(fā)送方法BeginSend將字節(jié)流發(fā)送至服務(wù)器,這一過程將在客戶端開辟新的線程,從而避免系統(tǒng)阻塞。由于存在編碼后報(bào)文長(zhǎng)度較長(zhǎng)的情況,因此本項(xiàng)目中統(tǒng)一使用了分包的策略,當(dāng)發(fā)送信息時(shí),系統(tǒng)首先根據(jù)信息的長(zhǎng)度將數(shù)據(jù)分為若干個(gè)數(shù)據(jù)包,并在包頭寫入包體長(zhǎng)度等驗(yàn)證信息,然后再發(fā)送給服務(wù)器。當(dāng)服務(wù)器接收到所有的數(shù)據(jù)包后,將會(huì)根據(jù)包頭中附帶的長(zhǎng)度信息檢驗(yàn)包體的完整性,然后再發(fā)送給群組中的其他用戶。

    接收信息的實(shí)現(xiàn)。由于客戶端與服務(wù)器均使用了分包發(fā)送策略,因此在客戶端實(shí)際接收到的數(shù)據(jù)也是多個(gè)數(shù)據(jù)包,這里同樣根據(jù)包頭附帶信息校驗(yàn)完整性,并進(jìn)行粘包操作,整合報(bào)文,然后對(duì)整合后的Base64編碼進(jìn)行解碼操作得到常用的UTF-8編碼,最后在交互界面進(jìn)行相應(yīng)的顯示。

    消息提示的實(shí)現(xiàn)。無論用戶是否正處在群聊界面,每當(dāng)客戶端收到消息都會(huì)把消息實(shí)例化為MessageCache對(duì)象(MessageCache為本項(xiàng)目中用于描述消息屬性的類)并存儲(chǔ)在MessageCacheList中。如果用戶不在群聊界面,將提示用戶收到新消息(僅顯示數(shù)目),而當(dāng)用戶正在群聊時(shí),則會(huì)遍歷MessageCacheList,根據(jù)列表中每一個(gè)MessageCache對(duì)象中的數(shù)據(jù)逐條顯示消息內(nèi)容。

    3)掃碼進(jìn)群聊功能的實(shí)現(xiàn):

    掃碼進(jìn)群功能分為兩個(gè)基本步驟,即生成群組二維碼與解析群組二維碼。

    群組二維碼的生成。本項(xiàng)目中使用了草料二維碼的開源庫(kù)ZXing.DLL,通過交互界面讀取用于生成二維碼的群組信息,然后調(diào)用ZXing自帶的Encode接口,即可得到相應(yīng)的Texture2D對(duì)象,再將該Texture2D對(duì)象賦值給Unity原生的RawImage組件即可實(shí)現(xiàn)在屏幕上顯示二維碼。用戶也可以選擇單擊二維碼生成界面的Save按鈕將二維碼圖片保存至本地。

    掃描二維碼。首先利用ZXing在BarcodeReader類中提供的讀取攝像頭內(nèi)容的方法,將拍攝到的畫面實(shí)例化為RawImage對(duì)象,并在Update方法中根據(jù)攝像頭獲取的畫面持續(xù)更新RawImage對(duì)象,從而實(shí)現(xiàn)對(duì)畫面的實(shí)時(shí)捕捉。同時(shí)在Update方法中監(jiān)聽BarcodeReader類提供的Decode方法,當(dāng)該方法將攝像頭獲取到的畫面識(shí)別為有效二維碼時(shí),二維碼解析成功,從屏幕捕捉到的二維碼將被轉(zhuǎn)換為普通的UTF-8字符串,客戶端解析字符串中所包含的群組信息后,向服務(wù)器發(fā)送加入群組請(qǐng)求,服務(wù)器收到請(qǐng)求后,將用戶信息插入群組對(duì)應(yīng)的表中,完成用戶信息在數(shù)據(jù)庫(kù)的同步,從而實(shí)現(xiàn)掃碼進(jìn)群。

    5 客戶端設(shè)計(jì)

    客戶端程序首先通過套接字連接到服務(wù)器IP地址(在本地測(cè)試中為本機(jī)IP地址,即127.0.0.1),默認(rèn)端口3000??蛻舳伺c服務(wù)端建立連接后,客戶端通過圖形交互界面獲取用戶輸入流,并向服務(wù)端發(fā)送信息,同時(shí)監(jiān)聽服務(wù)器端口[6],以接收來自服務(wù)器的信息??蛻舳说木唧w工作流程如下:在使用客戶端提供的各項(xiàng)功能之前,需要用戶輸入要進(jìn)行連接的服務(wù)端IP與端口,當(dāng)用戶單擊確認(rèn)按鈕后,程序調(diào)用Connect方法與服務(wù)端建立連接,服務(wù)端才可以接收并處理客戶端發(fā)出的各項(xiàng)請(qǐng)求。

    本項(xiàng)目中使用了Unity作為客戶端可視化圖形界面開發(fā)工具,與傳統(tǒng)的GUI開發(fā)工具(如MFC、QT等)不同,Unity作為一個(gè)游戲引擎,展示給用戶的是場(chǎng)景(Scene)而不是對(duì)話框(Dialog),因此在實(shí)際工程中,不同功能所對(duì)應(yīng)的UI將被分別放在不同的場(chǎng)景中實(shí)現(xiàn)。

    1)登錄界面。在Title4Android場(chǎng)景中,為用戶提供了四個(gè)Inputfile組件用于輸入服務(wù)器IP、Port以及用戶的賬號(hào)、密碼,并在登錄按鈕中綁定了Connect與Login方法,用于實(shí)現(xiàn)連接服務(wù)器、登錄賬號(hào)功能。

    2)主界面。在MainUI4Android場(chǎng)景中,展示了用戶的個(gè)人信息以及當(dāng)前加入的群組,其中群組信息通過一組GroupInfo預(yù)制體與其父物體上的GridGroup組件共同組成,每當(dāng)用戶進(jìn)入MainUIOnPC場(chǎng)景或單擊InitGroup按鈕來手動(dòng)刷新群組信息時(shí),客戶端都會(huì)向服務(wù)器發(fā)出查詢請(qǐng)求,通過服務(wù)器返回的查詢結(jié)果將各個(gè)群組的信息分別實(shí)例化為GroupInfo對(duì)象,并掛載在父物體Groups上,從而實(shí)現(xiàn)群組信息的列表化展示。

    3)群聊界面。在ChatOnPC場(chǎng)景中,展示了用戶當(dāng)前訪問的群組信息以及群組中各個(gè)成員發(fā)送的群聊消息。消息的列表化展示與群組信息類似,同樣使用了Prefab+GridGroup(即預(yù)制體+網(wǎng)格組)的策略[7],即先設(shè)計(jì)承載一條消息內(nèi)容(包括發(fā)送者ID、消息內(nèi)容)的預(yù)制體,然后將多個(gè)預(yù)制體實(shí)例化后依次掛載在GridGroup組件下。每當(dāng)收到群?jiǎn)T消息時(shí),客戶端程序都會(huì)將收到報(bào)文解析為發(fā)送者信息與內(nèi)容字段,并以此為參數(shù)實(shí)例化預(yù)制體對(duì)象,然后掛載到父物體,從而實(shí)現(xiàn)消息的動(dòng)態(tài)顯示。

    6 結(jié)束語

    本項(xiàng)目結(jié)合Socket網(wǎng)絡(luò)通訊、MySQL數(shù)據(jù)庫(kù)技術(shù),實(shí)現(xiàn)了數(shù)據(jù)信息在網(wǎng)絡(luò)中的傳輸,并基于Unity平臺(tái)實(shí)現(xiàn)了網(wǎng)絡(luò)聊天室的基本功能。程序中的各功能模塊之間較好地實(shí)現(xiàn)了松散耦合,因此本項(xiàng)目很容易單獨(dú)作為一個(gè)功能嵌入到其他Unity工程中。

    (下轉(zhuǎn)第82頁(yè))

    (上接第75頁(yè))

    但由于服務(wù)器使用了多線程技術(shù),系統(tǒng)會(huì)為每一個(gè)連接開辟新的線程[8],內(nèi)存開銷較大,因此服務(wù)器的負(fù)載能力有限,同時(shí)由于程序本身機(jī)制所限,在同時(shí)處理大量連接以及傳輸數(shù)據(jù)包體過大時(shí),系統(tǒng)的運(yùn)行速度會(huì)明顯降低,還需要對(duì)系統(tǒng)性能做進(jìn)一步的優(yōu)化。

    參考文獻(xiàn):

    [1] 陳潔, 孟曉景. 基于Socket接口的Linux與Windows網(wǎng)絡(luò)聊天室設(shè)計(jì)與實(shí)現(xiàn)[J]. 軟件導(dǎo)刊, 2015(6).

    [2] 葛福鴻, 張麗萍. 基于Socket技術(shù)的聊天軟件設(shè)計(jì)與實(shí)現(xiàn)[J]. 電腦編程技巧與維護(hù), 2012(5).

    [3] 楊心強(qiáng), 陳國(guó)有. 數(shù)據(jù)通信與計(jì)算機(jī)網(wǎng)絡(luò)[M]. 北京: 電子工業(yè)出版社, 2018(6).

    [4] 常穎. 基于ASP網(wǎng)絡(luò)聊天室設(shè)計(jì)與實(shí)現(xiàn)[J]. 電子技術(shù)與軟件工程, 2017(3).

    [5] 羅培羽. Unity3D網(wǎng)絡(luò)游戲?qū)崙?zhàn)[M]. 北京: 機(jī)械工業(yè)出版社, 2015.

    [6] 宋傳磊, 劉俊婷, 張光亮, 等. Unity3D項(xiàng)目腳本優(yōu)化分析與研究[J]. 中國(guó)新通信, 2017(1).

    [7] 宣雨松. Unity 3D游戲開發(fā)[M]. 北京: 人民郵電出版, 2012.

    [8] 鄧亞君, 楊剛. 基于Python的網(wǎng)絡(luò)聊天室設(shè)計(jì)[J]. 電子技術(shù)與軟件工程, 2019(3).

    【通聯(lián)編輯:謝媛媛】

    猜你喜歡
    聊天室服務(wù)端客戶端
    多多熊聊天室
    新少年(2023年10期)2023-10-24 07:47:12
    云存儲(chǔ)中基于相似性的客戶-服務(wù)端雙端數(shù)據(jù)去重方法
    縣級(jí)臺(tái)在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶端
    孵化垂直頻道:新聞客戶端新策略
    基于Vanconnect的智能家居瘦客戶端的設(shè)計(jì)與實(shí)現(xiàn)
    新時(shí)期《移動(dòng)Web服務(wù)端開發(fā)》課程教學(xué)改革的研究
    在Windows Server 2008上創(chuàng)建應(yīng)用
    歌劇聊天室 洗洗曬曬,又是新一天
    歌劇(2017年4期)2017-05-17 04:07:29
    歌劇聊天室 永遠(yuǎn)盛放的雪絨花
    歌劇(2017年3期)2017-05-17 04:06:47
    客戶端空間數(shù)據(jù)緩存策略
    国产精品女同一区二区软件| 免费不卡的大黄色大毛片视频在线观看 | 大香蕉97超碰在线| 水蜜桃什么品种好| 国产淫片久久久久久久久| 超碰97精品在线观看| 精品久久久久久久人妻蜜臀av| 国产精品一区二区在线观看99 | 最新中文字幕久久久久| 亚洲欧美日韩卡通动漫| 国产乱来视频区| 大又大粗又爽又黄少妇毛片口| 小说图片视频综合网站| 日韩大片免费观看网站 | 国产免费视频播放在线视频 | 免费黄网站久久成人精品| 成人无遮挡网站| 一个人观看的视频www高清免费观看| 一个人免费在线观看电影| 综合色丁香网| 91久久精品国产一区二区三区| 国产精品国产三级专区第一集| 亚洲精品乱码久久久久久按摩| 国产免费男女视频| 超碰97精品在线观看| av国产久精品久网站免费入址| 日韩成人伦理影院| 男女视频在线观看网站免费| 国产精品美女特级片免费视频播放器| 免费一级毛片在线播放高清视频| 人妻夜夜爽99麻豆av| 国产成人91sexporn| 青春草亚洲视频在线观看| 久99久视频精品免费| 国产亚洲av片在线观看秒播厂 | 精品国内亚洲2022精品成人| 国产极品精品免费视频能看的| www.色视频.com| 两个人视频免费观看高清| 成年免费大片在线观看| 欧美日韩国产亚洲二区| av国产免费在线观看| 深爱激情五月婷婷| 久久久国产成人精品二区| 亚洲人成网站在线观看播放| 国产精品国产三级专区第一集| 丰满乱子伦码专区| 三级国产精品片| 小蜜桃在线观看免费完整版高清| 深夜a级毛片| 18禁在线播放成人免费| 久热久热在线精品观看| 黄色一级大片看看| 热99在线观看视频| 91久久精品国产一区二区成人| 久热久热在线精品观看| 欧美最新免费一区二区三区| 日本wwww免费看| 国产免费视频播放在线视频 | h日本视频在线播放| 亚洲高清免费不卡视频| 午夜福利成人在线免费观看| 久久精品国产亚洲av涩爱| 日韩av在线免费看完整版不卡| 国产精品三级大全| 能在线免费观看的黄片| 日韩在线高清观看一区二区三区| 国产乱人视频| 少妇裸体淫交视频免费看高清| 日韩一区二区三区影片| 国产伦在线观看视频一区| 久久久久久九九精品二区国产| 亚洲乱码一区二区免费版| 亚洲乱码一区二区免费版| 少妇的逼水好多| 你懂的网址亚洲精品在线观看 | 亚洲国产最新在线播放| 一级毛片久久久久久久久女| av在线天堂中文字幕| 一区二区三区免费毛片| 中文字幕制服av| 日韩成人伦理影院| av在线蜜桃| 国产不卡一卡二| 乱人视频在线观看| 亚洲国产色片| 国产精品久久电影中文字幕| 国产成人a区在线观看| 人人妻人人看人人澡| 欧美人与善性xxx| 日本黄色视频三级网站网址| 日韩av不卡免费在线播放| 午夜福利在线在线| 亚洲国产高清在线一区二区三| 精品熟女少妇av免费看| 亚洲国产精品合色在线| 久久久a久久爽久久v久久| 中文字幕制服av| 亚洲欧美一区二区三区国产| 久久久久久久国产电影| 99久国产av精品| 亚洲欧美精品综合久久99| 乱系列少妇在线播放| 中文字幕亚洲精品专区| 看十八女毛片水多多多| 亚洲av福利一区| 国产成人aa在线观看| 91精品一卡2卡3卡4卡| 日本色播在线视频| 一区二区三区乱码不卡18| 国产 一区 欧美 日韩| 日本-黄色视频高清免费观看| 日韩三级伦理在线观看| 99热6这里只有精品| 欧美日韩国产亚洲二区| 美女黄网站色视频| 欧美xxxx性猛交bbbb| 伦精品一区二区三区| 免费观看a级毛片全部| 亚洲av熟女| 久久热精品热| 国产精品三级大全| 韩国高清视频一区二区三区| 国产精品乱码一区二三区的特点| 日韩大片免费观看网站 | 欧美成人免费av一区二区三区| 中文精品一卡2卡3卡4更新| 一本—道久久a久久精品蜜桃钙片 精品乱码久久久久久99久播 | 丰满乱子伦码专区| 亚洲婷婷狠狠爱综合网| 六月丁香七月| 建设人人有责人人尽责人人享有的 | 亚洲精品乱码久久久久久按摩| av国产免费在线观看| 国产免费一级a男人的天堂| 在线天堂最新版资源| 亚洲综合精品二区| 18禁在线播放成人免费| 亚洲精品成人久久久久久| 久久久久久久久大av| 国产精华一区二区三区| 欧美高清成人免费视频www| 亚洲自拍偷在线| 日韩av在线大香蕉| 老女人水多毛片| 国产乱人视频| 日日摸夜夜添夜夜爱| av黄色大香蕉| 又粗又爽又猛毛片免费看| 精品免费久久久久久久清纯| 国产成人精品一,二区| 天天躁夜夜躁狠狠久久av| 成人漫画全彩无遮挡| 女的被弄到高潮叫床怎么办| 国内精品美女久久久久久| 97在线视频观看| 亚洲一区高清亚洲精品| 国产精品一区二区性色av| 久久久精品94久久精品| 精品久久久久久成人av| 国产成人精品久久久久久| 亚洲成人中文字幕在线播放| 午夜福利在线观看吧| 亚洲丝袜综合中文字幕| 欧美日韩精品成人综合77777| 久久韩国三级中文字幕| 国产欧美日韩精品一区二区| 26uuu在线亚洲综合色| 久久久久九九精品影院| 亚洲性久久影院| 精品一区二区免费观看| 少妇熟女欧美另类| 最近中文字幕2019免费版| 亚洲熟妇中文字幕五十中出| 如何舔出高潮| 免费av不卡在线播放| 久久精品影院6| 人妻系列 视频| 波野结衣二区三区在线| 噜噜噜噜噜久久久久久91| 18禁动态无遮挡网站| 精品国产露脸久久av麻豆 | 国产黄色小视频在线观看| 久久久久久久久久久丰满| 欧美一区二区精品小视频在线| 久久综合国产亚洲精品| 99久久成人亚洲精品观看| 久久久亚洲精品成人影院| 最近中文字幕高清免费大全6| 十八禁国产超污无遮挡网站| 亚洲欧美日韩无卡精品| 国产精品熟女久久久久浪| 免费av观看视频| 男女下面进入的视频免费午夜| 中文乱码字字幕精品一区二区三区 | 国产伦一二天堂av在线观看| 在线免费观看的www视频| 麻豆精品久久久久久蜜桃| 在线观看66精品国产| 日本猛色少妇xxxxx猛交久久| 特大巨黑吊av在线直播| 国产精品综合久久久久久久免费| 嫩草影院入口| 日韩成人伦理影院| 九色成人免费人妻av| 欧美成人免费av一区二区三区| 日本黄大片高清| 一级毛片久久久久久久久女| 成人美女网站在线观看视频| 九九久久精品国产亚洲av麻豆| 在线免费十八禁| 久久精品国产亚洲av涩爱| 精品午夜福利在线看| 三级国产精品片| 插逼视频在线观看| 激情 狠狠 欧美| 亚洲美女搞黄在线观看| 日韩欧美精品v在线| 亚洲va在线va天堂va国产| 欧美高清成人免费视频www| 菩萨蛮人人尽说江南好唐韦庄 | 国产av码专区亚洲av| 国产亚洲最大av| 精品99又大又爽又粗少妇毛片| 欧美一区二区精品小视频在线| 日韩av在线大香蕉| 国产伦在线观看视频一区| 一本—道久久a久久精品蜜桃钙片 精品乱码久久久久久99久播 | 超碰av人人做人人爽久久| 老师上课跳d突然被开到最大视频| 人人妻人人澡欧美一区二区| 国产淫片久久久久久久久| 精品酒店卫生间| 色综合站精品国产| 国产高清三级在线| 九九久久精品国产亚洲av麻豆| 麻豆乱淫一区二区| 两个人的视频大全免费| 精品久久久久久久末码| 午夜视频国产福利| 婷婷色麻豆天堂久久 | 男的添女的下面高潮视频| 欧美成人a在线观看| 18+在线观看网站| 一本—道久久a久久精品蜜桃钙片 精品乱码久久久久久99久播 | 午夜亚洲福利在线播放| 久久久欧美国产精品| 99久久中文字幕三级久久日本| 免费看av在线观看网站| 亚洲精品aⅴ在线观看| 欧美激情在线99| av专区在线播放| 在线观看一区二区三区| 亚洲国产最新在线播放| 18禁动态无遮挡网站| 亚洲欧美日韩东京热| 国产亚洲5aaaaa淫片| 国产精品国产三级国产av玫瑰| 免费观看人在逋| 色综合色国产| 精品国产一区二区三区久久久樱花 | 99热这里只有是精品50| 精品少妇黑人巨大在线播放 | 欧美激情在线99| 久99久视频精品免费| 国产精华一区二区三区| 国产大屁股一区二区在线视频| 精品酒店卫生间| 午夜福利在线观看免费完整高清在| 欧美日韩一区二区视频在线观看视频在线 | 国产成年人精品一区二区| 在线观看av片永久免费下载| 国产成人福利小说| 建设人人有责人人尽责人人享有的 | 日日摸夜夜添夜夜爱| 亚洲久久久久久中文字幕| 成人毛片a级毛片在线播放| 青青草视频在线视频观看| 国产精品久久久久久久久免| 白带黄色成豆腐渣| 亚洲内射少妇av| 成年免费大片在线观看| 亚洲成人av在线免费| 国产男人的电影天堂91| 一级黄片播放器| 亚洲精品色激情综合| 国产精品熟女久久久久浪| 国产亚洲精品av在线| 精品久久久久久电影网 | 午夜福利网站1000一区二区三区| 嫩草影院新地址| 级片在线观看| 国产三级中文精品| 99久久无色码亚洲精品果冻| 大又大粗又爽又黄少妇毛片口| 人体艺术视频欧美日本| 久久亚洲精品不卡| 久久久久九九精品影院| 国产精品野战在线观看| 只有这里有精品99| 国产精品精品国产色婷婷| 特大巨黑吊av在线直播| 夜夜看夜夜爽夜夜摸| 我要看日韩黄色一级片| 天堂影院成人在线观看| 国产成人精品久久久久久| 欧美性猛交黑人性爽| 欧美高清性xxxxhd video| 亚洲精品乱码久久久久久按摩| 亚洲精品影视一区二区三区av| 青春草视频在线免费观看| 26uuu在线亚洲综合色| 三级毛片av免费| 国产精品久久久久久久电影| 日韩成人av中文字幕在线观看| 九九爱精品视频在线观看| 日本-黄色视频高清免费观看| 乱人视频在线观看| 国产色爽女视频免费观看| 久久99精品国语久久久| 午夜福利视频1000在线观看| 久久久欧美国产精品| 久久精品久久久久久噜噜老黄 | 天堂中文最新版在线下载 | 蜜桃久久精品国产亚洲av| 1000部很黄的大片| 超碰av人人做人人爽久久| 啦啦啦韩国在线观看视频| 少妇被粗大猛烈的视频| 能在线免费观看的黄片| 黄色日韩在线| 我要看日韩黄色一级片| 国产av一区在线观看免费| 久久热精品热| 中文精品一卡2卡3卡4更新| 国产淫片久久久久久久久| 中文资源天堂在线| 亚洲精品亚洲一区二区| 99九九线精品视频在线观看视频| 女的被弄到高潮叫床怎么办| 久久热精品热| 嫩草影院新地址| 国产亚洲av片在线观看秒播厂 | 国产伦在线观看视频一区| 美女大奶头视频| 亚洲欧美清纯卡通| 久久久精品大字幕| 国产极品天堂在线| av在线播放精品| 国产又黄又爽又无遮挡在线| 在线观看av片永久免费下载| 综合色丁香网| 中文字幕亚洲精品专区| 久久鲁丝午夜福利片| 亚洲一级一片aⅴ在线观看| 亚洲av免费高清在线观看| 国产免费又黄又爽又色| 男的添女的下面高潮视频| 在线观看美女被高潮喷水网站| 日本三级黄在线观看| 欧美日韩综合久久久久久| 国产国拍精品亚洲av在线观看| 麻豆乱淫一区二区| 波野结衣二区三区在线| 久久久精品94久久精品| 蜜桃久久精品国产亚洲av| 成人毛片a级毛片在线播放| 日本免费a在线| 午夜福利成人在线免费观看| 国产精品久久久久久久电影| 亚洲18禁久久av| 美女高潮的动态| 午夜福利在线观看免费完整高清在| 嫩草影院新地址| kizo精华| 精品久久久久久久久av| 午夜久久久久精精品| 国产免费福利视频在线观看| 狂野欧美激情性xxxx在线观看| 精品人妻熟女av久视频| 亚洲国产日韩欧美精品在线观看| 亚洲精品乱码久久久久久按摩| 亚洲综合精品二区| 久久久久久久久久成人| 久久婷婷人人爽人人干人人爱| 一个人免费在线观看电影| 亚洲国产精品国产精品| 哪个播放器可以免费观看大片| 99热6这里只有精品| 日本熟妇午夜| 久久99热这里只有精品18| 51国产日韩欧美| 日日摸夜夜添夜夜添av毛片| 国产 一区精品| 国产精华一区二区三区| 岛国毛片在线播放| 我要看日韩黄色一级片| 亚洲久久久久久中文字幕| 久久99精品国语久久久| 99在线视频只有这里精品首页| 黄色日韩在线| 狠狠狠狠99中文字幕| 国产精品不卡视频一区二区| 亚洲欧美日韩无卡精品| 中文乱码字字幕精品一区二区三区 | 毛片女人毛片| 亚洲成人av在线免费| 狠狠狠狠99中文字幕| kizo精华| av又黄又爽大尺度在线免费看 | 黄色配什么色好看| 日本猛色少妇xxxxx猛交久久| 欧美成人午夜免费资源| 美女大奶头视频| 美女高潮的动态| 2022亚洲国产成人精品| 久久久久网色| 老司机影院毛片| 五月玫瑰六月丁香| 国产69精品久久久久777片| 亚洲电影在线观看av| 久久6这里有精品| 麻豆一二三区av精品| 久久久久久伊人网av| 国产片特级美女逼逼视频| 久久久久久久久中文| 国产三级在线视频| 国产精品无大码| 伊人久久精品亚洲午夜| 99久久中文字幕三级久久日本| 亚洲图色成人| 国产三级在线视频| 少妇熟女欧美另类| 亚洲精品aⅴ在线观看| 亚洲精品国产av成人精品| 亚洲国产精品合色在线| 国产精品女同一区二区软件| 欧美日韩国产亚洲二区| 亚洲熟妇中文字幕五十中出| 18禁动态无遮挡网站| 亚洲精品日韩av片在线观看| 麻豆乱淫一区二区| 亚洲激情五月婷婷啪啪| 精品人妻熟女av久视频| 人妻夜夜爽99麻豆av| 亚洲精品国产av成人精品| 少妇高潮的动态图| 久久6这里有精品| 国产成人一区二区在线| 国国产精品蜜臀av免费| 99久久人妻综合| 午夜福利在线在线| 亚洲欧美中文字幕日韩二区| 亚洲第一区二区三区不卡| 一个人观看的视频www高清免费观看| 国产伦在线观看视频一区| 欧美一区二区国产精品久久精品| 老师上课跳d突然被开到最大视频| 波多野结衣高清无吗| 午夜福利在线观看吧| 天天一区二区日本电影三级| 久久久久久大精品| 欧美一级a爱片免费观看看| 亚洲美女视频黄频| 国产一区有黄有色的免费视频 | av.在线天堂| 亚洲欧美一区二区三区国产| 婷婷色综合大香蕉| 久久久久久久亚洲中文字幕| 欧美一区二区国产精品久久精品| 久久久欧美国产精品| 舔av片在线| 可以在线观看毛片的网站| 在线免费观看的www视频| 日本三级黄在线观看| 久久99蜜桃精品久久| 免费搜索国产男女视频| a级毛色黄片| av在线蜜桃| 色播亚洲综合网| 午夜视频国产福利| 在线免费观看的www视频| 级片在线观看| 日本wwww免费看| 国产亚洲av片在线观看秒播厂 | 国产高潮美女av| 精品欧美国产一区二区三| 永久免费av网站大全| 精品欧美国产一区二区三| 国产精品久久久久久久电影| 亚洲四区av| 欧美区成人在线视频| 午夜福利视频1000在线观看| 精品国产一区二区三区久久久樱花 | 日韩大片免费观看网站 | 午夜福利在线观看免费完整高清在| 国语对白做爰xxxⅹ性视频网站| av天堂中文字幕网| 亚洲五月天丁香| 国产成人a区在线观看| 国产免费一级a男人的天堂| 91在线精品国自产拍蜜月| 免费观看精品视频网站| 亚洲欧美日韩无卡精品| 国产视频内射| 国产三级中文精品| 日韩欧美精品免费久久| 亚洲第一区二区三区不卡| 亚洲欧美日韩高清专用| 又粗又爽又猛毛片免费看| 精品人妻熟女av久视频| 2022亚洲国产成人精品| 99在线视频只有这里精品首页| 人人妻人人看人人澡| 我要看日韩黄色一级片| 18+在线观看网站| 99在线人妻在线中文字幕| 最近最新中文字幕大全电影3| 亚洲精品色激情综合| 精品久久久久久久人妻蜜臀av| 国产高清国产精品国产三级 | 看十八女毛片水多多多| 一二三四中文在线观看免费高清| 国产黄片美女视频| 一边摸一边抽搐一进一小说| 九九在线视频观看精品| 亚洲综合精品二区| 精品一区二区三区人妻视频| 午夜福利视频1000在线观看| 纵有疾风起免费观看全集完整版 | 九九久久精品国产亚洲av麻豆| 亚洲欧美精品综合久久99| 国产免费福利视频在线观看| 插阴视频在线观看视频| 波野结衣二区三区在线| 欧美成人一区二区免费高清观看| 国产黄片美女视频| 久久午夜福利片| 人妻夜夜爽99麻豆av| av女优亚洲男人天堂| 成年女人看的毛片在线观看| 大香蕉97超碰在线| 亚洲第一区二区三区不卡| 性插视频无遮挡在线免费观看| 久久久久久久久久成人| 日本av手机在线免费观看| 国产精品乱码一区二三区的特点| 卡戴珊不雅视频在线播放| 天堂中文最新版在线下载 | 亚洲av二区三区四区| 毛片一级片免费看久久久久| 亚洲国产精品合色在线| 69av精品久久久久久| 国产毛片a区久久久久| 18禁裸乳无遮挡免费网站照片| 最近中文字幕2019免费版| 成人无遮挡网站| 国产一级毛片七仙女欲春2| 亚洲欧美中文字幕日韩二区| 久久99精品国语久久久| 欧美成人精品欧美一级黄| 日韩制服骚丝袜av| 国产综合懂色| 又粗又硬又长又爽又黄的视频| 日产精品乱码卡一卡2卡三| 国产成人aa在线观看| 欧美又色又爽又黄视频| 中文字幕制服av| 亚洲精品色激情综合| 国产色婷婷99| 成人漫画全彩无遮挡| 国产精品1区2区在线观看.| 毛片女人毛片| 亚洲av中文av极速乱| 中文字幕制服av| 久久久久久久久久黄片| 国产伦精品一区二区三区四那| 日本av手机在线免费观看| 在线观看66精品国产| 大香蕉97超碰在线| 欧美又色又爽又黄视频| 亚洲人成网站在线播| 最近最新中文字幕免费大全7| 黄色欧美视频在线观看| 亚洲熟妇中文字幕五十中出| 国产日韩欧美在线精品| 久久精品影院6| 青春草视频在线免费观看| 成人特级av手机在线观看| 国产亚洲精品av在线| 亚洲av熟女| 欧美激情国产日韩精品一区| 少妇猛男粗大的猛烈进出视频 | 韩国av在线不卡| 寂寞人妻少妇视频99o| 嫩草影院入口| 精品酒店卫生间| 观看美女的网站| 小蜜桃在线观看免费完整版高清| 亚洲av免费在线观看| av专区在线播放| 免费观看人在逋| 亚洲av二区三区四区| 简卡轻食公司| 黄片wwwwww| 国产色爽女视频免费观看| 狂野欧美激情性xxxx在线观看| 日韩国内少妇激情av| 国产在视频线精品| 国产三级中文精品| 又爽又黄无遮挡网站| 日本色播在线视频| 蜜桃久久精品国产亚洲av| 七月丁香在线播放| 亚洲在线自拍视频|