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

從Java轉iOS第一個項目總結

移動開發 iOS
本人14年12月份,從網站開發組轉到了移動開發組,自己的java兩年半工作經驗變成了Objective-C零經驗。2015年1月份新啟動了一個移動項目,年后因為人事變動,自己從輔助開發變成了"核心"開發,目前項目基本接近尾聲,下面進行總結,希望對一些人能有幫助, 另外也希望iOS大牛進行指導。

0.前言

本人14年12月份,從網站開發組轉到了移動開發組,自己的java兩年半工作經驗變成了Objective-C零經驗。2015年1月份新啟動了一個移動項目,年后因為人事變動,自己從輔助開發變成了"核心"開發,目前項目基本接近尾聲,下面進行總結,希望對一些人能有幫助, 另外也希望iOS大牛進行指導。

1.項目介紹

項目屬于一款社區類軟件,包含小組/帖子、視頻、文章、評論、推薦搜索、即時通訊、好友、第三方登錄/分享以及推送等,涵蓋常用app的基本功能。

2.項目使用的第三方開源庫

http://github.ibireme.com/github/list/ios/整理了比較常用的iOS第三方組件,以及github上的統計。

項目使用了CocoaPods(類似java中的maven)管理常用的第三方庫,一些特殊的單獨引用,下面介紹下比較好用的幾個。

(1)AFNetworking

目前比較推薦的iOS網絡請求組件,默認網絡請求是異步,通過block回調的方式對返回數據進行處理。

需要注意的是AFNetworking對服務器返回的ContentType要求比較嚴格,默認只支持application/json的返回。所以可能需要添加對text/html返回的支持,否則可能無法獲得返回數據。

另外就是文件上傳,這里推薦使用第二種:

  1. [formData appendPartWithFormData: name:]; 
  2. [formData appendPartWithFileData: name: fileName: mimeType:]; 

***種只需要傳入表單名和文件流,源碼也是根據文件流獲得對應的文件名和文件類型,然后調用第二種方法。但是樓主遇到了使用***種方法,提交后后臺判斷為非文件上傳,無法獲得文件流。還有如果后臺是根據文件后綴文件類型,那么***種也無法使用。

AFNetworking是異步的,也可以使用同步的網絡請求方法.

(2).FMDB

對sqlite數據庫操作進行了封裝,demo也比較簡單。

(3).MBProgressHUD

也是iOS項目常用的一個組件,用于顯示過渡效果的,比如網絡請求之前顯示loading,網絡結束隱藏loading。建議封裝在BaseViewController中,所有ViewController繼承就能使用。

(4).MJRefresh

這個是傳智播客李明杰老師的作品,自己的oc基礎就是看他的視頻半個周末就基本拿下了。MJRefresh主要用于刷新操作,提供了常用的刷新操作,還有刷新動畫,用著很好用。建議把方法封裝在BaseViewController中,這樣修改刷新操作時,就只需要改動一份。(之前用的舊版MJRefresh,只支持普通的刷新,不支持動畫,后來更新后版本變化比較大,舊的方法已經不推薦使用了,所以還是封裝基類中使用比較好,方便以后修改)

(5).SDWebImage

也是iOS最常用的一個組件,用戶加載網絡圖片,可以緩存到本地。大概原理時,***次加載后,會根據url加密作為文件名緩存在本地,如果再次加載圖片時,就直接從本地加載。用著也比較簡單。這里也分享遇到的一個問題,先從網絡加載一張小圖,然后小圖作為占位圖,再從網絡加載一張大圖。

  1. [imageView sd_setImageWithURL:[NSURL URLWithString:imageURLString] placeholderImage:DefaultPostPic]; 
  2. [imageView sd_setImageWithURL:[NSURL URLWithString:_bigImageURLStringArray[i]] placeholderImage:imageView.image options:SDWebImageDelayPlaceholder completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) { 
  3. }]; 

(6).RDVTabBarController

一個TabBar組件,可以方便設置底部菜單的文字圖片,點擊效果,小紅點提示等。

(7).Toast

類似android的toast提示效果,封裝在BaseViewController中,需要的地方進行提示。

(8).XMPPFramework

iOS唯一的xmpp類庫,作者在去年8月份添加了xep-0198協議支持(流管理,用于xmpp斷線重連),但是通過pod進行更新時,無法下載到***版本,可能0198還沒有完善好,無法作為正式版。

(9).TPKeyboardAvoiding

用戶鍵盤彈出自動計算高度,進行屏幕滾動操作。

(10).AMR

做即時通訊的音頻處理,目前我們的即時通訊使用的錄音文件是m4a,便于web端的音頻播放。

(11).TQRichTextView

用于做富文本視圖控件顯示,用于即時通訊的表情顯示,以及資源評論的富文本顯示。

(12).CSGrowingTextView

用作即時通訊文本框和評論文本框使用,可以顯示多行輸入。

(13).MJExtension

也是李明杰老師的作品,用于json轉model進行使用,有點類似于java中谷歌的Gson。轉換效率據說也很高,使用也比較簡單,只要前后臺約定好,json直接就轉成了model。一個工作多年的iOS朋友說,一個項目主要的是對model層的管理,他推薦的是Mantle。不過MJ這個更輕量級點,用著也更加簡單。

3.工具和插件介紹

Xcode

iOS開發的官方工具,也沒別的選擇。有些功能做的確實挺帥的,比如StroyBoard的拖拽事件綁定。不爽的地方就是沒有代碼格式化,另外點擊方法,可能跑到另外一個類中了!!另外左邊的目錄也不會自動發生變化,定位到對應文件,需要command+shift+j

SimPholders2

可以快速找到模擬器對應的沙盒目錄,啟動后右側頂部工具欄有個類似關閉按鍵的按鈕,顯示最近的幾個應用,點擊就進入到了對應的沙盒目錄。

VVDocumenter-Xcode

xcode工具,///生成注解模板,xcode這功能都不給集成,唉。

其他的基本就不用介紹了,有的也不怎么好用。SVN可以使用Cornerstone,Git可以使用SourceTree,sqlite可以使用SQLite Professional(不過是收費的,免費的只能查看),還可以用火狐瀏覽器的sqlite插件。

#p#

4.集成友盟

友盟,提供了App和運用的一站式解決方案。公司上個移動項目用到了友盟的推送服務,這個項目中, 還使用了分享,第三方登錄的功能,自己也親自參與到了相關集成。友盟的開發者文檔還算是比較全的,遇到問題可以聯系客服或者到友盟的論壇找解決方案。

(1).關于推送

iOS推送分為本地推送和遠程推送,本地推送是指本地自己彈出信息,另外一個就是遠程推送,當應用未啟動時,也能收到相關推送信息。我們項目沒有使用本地推送,使用的都是友盟的遠程推送。包括消息(聊天)和通知(用戶信息通知)中。用戶在聊天過程中,手機除了發送即時通訊以外,也調用后臺接口,發送友盟推送。另外用戶的帖子,評論,關注,點贊等都會由后臺調用友盟的推送。

友盟推送(另外一個域名)包括單播,列播,和廣播,其中廣播限定次數每天3次,可以和友盟申請提高次數,其他不限定次數,目前來看單播速度還是挺快的。使用友盟推送,需要在蘋果開發者賬號中,新建兩個推送證書,提交給友盟(友盟有詳細的文檔,可以參考)。可以在友盟后臺,把測試設備的deviceToken加到友盟推送的后臺,從友盟后臺發起推送。(需要64位token,需要通過方法進行計算,直接在xcode或者ituns中拿到token不行)

推送的大概流程就是,手機在***次啟動app的時候開啟推送服務,手機在啟動app的時候,注冊友盟服務,同時把deviceToken提交到自己的后臺,后臺可以在需要的時候拿著deviceToken調用友盟的推送接口,友盟再去發起蘋果的推送服務,使對應的設備收到遠程推送信息。

(2).關于第三方登錄和分享

這塊兒都在友盟的社會化分享中,里面提供了比較全面的文檔。建議第三方分享模塊不用自己特殊設計,可以使用友盟的默認分享模塊(我們項目的分享模塊自己進行了設計,包括了收藏,所以整塊都需要自定義寫UI和寫分享代碼)。關于友盟的第三方登錄和分享需要注意的時,QQ和微信登錄分享,都需要手機上安裝應用,appstore審核會卡這點,所以需要判斷手機是否安裝應用,隱藏沒有安裝應用的圖標,這塊兒友盟的sdk已經有相關的判斷方法(應該是友盟集成了QQ和微信sdk,QQ和微信sdk提供了判斷方法)。

第三方登錄分享需要到相關的平臺注冊開發者賬號。微信開發者賬號(注意不是訂閱號)第三方登錄需要交錢才能開通,可以支持微信和朋友圈分享。QQ開發者賬號可以支持QQ和QQ空間分享(QQ微博好像需要微博開發者賬號)。新浪微博需要微博開發者賬號。QQ分享開發階段需要把測試賬號加成開發者賬號的好友才能測試,微博也類似。

第三方登錄自己遇到了QQ提示不是***版的文本,在友盟論壇中找到了解決方案。

第三方登錄,我們項目集成了QQ,微信,新浪微博登錄。三個平臺都能獲得用戶的screen_name(用戶名稱),以及對應的平臺唯一的id,其中QQ和微信都是openid,新浪是userid。

第三方分享,文檔提供了分享圖片,視頻,語音。如果是分享url,需要設置對應平臺的分享地址,參考解決方案,比如

  1. [UMSocialData defaultData].extConfig.qqData.url = shareUrl; 
  2. [UMSocialData defaultData].extConfig.qzoneData.url = shareUrl; 
  3. [UMSocialData defaultData].extConfig.wechatSessionData.url = shareUrl; 
  4. [UMSocialData defaultData].extConfig.wechatTimelineData.url = shareUrl; 

另外分享到QQ空間,必須指定一張圖片,否則不能分享成功。

第三方分享建議封裝到一個類中,我們項目是幾個詳情頁都有分享,評論,舉報,收藏,點贊等功能。封裝在一個BaseDetailViewController中的,相關頁面繼承,同時傳入對應的資源類型,只用維護一份代碼。

5.即時通訊

即時通訊網上有第三方的解決方案,比如環信,融云等。我們是自己搭的xmpp服務器,服務器使用的tigase,之前寫過相關的博客,自己去年也做了對應的webim。前段時間看了環信webim的sdk,使用的也是strophe的js類庫,相關實現跟我們的差不多,但是自己搭建xmpp會遇到了不少問題,比如丟消息!所以如果想比較快速的實現im,推薦使用第三方的解決方案。

移動端的丟消息大概是這個樣子。A和B通訊,A發了一條消息給服務器,服務器發給B,但是B網絡不好掉線了,而服務器卻不知道B退出了(B正常退出會給服務器發下線通知),所以消息丟失了。XMPP中有xep-0184協議(消息回執),A給B發消息,消息體中帶一行代碼(要求消息回執),當B收到消息后發送一條回執,證明我收到了。后來XMPP又有了xep-0198協議(流管理),斷線后快速重鏈,同時判斷一定時間收不到消息,就把消息寫離線消息,減少丟消息情況。但是可能網絡情況復雜,加上各種不確定因素,還會出現丟消息的問題。目前比較靠譜的方法就是存所有的聊天記錄,由手機端根據時間點去數據庫拉消息,只要別人發出的消息就不會丟。

這次即時通訊模塊進行了相關改動,也是參考了之前開發人員的一些建議。比如用戶返回home的時候,斷開xmpp連接(iOS進入后臺后,只有5秒的處理時間,特殊方法可延長到10分鐘,如果內存不夠,應用隨時就被殺死了)。所以返回home時就斷開,進入應用再連接。同時應用使用狀態下,有心跳檢測,判斷是否保持連接。

考慮到iOS的特殊性,我們采取了xmpp和遠程推送都走的方法,推送的自定義消息體和xmpp消息體一樣,消息的處理方法一樣。用戶聊天發送xmpp消息的同時也調用我們的消息推送接口調用友盟push(push可以設置過期時間,避免特殊情況,推送延時,聊天結束了才收到推送)。一是解決iOS應用未啟動時的推送接收,二是解決xmpp丟消息的問題。

關于推送,AppDelage中有兩個方法,一個是使用中收到推送,不會提示,會直接處理推送信息。另外是程序非使用狀態,收到推送,會進行提示,可以點擊推送消息進入應用,獲取這一條推送消息的推送消息(需要注意,點擊推送啟動應用拿到信息時view還沒有加載,消息不能立刻處理)。

android端因為是真后臺,可以后臺一直保持運行,無論收到xmpp消息還是友盟推送,都可以自己進行處理,然后自己彈一個本地推送(也有弊端,如果android程序殺死,就無法接受消息和推送)。iOS端因為后臺不可控,所以推送使用遠程推送,進入應用連接xmpp再收全部離線消息(不保證友盟推送能否保證及時)。當然大部分都還是正常情況,網絡情況比較好的條件下,就實時收到了xmpp的消息或者遠程推送。我們又不是QQ和微信,只要保證用戶看到的數據能保持一致性就行了(所以QQ和微信就是diao啊)。

根據測試反饋的情況,iOS這個應用的丟消息情況比上個應用有一定改善。具體情況再進一步觀察把。

我們的即時通訊也包括語音和圖片,采用的是http的解決方案(xmpp也支持二進制的傳輸,但是估計沒人那樣用)。具體流程就是先把附件傳到附件服務器拿到附件服務器的地址,再封裝到消息體。接收方收到消息解析的時候,再從附件服務器拿到對應的資源,加載到本地。 同時屏蔽,取消屏蔽等一些實時操作也都會發xmpp,***時間雙方更新狀態。

6.項目總結

目前項目已經接近尾聲了,再過不到半月就要上線了。自己算是項目的主要負責人了。項目前期iOS和android有一周多前期準備和框架搭建,另外就是我根據頁面原型,定義接口文檔開發計劃,協調開發。可能大家項目經驗也都不多把,框架和接口或多或少都會有點問題,隨著經驗慢慢積累肯定都會越來越好的。關于iOS的總結下:

框架搭建的時候,要考慮好App中各功能點的實現方案。設計好相關文件目錄,封裝相關類文件。

封裝整理相關方法,比如BaseViewController中包括,基本ui,頂部導航條,左按鈕,右按鈕,標題,相關點擊事件,顯示/隱藏loading,網絡請求失敗統一處理方法,上拉/下拉刷新綁定,刷新顯示/隱藏。分析項目中的功能相同模塊,封裝對應操作,相同功能代碼維護一份。

考慮好刷新機制,比如A頁面進入B頁面,B更新后,返回后A頁面的刷新,如果采用block/delegate的方法,可以統一進行設計。或者多個頁面之間的數據刷新,采用通知的方式(KVO),進行更新操作。盡量開發階段,就把可能出現的問題提前解決。

確定是否進行相關頁面統計,比如加友盟的頁面統計,需要設置相關view的viewWillAppear和viewWillDisappear()

ViewController中初始化view和數據請求后刷新view代碼分離,封裝整理好網絡請求前和請求后的操作,考慮好下拉刷新頁面和上拉加載更多的相關數據請求和處理。考慮有網狀態下的數據緩存以及無網狀態下的緩存數據加載

提前做好相關頁面的跳轉,代碼解耦,不斷優化和重構代碼。發現問題或者有更好的解決方案,盡量早期就進行修改,避免修修補補,方便后期維護和擴展。在可以接受的情況下,可以犧牲一些系能,保持邏輯簡單,便于維護。

通過代碼寫view計算坐標時,盡量參考上一個元素的坐標和寬高,這樣當一個元素位置或寬高發生變化時,其他元素基本都能隨著發生變化。

數據處理能放在服務器端處理就由服務器端處理,前臺就進行無腦顯示。

考慮程序的兼容性,32位和64位一些變量的值不同,注意值的越界問題。注意程序的內存問題,和使用過程中的內存變化。

考慮信息的安全性,沙盒存儲的信息可以被查看修改,重要信息請加密。

責任編輯:chenqingxiang 來源: cocoachina
相關推薦

2023-09-21 22:43:17

Django框架

2010-08-04 13:16:23

Flex項目

2010-07-30 14:50:38

Flex項目

2022-09-02 15:22:32

Vue3.2技術代碼

2025-04-11 08:40:00

FastAPIAPIWeb 框架

2021-04-07 13:38:27

Django項目視圖

2011-03-21 14:24:13

Debian 6

2013-01-14 09:44:58

JavaScriptJSJS框架

2010-07-30 14:58:06

Flex應用

2011-03-03 21:04:08

bug程序員

2012-02-08 11:15:38

HibernateJava

2022-08-17 12:09:29

Vue3.2代碼

2025-01-13 00:00:10

SwaggerAI項目

2018-11-08 13:53:15

Flink程序環境

2021-03-24 08:00:44

項目Vue 3Typescript

2022-10-17 10:28:05

Web 組件代碼

2009-10-23 09:21:08

2013-10-30 22:10:28

Clouda程序

2009-09-22 10:00:08

曙光BBSBBS站

2023-05-19 08:49:58

SQLAlchemy數據庫
點贊
收藏

51CTO技術棧公眾號

久久久久久九九| 亚洲视频一区二区| 国产玉足脚交久久欧美| 日韩国产福利| 久久精品国产99国产精品| 欧美另类在线观看| 美女久久久久久久久久| 97精品资源在线观看| 欧美性xxxx在线播放| 一区二区日本| 日韩精品系列| 国产成人在线视频网站| 国产91精品在线播放| 激情五月少妇a| 精品国产一区二区三区久久久樱花 | 黄大色黄女片18免费| 97成人在线| 欧美日本国产一区| 熟妇人妻va精品中文字幕| 中文字幕在线观看网站| 中文字幕免费在线观看视频一区| 国产一区二区精品在线| 国产亲伦免费视频播放| 日韩av中文字幕一区二区| 久久久久久成人精品| 少妇高潮惨叫久久久久| 九九久久电影| 亚洲精品美女在线观看| 日本人dh亚洲人ⅹxx| 99久久er| 色女孩综合影院| 日日碰狠狠添天天爽超碰97| 午夜av在线免费观看| 中文字幕中文字幕一区| 日本一区二区三区视频在线播放 | 国产午夜精品理论片a级大结局 | 中文字幕欧美视频| 四虎在线精品| 欧美猛男超大videosgay| 狠狠热免费视频| 国产超碰精品| 色噜噜偷拍精品综合在线| 777精品久无码人妻蜜桃| 俺来俺也去www色在线观看| 亚洲另类中文字| 男同互操gay射视频在线看| 三区四区电影在线观看| 国产女人18毛片水真多成人如厕| 欧美极品色图| 精品999视频| 国产午夜三级一区二区三| 欧美日韩系列| 国产区视频在线| 国产日韩v精品一区二区| 欧美精品一区二区视频| 免费在线观看污视频| 91美女在线视频| 麻豆一区区三区四区产品精品蜜桃| 免费观看黄一级视频| 不卡在线视频中文字幕| 精品欧美国产| 九九九伊在人线综合| 国产午夜精品久久久久久久 | 国产精品久久无码| 色先锋久久影院av| 国产亚洲精品综合一区91| 日日操免费视频| 忘忧草精品久久久久久久高清| 久久成人精品视频| 国产一级一片免费播放| 亚洲综合不卡| 国产精品视频xxxx| 国产精品九九九九| 成人午夜激情在线| 欧美一区二区视频17c| 成人免费高清在线播放| 综合久久久久综合| 日韩日韩日韩日韩日韩| 亚洲精品mv| 欧美日韩在线播放| 黄色av电影网站| 国产乱码精品一区二区三区四区| 中文一区二区视频| 久草视频手机在线观看| 亚洲免费一区二区| 国产一区视频在线| 欧洲成人一区二区三区| 国产亚洲欧美日韩在线一区| 一区二区在线不卡| 成人福利电影| 欧美体内she精视频| 九色91porny| 自拍自偷一区二区三区| 久久视频在线观看免费| 国产精品自拍99| 麻豆成人综合网| 精品国产一区二区三区四区精华| 成人在线二区| 亚洲一区av在线| 中文字幕av不卡在线| 中文字幕视频精品一区二区三区| 亚洲视频视频在线| 久久久久久福利| 老司机精品视频导航| 国产在线资源一区| 免费黄色电影在线观看| 欧美日韩中文字幕在线视频| 亚洲综合激情视频| 九九久久成人| 91精品国产91久久久| 91禁在线观看| 国产偷v国产偷v亚洲高清| 成人区一区二区| 成人国产精品入口免费视频| 亚洲精品不卡在线| 欧美性猛交xxxxx少妇| 奇米在线7777在线精品| 久久久久天天天天| 日本乱理伦在线| 欧美精品久久天天躁| 日本黄色网址大全| 亚洲裸体俱乐部裸体舞表演av| 国产欧美日韩中文字幕| 狠狠狠综合7777久夜色撩人| 五月天一区二区| 图片区偷拍区小说区| 中文字幕日韩欧美精品高清在线| 国产免费一区二区三区在线观看| 青青草免费在线| 黄色成人在线播放| 老熟妇精品一区二区三区| 精品成人一区| 99久久免费国| 成人在线播放免费观看| 在线播放91灌醉迷j高跟美女| 日本一二三不卡视频| 男人天堂欧美日韩| 麻豆亚洲一区| 欧美天堂视频| 亚洲人av在线影院| 天天操夜夜操视频| 久久久影院官网| 伊人成色综合网| 欧美丝袜美腿| 1769国产精品| 亚洲日本香蕉视频| 欧美性高跟鞋xxxxhd| 亚洲国产天堂av| 久久综合激情| 亚洲成人午夜在线| 992tv国产精品成人影院| 在线亚洲午夜片av大片| 中日精品一色哟哟| 亚洲欧洲韩国日本视频| 国产欧美激情视频| 欧美日韩国产亚洲一区| 国产精品对白一区二区三区| aa视频在线观看| 日韩激情av在线播放| 无码人妻一区二区三区免费| 欧美国产欧美综合| 欧美成人乱码一二三四区免费| 久久精品免费一区二区三区| 亚洲综合社区网| xxxx成人| 亚洲欧美国产视频| 亚洲天堂中文在线| 亚洲免费伊人电影| 人妻av一区二区| 亚洲欧美视频一区二区三区| 五月天国产一区| 国产一区二区高清在线| 97国产suv精品一区二区62| 伦理片一区二区三区| 欧美色中文字幕| 东方av正在进入| 91免费视频大全| 向日葵污视频在线观看| 欧美日韩国产在线一区| 久久综合九色99| 亚洲成人1区| 97高清免费视频| 日韩精品成人av| 亚洲精品99久久久久| 中国精品一区二区| 亚洲一区二区视频| 最近中文字幕在线mv视频在线| 国产另类ts人妖一区二区| 天堂…中文在线最新版在线| 三区四区不卡| 狠狠久久综合婷婷不卡| 久久99久久久精品欧美| 欧美极品美女视频网站在线观看免费| 欧美午夜黄色| 日韩一区二区在线观看| 黄色av一级片| 一区二区三区日本| 日韩视频在线观看免费视频| 丁香桃色午夜亚洲一区二区三区| 精品久久久噜噜噜噜久久图片| 国产精品多人| 亚洲一区二区三区乱码| 偷拍精品福利视频导航| 91麻豆精品秘密入口| 午夜av成人| 欧美一级视频在线观看| 在线观看h网| 在线国产精品视频| 欧美精品少妇| 精品粉嫩超白一线天av| 91精品人妻一区二区三区果冻| 欧美日韩美女在线观看| 欧美色图一区二区| 中文字幕一区免费在线观看| 丰满少妇高潮一区二区| 北岛玲一区二区三区四区| 在线播放av中文字幕| 日韩精品一级二级| youjizz.com在线观看| 天天色天天射综合网| 日韩精品福利视频| 国产免费av一区二区三区| 国产麻豆乱码精品一区二区三区 | 亚洲国产99精品国自产| 国产精品久久久午夜夜伦鲁鲁| 欧美日韩一区二区在线 | 国产精品久久久久久久久久妞妞| 中文字幕在线乱| 久久麻豆精品| 午夜精品亚洲一区二区三区嫩草| 国产欧美日韩精品高清二区综合区| 国产乱码精品一区二区三区卡| 一区二区日韩| 91成人伦理在线电影| 精品国模一区二区三区欧美| 国产在线高清精品| 四虎影视成人精品国库在线观看| 国产精品综合不卡av| 国产精品久久久久久久久免费高清 | 成人高潮免费视频| 一区二区中文视频| 国产视频123区| 国产精品三级av| 青青青手机在线视频| 国产精品视频一区二区三区不卡| 蜜桃av乱码一区二区三区| 国产亚洲va综合人人澡精品| 国产jk精品白丝av在线观看 | 一区二区三区不卡在线| 久久精品国产99久久| 亚洲图片都市激情| 婷婷色综合网| 欧洲金发美女大战黑人| 黑人一区二区| 青青草成人免费在线视频| 中文亚洲欧美| 999精品视频在线| 免费成人性网站| 亚洲欧美日本一区二区| 国产suv精品一区二区三区| 日本一区二区免费视频| 99精品国产视频| 免费在线观看你懂的| 国产拍欧美日韩视频二区| 日本视频在线免费| 亚洲精品日日夜夜| 日韩精品在线免费看| 一本一道波多野结衣一区二区| 在线观看你懂的网站| 3d动漫精品啪啪1区2区免费 | 另类视频一区二区三区| 国产精品10p综合二区| 一区二区美女| 樱花www成人免费视频| 国产精品99一区二区| 日本www在线播放| 免费成人在线视频观看| 岛国大片在线免费观看| 99精品欧美一区二区蜜桃免费| 日本污视频网站| 亚洲一区二区三区自拍| 在线观看亚洲黄色| 欧美一级欧美一级在线播放| 狠狠躁日日躁夜夜躁av| 国产亚洲激情在线| 手机在线免费观看av| 国产成人精品视频在线| 成人在线精品| 欧美日韩国产一二| 一区二区三区在线观看免费| 337p粉嫩大胆噜噜噜鲁| 激情图片小说一区| av小说在线观看| 亚洲综合在线视频| 国产精品第6页| 日韩精品久久久久久福利| 日韩专区在线| 日韩av片电影专区| 中文久久电影小说| 国产精品99久久久久久大便| 亚洲综合二区| 95视频在线观看| 国产精品福利一区| 中文字幕在线播| 亚洲福利在线看| 操你啦视频在线| 国产欧美精品va在线观看| 琪琪久久久久日韩精品| 国产精品视频一二三四区| 久久精品女人| 中文字幕在线永久| 亚洲精品欧美激情| 中文字幕在线网址| 精品亚洲va在线va天堂资源站| 超碰在线观看免费| 国产精品午夜视频| 欧美日韩一二三四| 国内外成人激情视频| 成人免费黄色在线| 可以直接看的黄色网址| 欧美揉bbbbb揉bbbbb| 国产最新视频在线| 青青草原一区二区| 日韩a级大片| 日本a视频在线观看| 成人精品免费视频| 青青草精品在线视频| 欧美电影在线免费观看| 尤物网在线观看| 国产精品久久久久免费a∨大胸 | 欧美视频二区欧美影视| 一区二区成人国产精品 | 成人18视频| 欧美精品观看| 2018国产精品| 亚洲综合男人的天堂| 午夜精品久久久久久久爽| 久久视频国产精品免费视频在线| 日韩黄色碟片| 色乱码一区二区三区熟女| 精品一区二区三区久久| 亚洲国产精品一区二区久久hs| 欧美视频三区在线播放| 素人av在线| 91日本在线视频| 欧美激情亚洲| 久久久久99人妻一区二区三区| 亚洲欧美日韩国产手机在线| 精品国产九九九| 久久久久久成人| 欧美亚视频在线中文字幕免费| 一女被多男玩喷潮视频| 国产三级一区二区三区| 制服丝袜在线一区| 不卡av在线网站| 哺乳一区二区三区中文视频| 久久精品国产sm调教网站演员| 99久久er热在这里只有精品66| 超碰中文字幕在线| 在线观看久久av| 久久伦理中文字幕| www.国产在线视频| 久久伊人中文字幕| 中文在线观看av| 免费91麻豆精品国产自产在线观看| 欧美中文高清| 玩弄中年熟妇正在播放| 久久精品亚洲乱码伦伦中文| 亚洲最大成人在线视频| 久久成年人视频| 偷拍亚洲色图| 国产福利精品一区二区三区| 亚洲成人免费电影| 91伦理视频在线观看| 97se亚洲综合| 丝袜a∨在线一区二区三区不卡| 永久av免费网站| 亚洲成色777777女色窝| 久久爱.com| 青青青免费在线| 中文子幕无线码一区tr| 性欧美8khd高清极品| 欧美最近摘花xxxx摘花| 91亚洲国产| 国产白嫩美女无套久久| 欧美日本一区二区三区四区| 精精国产xxxx视频在线野外| 亚洲国产精品日韩| 成人小视频在线观看| 影音先锋黄色网址| 国模私拍视频一区| 欧美mv日韩| 艳妇乳肉豪妇荡乳xxx| 欧美日韩亚洲另类| 麻豆成全视频免费观看在线看| 亚洲欧美丝袜| 91美女福利视频| av男人天堂av| 国产精品爽黄69| 亚洲小说欧美另类社区|