久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

瀏覽:85日期:2023-11-24 17:39:36

看下demo的效果:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

CPU 和GPU

關于繪圖和動畫有兩種處理方式CPU(中央處理器)和GPU(圖形處理器),CPU的工作都在軟件層面,而GPU的在硬件層面。

總的來說,可以使用CPU做任何事情,但是對于圖像的處理,通常GPU會更快,因為GPU使用圖像對高度并行浮點運算做了優化(盡管我也不知道是什么鬼??),所以,我們想盡可能的把屏幕渲染的工作交給硬件去處理,而問題在于GPU并沒有無限制處理的性能,一旦資源用盡,即使CPU并沒有完全占用,GPU性能還是會下降。

所以,目前大多的性能優化都是關于智能利用GPU和CPU,平衡它們之間工作負載。

測量,而不是猜測

現在知道哪些可能會影響性能,該如何修復呢?有許多傳統的詭計來優化,但如果盲目使用的話,可能會造成更多性能上的問題,而不是優化了

如何正確的測量而不是猜測這點很重要,根據性能相關知識寫出的代碼不同于倉促優化,前者是正確的姿勢,后者則是在浪費生命

那改如何測量,第一步就是確保在真實環境下測試你的程序

真機測試,而不是模擬器

當你開始做一些性能方面的工作時候,一定要在真機上測試,而不是模擬器,模擬器雖然可以加快開發效率,但卻不能準確提供真機的性能參數

模擬器運行在Mac上,然而Mac上的cpu比ios設備要快很多,相反,Mac上的GPU和ios設備上的不一樣,模擬器不得已需要在軟件層面(CPU)模擬ios設備,所以GPU的相關操作在模擬器上面運行的會更慢

另一件重要的就是性能測試的時候一定要用發布配置,而不是調試模式,因為當用發布環境打包的時候,編譯器會引入一些提高性能的優化,比如:去除調試符號或者移除并重新組織代碼,因為可以自己做到這些,比如禁用NSlog、print語句,因為 ,只需要關心發布性能。

測試幀率

可以在程序中使用CADisplayLink來測量幀率,在屏幕上顯示出來,我用Swift3.0模仿YY大神的代碼寫了一個簡單的FPS指示器 YWFPSLabel ,使用CADisplayLink監視FPS數值,日常開發的時候,可以有直接的體現,不用再靠猜了…

YWFPSLabel 集成也很方便,在AppDelegate的application方法里加下面兩句即可

letFPSLab = YWFPSLabel(frame: CGRect())UIApplication.shared.keyWindow!.addSubview(FPSLab)

不知道大家有木有看到頭部那個小label啊~~~

但是應用內的FPS顯示并不能完全真實的測量出性能,因為它僅僅能測試出應用內的幀率,還有很多是動畫都是在應用外發生(在渲染進程中處理),但應用內FPS計數可以對一些性能問題提供參考,一旦找到問題,需要更多的精確詳細信息來定位問題所在,我們就要使用Instuments了,它可以看到更多準確是信息,查看到所有與顯示的數據。

Instuments

Instuments是Xcode套件中沒有被充分利用的工具,很多iOS開發者從來沒用過Instrument,特別是通過短暫培訓出來的同學們,所以,很多面試官也會問性能條調優方面的知識,來判斷面試的同學是否真正應用對年開發經驗。

Activity Monitor

個人覺的很像Windows的任務管理器,可以查看所有的進程,以及進程的內存、cpu使用百分比等數據等,就不多介紹了,打開一看大概就知道怎么回事

Allocations

管理內存是app開發中最重要的一個方面,對于開發者來說,在程序架構中減少內存的使用通常都是使用Allocations去定位和找出減少內存使用的方式

接下來,談一下內存泄漏的兩種情況

第一種:為對象A申請了內存空間,之后再也沒用過對象A,也沒釋放過A導致內存泄漏,這種是Leaked Memory內存泄漏 第二種:類似于遞歸,不斷地申請內存空間導致的內存泄漏,這種情況是Abandoned Momory

此工具可以讓開發者很好的了解每個方法占用內存的情況,并定位相關的代碼

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

右鍵就可以打開Xcode自動定位到相關占用內存方法的代碼上

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

第二種情況可以根據下圖的操作清晰的找到對用的代碼問題

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

解釋一下,第二種情況我們應該如何操作,重復的執行一系列的操作時候內存不會繼續增加,比如打開和關閉一個窗口,這樣的操作,每一次操作的前后,內存應該是相同的,通過多次循環操作,內存不會遞增下去,通過這種分析結果,觀察內存分配趨勢,當發現不正確的結果或者矛盾的結果,就可以研究是不是Abandoned Momory的問題,并可以修正這個問題了

Core Animation

之前說過自己寫的 YWFPSLabel 只能檢測應用內的FPS,而此工具考慮到了程序外的動畫,理想的FPS值為60左右,過低的話就用該進性優化了,根據WWDC的說法,當FPS 低于45的時候,用戶就會察覺到到滑動有卡頓

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

圈著數字紅色方框中的數字,代表著FPS值,理論上60最佳,實際過程中59就可以了,說明就是很流暢的,說明一下操作方式:在手指不離開屏幕的情況下,上下滑動屏幕列表

介紹一下Deug Display中選項的作用

Color Blended Layers(混合過度繪制)

打開此選項屏幕的效果圖如下:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

這個選項基于渲染程度對屏幕中的混合區域進行綠到紅的高亮(也就是多個半透明圖層的疊加),由于重繪的原因,混合對GPU性能會有影響,同時也是滑動或者動畫掉幀的罪魁禍首之一

GPU每一幀的繪制的像素有最大限制,這個情況下可以輕易繪制整個屏幕的像素,但如果發生重疊像素的關系需要不停的重繪同一區域的,掉幀和卡頓就有可能發生

GPU會放棄繪制那些完全被其他圖層遮擋的像素,但是要計算出一個圖層是否被遮擋也是相當復雜并且會消耗CPU的資源,同樣,合并不同圖層的透明重疊元素消耗的資源也很大,所以,為了快速處理,一般不要使用透明圖層,

1). 給View添加一個固定、不透明的顏色

2). 設置opaque 屬性為true

但是這對性能調優的幫助并不大,因為UIView的opaque 屬性默認為true,也就是說,只要不是認為設置成透明,都不會出現圖層混合

而對于UIIimageView來說,不僅需要自身需要不是透明的,它的圖片也不能含有alpha通道,這也上圖9張圖片是綠色的原因,因此圖像自身的性質也可能會對結果有影響,所以你確定自己的代碼沒問題,還出現了混合圖層可能就是圖片的問題了

而針對于屏幕中的文字高亮成紅色,是因為一沒有給文字的label增加不透明的背景顏色,而是當UILabel內容為中文時,label的實際渲染區域要大于label的size,因為外圍有了一圈的陰影,才會出現圖層混合我們需要給中文的label加上如下代碼:

retweededTextLab?.layer.masksToBounds = trueretweededTextLab?.backgroundColor = UIColor.groupTableViewBackgroundstatusLab.layer.masksToBounds = truestatusLab.backgroundColor = UIColor.white

看下效果圖:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

那些label的顏色也變成藍色的了,這里有一點需要說明一下,

1). statusLab.layer.masksToBounds = true 單獨使用不會出現離屏渲染

2). 如果對label設置了圓角的話,圓角部分會離屏渲染,離屏渲染的前提是位圖發生了形變

Color Hits Green and Misses Red(光柵化緩存圖層的命中情況)

這個選項主要是檢測我們有無濫用或正確使用layer的shouldRasterize屬性.成功被緩存的layer會標注為綠色,沒有成功緩存的會標注為紅色。

很多視圖Layer由于Shadow、Mask和Gradient等原因渲染很高,因此UIKit提供了API用于緩存這些Layer, self.layer.shouldRasterize = true 系統會將這些Layer緩存成Bitmap位圖供渲染使用,如果失效時便丟棄這些Bitmap重新生成。圖層Rasterization柵格化好處是對刷新率影響較小,壞處是刪格化處理后的Bitmap緩存需要占用內存,而且當圖層需要縮放時,要對刪格化后的Bitmap做額外計算。 使用這個選項后時,如果Rasterized的Layer失效,便會標注為紅色,如果有效標注為綠色。當測試的應用頻繁閃現出紅色標注圖層時,表明對圖層做的Rasterization作用不大。

在測試的過程中,第一次加載時,開啟光柵化的layer會顯示為紅色,這是很正常的,因為還沒有緩存成功。但是如果在接下來的測試,。例如我們來回滾動TableView時,我們仍然發現有許多紅色區域,那就需要謹慎對待了

Color Copied Image (拷貝的圖片)

這個選項主要檢查我們有無使用不正確圖片格式,由于手機顯示都是基于像素的,所以當手機要顯示一張圖片的時候,系統會幫我們對圖片進行轉化。比如一個像素占用一個字節,故而RGBA則占用了4個字節,則1920 x 1080的圖片占用了7.9M左右,但是平時jpg或者png的圖片并沒有那么大,因為它們對圖片做了壓縮,但是是可逆的。所以此時,如果圖片的格式不正確,則系統將圖片轉化為像素的時間就有可能變長。而該選項就是檢測圖片的格式是否是系統所支持的,若是GPU不支持的色彩格式的圖片則會標記為青色,則只能由CPU來進行處理。CPU被強制生成了一些圖片,然后發送到渲染服務器,而不是簡單的指向原始圖片的的指針。我們不希望在滾動視圖的時候,CPU實時來進行處理,因為有可能會阻塞主線程。

Color Immediately (顏色立即更新)

通常 Core Animation 以每秒10此的頻率更新圖層的調試顏色,對于某些效果來說,這可能太慢了,這個選項可以用來設置每一幀都更新(可能會影響到渲染性能,所以不要一直都設置它)

Color Misaligned Image (圖片對齊方式)

這里會高亮那些被縮放或者拉伸以及沒有正確對齊到像素邊界的圖片,即圖片Size和imageView中的Size不匹配,會使圖過程片縮放,而縮放會占用CPU,所以在寫代碼的時候保證圖片的大小匹配好imageView,如下圖所示:

圖片尺寸 170 * 220px

letimageView = UIImageView(frame: CGRect(x: 50, y: 100, width: 170, height: 220))imageView.image = UIImage(named: 'cat')view.addSubview(imageView)

蘋果的單位以點計算,而 imageView的尺寸是170 220 pt 而圖片是 170 220px,所以相當于在屏幕上對圖片方法了一倍,看效果圖如下:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

可以看到圖片高亮成黃色顯示,更改下imageView的大小

letimageView = UIImageView(frame: CGRect(x: 50, y: 100, width: 85, height: 110))imageView.image = UIImage(named: 'cat')view.addSubview(imageView)

看下效果圖

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

當imageView和image的大小一致的時候,就正常顯示了

Color Offscreen- Rendered Yellow (離屏渲染)

這里會把那些需要離屏渲染的到圖層高亮成黃色,而出發離屏渲染的可能有

/* 圓角處理 */view.layer.maskToBounds = truesomeView.clipsToBounds = true/* 設置陰影 */view.shadow../* 柵格化 */view.layer.shouldRastarize = true

針對柵格化處理,我們需要指定屏幕的分辨率

//離屏渲染 - 異步繪制 耗電self.layer.drawsAsynchronously = true //柵格化 - 異步繪制之后 ,會生成一張獨立的圖片 cell 在屏幕上滾動的時候,本質上滾動的是這張圖片//cell 優化,要盡量減少圖層的數量,想當于只有一層//停止滾動之后,可以接受監聽self.layer.shouldRasterize = true //使用 “柵格化” 必須指定分辨率self.layer.rasterizationScale = UIScreen.main.scale

指定陰影的路徑,可以防止離屏渲染

// 指定陰影曲線,防止陰影效果帶來的離屏渲染imageView.layer.shadowPath = UIBezierPath(rect: imageView.bounds).cgPath

這行代碼制定了陰影路徑,如果沒有手動指定,Core Animation會去自動計算,這就會觸發離屏渲染。如果人為指定了陰影路徑,就可以免去計算,從而避免產生離屏渲染。

設置cornerRadius本身并不會導致離屏渲染,但很多時候它還需要配合layer.masksToBounds = true使用。根據之前的總結,設置masksToBounds會導致離屏渲染。解決方案是盡可能在滑動時避免設置圓角,如果必須設置圓角,可以使用光柵化技術將圓角緩存起來:

// 設置圓角label.layer.masksToBounds = truelabel.layer.cornerRadius = 8label.layer.shouldRasterize = truelabel.layer.rasterizationScale = layer.contentsScale

如果界面中有很多控件需要設置圓角,比如tableView中,當tableView有超過25個圓角,使用如下方法

view.layer.cornerRadius = 10view.maskToBounds = Yes

那么fps將會下降很多,特別是對某些控件還設置了陰影效果,更會加劇界面的卡頓、掉幀現象,對于不同的控件將采用不同的方法進行處理:

1). 對于label類,可以通過CoreGraphics來畫出一個圓角的label

2). 對于imageView,通過CoreGraphics對繪畫出來的image進行裁邊處理,形成一個圓角的imageView,代碼如下:

/// 創建圓角圖片 /// /// - parameter radius: 圓角的半徑 /// - parameter size: 圖片的尺寸 /// - parameter backColor: 背景顏色 默認 white /// - parameter lineWith: 圓角線寬 默認 1 /// - parameter lineColor: 線顏色 默認 darkGray /// /// - returns: image funcyw_drawRectWithRoundCornor(radius: CGFloat, size: CGSize, backColor: UIColor = UIColor.white, lineWith: CGFloat = 1, lineColor: UIColor = UIColor.darkGray) -> UIImage? {letrect = CGRect(origin: CGPoint(x: 0, y: 0), size: size)UIGraphicsBeginImageContextWithOptions(rect.size, true, 0)letbezier = UIBezierPath(roundedRect: rect, byRoundingCorners: UIRectCorner.allCorners, cornerRadii: CGSize(width: radius, height: radius)) backColor.setFill()UIRectFill(rect) bezier.addClip()draw(in: rect) bezier.lineWidth = 1lineColor.setStroke()bezier.stroke()letresult = UIGraphicsGetImageFromCurrentImageContext()UIGraphicsEndImageContext()return result }

Color Compositing Fast-Path Blue

這個選項會對任何直接使用OpenGL繪制的圖層進行高亮,如果僅僅使用UIKit或者Core Animation的API,不會有任何效果,恕我才疏學淺,所以,我在測試的時候,確實在屏幕上沒有任何反應的,openGL 繪制,我也不會,所以,就不知道到底會有什么效果了,哪位大神會的話,貼段代碼,給我試試啊~~~

Flash Updated Regions (Core Graphics 繪制的圖層)

此選項會對重繪的內容進行高亮成黃色,也就是軟件層面使用Core Graphics 繪制的圖層。我測試的時候,好像有點問題,這種解釋,不知道是不是我寫代碼的問題,所以,就不多說了

上面說的這些高亮圖層,幾個常用的選項在模擬器里面可以直接調試,非常方便

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

紅框中的選項,上面都有解釋,這里就不說了,勾選項,打開模擬器,一看就知道了~

麻蛋、Core Animation 部分終于扯完了,扯了好多啊。。。

Leaks

又一個灰常重要的工具,主要檢查內存泄漏,在前面Allcations里面我們提到內存泄漏分兩種,現在我們研究Leaked Memory, 從用戶使用角度來看,內存泄漏本身不會產生什么危害,作為用戶,根本感覺不到內存泄漏的存在,真正的危害在于內存泄漏的堆積,最終會耗盡系統所有的內存。我們直接看圖:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

在 instruments 中,雖然選擇了 Leaks 模板,但默認情況下也會添加 Allocations 模板.基本上凡是內存分析都會使用 Allocations 模板, 它可以監控內存分布情況。

選中 Allocations 模板3區域會顯示隨著時間的變化內存使用的折線圖,同時在4區域會顯示內存使用的詳細信息,以及對象分配情況.

點擊 Leaks 模板, 可以查看內存泄露情況。如果在3區域有 紅X 出現, 則有內存泄露, 4區域則會顯示泄露的對象.

打用leaks進行監測:點擊泄露對象可以在(下圖)看到它們的內存地址, 占用字節, 所屬框架和響應方法等信息.打開擴展視圖, 可以看到右邊的跟蹤堆棧信息,4 黑色代碼最有可能出現內存泄漏的方法

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

監測結果的分析,

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

Time Profiler

在開發的過程中,我們經常能感覺到,點擊某一按鈕,或者做了某一操作,有卡頓,這就是延遲,那使用此工具,就可以揪出耗時的函數,先看一下,調試界面介紹:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

根據查看的相關耗時操作,我們就可以右鍵定位當耗時的方法:

寫一個簡單例子看一下:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

看上圖,可以很清楚看到此方法耗時比較嚴重,右鍵打開定位到此方法的代碼:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

代碼截圖如下:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

這時候,我們把循環放到子線程來做

@IBActionfunc btnAction(_ sender: AnyObject) {let svc = SecondViewController()svc.title = '第二個頁面'//全局隊列異步執行DispatchQueue.global().async { for i in 0..<8888 {print(i) }}navigationController?.pushViewController(svc, animated: true) }

看效果圖:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

到這里比較重要Instrument調試工具介紹的差不多了,說一個Xcode8.0新出的功能,很好用也很重要的功能:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

還是以例子說說吧,Viewcontroller里面一個button,點擊跳到SecondViewcontroller,SecondViewcontroller里面有個View,view里面有個button,button點擊回到ViewController,實現是通過view的屬性拿到SecondviewConroller的引用,pop回去

子view的代碼如下:

class SubView: UIView { var delegate: SecondViewController? @IBActionfuncbrnAction(_ sender: AnyObject) {delegate?.navigationController!.popViewController(animated: true) }}

當我們從第二個控制器,回到第一個控制器的時候,我們點一下,剛那個按鈕,看圖:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

第二個控制器和子View都內存中,我們很容易,就可以發現問題了,這是因為,SecondViewController強引用了SubView,而我們SubView也強引用了SecondViewcontroller,就造成相互強引用,引用計數器不能為0,不能銷毀了,我們只要把屬性前面加個weak,變成弱引用就可以了

weakvar delegate: SecondViewController? @IBActionfuncbrnAction(_ sender: AnyObject) {delegate?.navigationController!.popViewController(animated: true) }

這時候,我們從第二個控制器pop回來的時候,看下內存:

iOS 性能調優,成為一名合格 iOS 程序員必須掌握

現在就沒問題了,怎樣這個工具是不是挺好用啊

來自:http://ios.jobbole.com/90819/

標簽: IOS
主站蜘蛛池模板: 高清av网站| 精品久久一区二区三区 | 国产日产精品一区二区三区四区 | 亚洲九九| 国产高清一级 | 在线欧美| 91麻豆精品国产91久久久久久 | 成人一区二区av | 午夜影院网站 | 99久久夜色精品国产网站 | 在线黄av | 国产午夜精品在线 | 欧美亚洲免费 | 日韩欧美国产精品一区二区三区 | 亚洲精品成人在线 | 国产精品久久久久久久久久 | av网址在线播放 | 国产激情精品一区二区三区 | 婷婷激情五月 | 国产三级日本三级美三级 | 成人午夜精品久久久久久久3d | 中文字幕1区| 欧美日韩精品久久久久 | 久久综合久久综合久久 | 国产精品a久久 | 亚洲精品电影在线观看 | 国产精品欧美日韩在线观看 | 波多野结衣一区二区三区四区 | 范冰冰一级做a爰片久久毛片 | 国产欧美精品一区 | 久久久www成人免费无遮挡大片 | 97成人在线 | 亚洲一区二区中文字幕 | 国产成人精品一区二区三区网站观看 | 一级毛片免费看 | 成人精品在线 | 九九免费观看全部免费视频 | 成人伊人| 蜜桃视频在线观看www社区 | 浴室洗澡偷拍一区二区 | 亚洲成人综合网站 | 天天操夜夜操免费视频 | 国产99久久精品一区二区永久免费 | 免费观看一级特黄欧美大片 | 日韩欧美一区二区三区免费观看 | 精品久久一区 | 久久青青视频 | 一区二区国产精品 | 在线视频日韩 | 99久久精品免费看国产四区 | 91精品一区二区三区久久久久久 | 亚洲视频区 | 老司机福利在线视频 | 色先锋资源 | 国产精品日韩精品 | 国产激情精品视频 | 日韩一级 | 欧美在线网站 | 日韩成人一区二区 | 欧美久久久久久久久久伊人 | 欧美成人a∨高清免费观看 在线视频成人 | 免费视频99| 国产一区二区 | 日韩中文在线视频 | 欧美在线高清 | 中文字幕 国产精品 | 91亚洲日本 | 91亚洲精品在线观看 | 91一区二区在线 | 成人一区二区三区在线观看 | 日日干日日操 | 久久久婷 | 日韩欧美中文 | 91精品国产91久久久久久最新 | 日韩免费激情视频 | 国产日韩精品视频 | www.国产| 精品视频一区二区在线观看 | 久久青 | 国产三级一区二区 | 国产精品成人一区二区三区夜夜夜 | 一区在线免费 | 国产精品日本欧美一区二区三区 | 日韩一片 | 青青草免费在线视频 | www.99| 欧美一区二区在线观看 | 欧美黄色片免费观看 | 91精品国产综合久久精品 | 免费观看av电影 | 亚洲精品久久久久久久久久久 | 超碰日韩在线 | 国产精品黄网站在线观看 | 国产视频中文字幕 | 久久另类ts人妖一区二区 | 一区二区三区中文字幕 | 欧美久久不卡 | 久久99精品久久久 | 极品白嫩少妇无套内谢 | 亚洲三级在线观看 | 99免费精品 | 爱免费视频 | 欧美精品一区二区久久 | 欧美6一10sex性hd| 亚洲成人精品在线观看 | 欧美激情一区二区三区在线观看 | 97久久久| 成人一级视频 | 久久人人爽人人爽 | 午夜激情在线播放 | 亚洲精品乱码久久久久久蜜桃不爽 | 国产日韩欧美在线观看 | 亚洲乱码一区二区三区在线观看 | 在线日本中文字幕 | 亚洲精品乱码久久久久久按摩观 | 中文字幕日韩欧美一区二区三区 | 国产一级大片 | 91久久精品一区二区三区 | 福利片中文字幕 | 久久人 | 伊人爱爱网 | 亚洲欧美日韩国产综合精品二区 | 亚洲精品成人a8198a | 久久久久精 | 亚洲精品一区二区三区精华液 | 成人黄色电影小说 | 天天插天天操天天干 | 天堂av中文在线 | 国产精品久久久久久久岛一牛影视 | 日韩国产欧美一区 | 99色视频| 精品视频久久久 | 亚洲欧美综合精品久久成人 | 欧美成年黄网站色视频 | 国产艹 | 黄色片地址 | a级黄色毛片免费观看 | 久久这里只有精品23 | 本道综合精品 | 91在线免费观看 | 久久精品视频免费看 | 日韩久久久久久 | 一区影院| 午夜电影在线看 | 日韩精品一区二区三区老鸭窝 | 成人a在线| 国产一级电影网 | 亚洲一区二区三区爽爽爽爽爽 | 亚洲一区国产精品 | 免费亚洲一区二区 | 久久国产婷婷国产香蕉 | 人人人人人你人人人人人 | 女同理伦片在线观看禁男之园 | 丁香五月网久久综合 | 中国av在线| 精品日韩一区二区 | 一区二区国产在线观看 | 国产农村妇女精品久久 | 精品中文在线 | 久久窝| 色偷偷噜噜噜亚洲男人 | 久久伊人在| 四虎影院最新网站 | 蜜桃色网 | 国产亚洲欧美在线 | 黄色一级毛片免费 | 亚洲午夜精品一区二区三区 | 久久久久久久久久久久久久av | 亚洲 中文 欧美 日韩 在线观看 | 亚州中文字幕 | 精品福利在线视频 | 国产中文视频 | 亚洲天堂一区 | 在线免费观看av片 | 日韩精品一区二区三区在线 | 国产美女久久 | 欧美精品三区 | 国产精品久久国产精品99 gif | 99re视频在线观看 | 久久亚洲综合 | 亚洲精品乱码久久久久久国产主播 | 欧美在线 | www.99精品| 日日干夜夜操 | 97人人爱| 日韩一区二区精品视频 | 国产精品精品视频一区二区三区 | 一区二区亚洲视频 | 欧美涩涩网 | 99久精品| 日韩欧美在线综合 | 欧美一区二区 | 日韩欧美国产精品综合嫩v 亚洲欧美日韩在线 | 久久精品国产99国产 | 亚洲欧美激情精品一区二区 | 国产精品久久婷婷六月丁香 | 91精品综合久久久久久五月天 | 欧美一区二区三区国产精品 | 99国产视频 | 男女免费在线观看视频 | a一级免费视频 | 免费观看黄a一级视频 | 国产精品一区二区视频 | 免费视频久久久久 | 一呦二呦三呦国产精品 | 国产激情精品视频 | 日韩一区二区不卡 | 美女国产精品 | 国产一级高清视频 | 91精品久久久久久久 | 亚洲男人网 | 国产精品2019 | 天天天天天天操 | 91国偷自产一区二区三区亲奶 | 在线中文| 国产成人精品免高潮在线观看 | 亚洲视频在线看 | 亚洲国产精品自拍 | 日本精品视频在线观看 | 91精品国产综合久久福利软件 | 国产91久久精品一区二区 | 在线色网站 | 人成亚洲| 国产色| 97精品国产97久久久久久免费 | 精品一区二区三区免费视频 | 涩涩视频在线免费看 | 视频一区二区国产 | 国产欧美精品 | avmans最新导航地址 | 国产激情偷乱视频一区二区三区 | 久久精品国产亚卅av嘿嘿 | 欧美视频免费在线 | 91在线精品秘密一区二区 | 日韩在线精品视频 | 亚洲人成中文字幕在线观看 | 中文字幕av一区 | 午夜天| 欧美黑人一级爽快片淫片高清 | 日韩一区二区三区在线视频 | 国产精品自产拍在线观看 | 国产亚洲成av人片在线观看桃 | 黄色一级片看看 | 亚洲精品在线视频 | 自拍偷拍99 | 成人福利在线 | 日韩欧美精品一区二区三区 | 一区二区久久 | 成人午夜性a一级毛片免费看 | 日本久久精品一区二区 | 一级黄色大片在线 | 久久99久久久久久 | 一区二区av在线 | 看全黄大色黄大片老人做 | 国产色 | 伊人影视| 日本成人福利视频 | 福利视频一区 | 国产一区二区三区四区在线观看 | 超碰人人射 | 色www精品视频在线观看 | 欧美乱码久久久久久蜜桃 | 日本一区二区视频 | 亚洲一区不卡在线 | 日韩成人精品在线 | 99国产精品99久久久久久 | 成人午夜视频网 | 亚洲午夜在线 | 一区二区精品在线观看 | 福利二区 | 麻豆精品国产传媒 | 欧美精品欧美精品系列 | 久久久成人精品 | 亚洲美女性视频 | 久久99久久99精品免视看婷婷 | 国产精品久久久久久亚洲调教 | 成人aaa| 欧美一级二级三级视频 | 午夜影院免费观看 | 久久伊人成人 | 亚洲伊人久久综合 | 国产精品高潮呻吟av久久4虎 | 中文字幕亚洲二区 | 精品亚洲一区二区三区 | 国产免费一区二区 | 国产成人精品久久二区二区91 | 亚洲国产精品va在线看黑人 | 国产成人aⅴ | 中文字幕99| 国产精品视频一区二区免费不卡 | 成人美女免费网站视频 | 一级黄色毛片免费 | 99热精品在线 | 久久成人久久爱 | 久草成人网| 久久久久久久国产精品 | 成年免费a级毛片 | 成人精品在线 | 国产中文一区 | 亚洲h| 日韩精品www| 国产精品毛片久久久久久久 | 国产成人精品999在线观看 | 91成人区 | 亚洲欧美日韩另类一区二区 | 久久久久久毛片免费播放 | 99热这里有 | 午夜一区二区三区 | 国产一区在线不卡 | 亚洲网站免费 | 日韩欧美在线观看视频网站 | 亚洲免费在线观看视频 | 成年人视频在线观看免费 | 国产一级一级国产 | 国产黄色在线观看 | 国产成人免费视频网站视频社区 | 国产精品中文字幕在线播放 | 中文字幕爱爱视频 | 精品av| 黑人巨大精品欧美一区二区三区 | 精品国产视频 | 成年人在线看 | 欧美成人h版在线观看 | 女男羞羞视频网站免费 | 久久国产精品免费一区二区三区 | 精品久久久久久久 | 国产成人精品999在线观看 | 黄色片在线免费看 | 亚洲欧美精品 | 最新高清无码专区 | 午夜精品久久久久 | 欧美成人精品一区 | 精品国产一区二区三区四区 | 欧美亚洲视频在线观看 | 国产精品夜间视频香蕉 | 久久这里只有精品免费 | 日韩国产欧美一区 | 久久精品1区2区 | 午夜精品一区二区三区在线视频 | 日韩在线播放一区 | 亚洲一区中文字幕 | 日韩中文字幕免费视频 | 日本免费电影一区 | 精品一区二区三区在线观看 | 亚洲精品国产setv | 久久久成人精品视频 | 亚洲精品在线免费 | 亚洲免费成人 | 久久国产精品免费一区二区三区 | 97超碰在线播放 | 国产午夜久久 | 成人免费淫片aa视频免费 | 成人免费看电影 | 亚洲视频免费观看 | 成人免费网站www网站高清 | 天天想天天干 | 国产一级视频 | 后进极品白嫩翘臀在线视频 | 久久一道本 | av国产精品毛片一区二区小说 | 成年人在线观看视频 | 亚洲免费视频网址 | 久热中文在线 | 精品亚洲永久免费精品 | av网战| 成人精品一区二区三区中文字幕 | 夜夜av| 久久99久久99精品免视看婷婷 | 欧美亚洲性视频 | 欧洲成人午夜免费大片 | 亚洲综合在线视频 | 欧美日韩在线播放 | www97影院| www.天天操| 禁果av一区二区三区 | 欧美日韩在线一区二区三区 | 久久久久久国产精品mv | 成人亚洲视频 | 国产乱码精品一区二区三区忘忧草 | 日韩欧美在线一区 | 久久精品视频网站 | 欧美日本乱大交xxxxx | 在线看www| 国产精品成人久久久久 | 99精品久久久 | 国产91九色| 天天操妹子 | 欧美日韩一区二区三区在线观看 | 亚洲91精品 | 日韩中文字幕在线观看 | 欧美日韩91 | 午夜爽| 日韩成人在线观看 | 精品成人一区二区 | 免费观看一级黄色片 | 午夜在线小视频 | 欧美另类综合 | 久草在线视频网 | 毛片链接| 在线h观看 | 日本久久精品视频 | 97色免费视频 | 成人羞羞在线观看网站 | 国产精品久久国产精麻豆99网站 | 视频在线一区 | 国产精品日产欧美久久久久 | 狠狠综合久久av一区二区小说 | 国产视频精品免费 | 精品久久久久久久久久久久久久久久久久久 | 日韩国产在线播放 | 久久久91| 在线成人av | 91精品国产综合久久久久久漫画 | 久久黑人| 欧美色爽 | 一区二区日本 | 午夜妇女aaaa区片 | 日日操狠狠操 | 中文字幕av一区二区三区 | 欧美日韩精品一区二区 | 日韩极品视频 | 黄色高清视频在线观看 | 国产在线视频一区二区 | 伊人激情综合 | 久久成人一区二区 | 91久久久久久久久久久久久久 | 国产人妖在线 | 成人美女免费网站视频 | 欧美精品乱码久久久久久按摩 | 在线观看av网站永久 | 日韩免费视频一区二区 | 黄毛片 | 精品国产一区二区三区性色av | 国产一区二区 | 国产精品久久久久免费 | 国产精品色婷婷亚洲综合看 | 国产精品夜间视频香蕉 | 国产成人av电影 | 又黄又爽的网站 | 日日操操 | 91麻豆精品国产91久久久资源速度 | 在线区| 精品国产成人 | 成人特区 | 久久久精品国产 | 日韩第一页 | 最近免费中文字幕大全免费版视频 | 国产精品一区人伦免视频播放 | 日韩成人三级 | 欧美激情一区二区三区 | 欧美激情伊人 | 爱爱视频在线观看 | 69免费视频 | 性欧美大战久久久久久久免费观看 | 国产一区二区三区久久久 | 亚洲h视频 | 日韩av一区二区三区在线观看 | 密室大逃脱第六季大神版在线观看 | 亚洲综合久久网 | 国产免费一区 | 超碰免费观看 | 不卡视频一区二区三区 | 国产精品久久久久久婷婷天堂 | 伊人www| 精品国产乱码久久久久久蜜臀 | 91在线看| 久久精品在线 | 91在线视频播放 | 欧美午夜一区 | 成人av一区二区三区 | 日韩三级电影在线免费观看 | 亚洲国产二区 | 日韩成人免费视频 | 久久久久国产一级毛片高清版小说 | 国产精品九九九 | 91精品中文字幕一区二区三区 | 免费一区二区三区 | jizz18毛片 | 国产情侣免费视频 | 国产一级片a| 在线免费观看日韩视频 | 亚洲区在线 | 国产91网址 | 偷拍自拍亚洲欧美 | 四虎影院免费看 | 欧美一级在线 | 亚洲激情在线 | 欧美激情在线播放 | 99热最新网站 | 色毛片| 黄色片网站在线观看 | 中文字幕精品三级久久久 | 欧日韩免费视频 | 欧美精品99| 欧美日韩在线精品 | 亚洲卡一| 精品人伦一区二区三区蜜桃视频 | 精品国产一区二区三区成人影院 | 国产精品久久精品 | 丝袜+亚洲+另类+欧美+变态 | 欧美日韩一区二区三区四区 | 精品久久久久久久久久久久久久 | jlzzxxxx18hd护士 | 自拍视频在线观看 | av一区二区三区 | 免费视频一区二区 | 欧美成人综合 | 亚洲欧美第一页 | 亚洲福利在线观看 | av毛片在线免费看 | www.xxx免费 | 人操人人 | 亚洲一区二区三区四区五区中文 | 国产a一三三四区电影 | 日韩在线一区二区 | 久久精品1区 | 伊人久操 | 爱爱网av | 91亚洲国产成人久久精品网站 | 精品国产一区二区三区久久久蜜 | 精品少妇一区二区三区在线播放 | 男女黄色免费网站 | 国产成人av一区二区三区 | 中文字幕一区二区三区乱码在线 | 亚洲一区二区在线视频 | 亚洲热av| 久久99精品久久久久久噜噜 | 成人网av | 中文字幕精品一区 | 久久精品二区 | 欧美一区二区视频 | 久久久婷婷| 天堂一区 | 国产精品久久久久久福利一牛影视 | 亚洲成人在线视频观看 | 在线观看成人高清 | 成人h动漫免费观看网站 | 久草久草 | 国产精品视频yy9299一区 | 国外成人在线视频网站 | 中国大陆高清aⅴ毛片 | 日韩一区二区不卡 | 亚洲午夜电影 | 国产在线看h | 国产区在线观看 | 日韩亚洲一区二区 | 久热精品视频 | 亚洲精品一区二区三区蜜桃下载 | 国产精品99久久久久久久vr | 伊人激情四射 | 中文字幕av在线 | 日日天天 | 久久免费精品 | 激情综合在线 | 91精品久久久久久久久久入口 | 国产精品九九九 | 国产日韩精品一区 | 麻豆网址 | 久久精品一区二区 | 国产亚洲综合精品 | 91在线播 | 干干日日| 岛国av免费看| 午夜精品一区二区三区免费视频 | 国产成人精品亚洲日本在线观看 | 国产免费天天看高清影视在线 | 亚洲网站在线播放 | 99久久这里只有精品 | 免费黄色小视频 | 久久久国产视频 | 大胸av| 中文字幕 国产精品 | 日本欧美大片 | 一级篇| 色婷婷一区二区三区四区 | 久久精品国产免费 | 亚洲视频观看 | 69av.com| 欧美成人一区二区三区片免费 | 亚洲免费av在线 | 久久亚洲91| 丁香亚洲| 在线观看成人 | 国产精品2区| 成人福利在线观看 | 国产成人涩涩涩视频在线观看 | 色黄视频在线观看 | 超碰最新网址 | 国产一区二区av在线 | 欧美成人午夜视频 | av一二 | av中文在线 | 老司机精品福利视频 | 成人国产网站 | 亚洲国产一区二区三区 | 另类天堂| 亚洲精品一区中文字幕乱码 | 影音先锋亚洲资源 | 国产成人综合av | a毛片毛片av永久免费 | 精品一区二区三区四区 | 欧美激情在线精品一区二区三区 | 国产精品久久久久久久午夜 | 亚洲国产精品成人久久久 | 欧美午夜精品久久久久久浪潮 | 五月婷婷丁香婷婷 | 一区二区三区国产好 | 欧美一级在线观看 | 久久精品国产亚卅av嘿嘿 | 9久久精品 | 91精品久久久久久久久久入口 | 久久手机视频 | 日本久久免费 | www在线视频 | 欧美极品欧美精品欧美视频 |