日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android 内存检测工具

發布時間:2023/12/3 Android 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android 内存检测工具 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

所謂內存泄漏,是指本該被回收的內存由于某種原因繞開了GC回收算法,從而導致該內存無法被有效數據使用而使得總內存減小的情況。

內存泄漏會導致內存消耗的增加,大量的消耗會使得APP OOM,特別是在一些內存比較小的機器上。下面我們看看有哪些工具可以用來分析內存泄漏。

Heap Dump

Heap Dump的主要功能就是查看不同的數據類型在內存中的使用情況。它可以幫助你找到大對象,也可以通過數據的變化發現內存泄漏。

使用Heap Dump

打開Android Device Monitor工具,在左邊Devices列表中選擇要查看的應用程序進程,點擊Update Heap按鈕,在右邊選擇Heap選項,并點擊Cause GC按鈕,就會開始顯示數據。我們每次點擊Cause GC按鈕都會強制應用程序進行垃圾回收,并將清理后的數據顯示在Heap工具中。如下圖所示。

從上圖可以看出,Heap工具共有三個區域,分別是總覽視圖(上部)、詳情視圖(中部)和內存分配柱狀圖(下部)。

總覽視圖

其中總覽視圖可以查看整體的內存情況,表中的顯示信息如下所示:

  • Heap Size 堆棧分配給該應用程序的內存大小
  • Allocated 已使用的內存大小
  • Free 空閑的內存大小
  • %Used 當前Heap的使用率(Allocated/Heap Size)
  • #Objects 對象的數量

詳情視圖

詳細視圖展示了所有的數據類型的內存情況,表中列的信息如下所示:

  • Total Size 總共占用的內存大小
  • Smallest 將該數據類型的對象從小到大排列,排在第一個的對象所占用的內存
  • Largest 將該數據類型的對象從小到大排列,排在最后一個的對象所占用的內存
  • Median 將該數據類型的對象從小到大排列,排在中間的對象所占用的內存
  • Average 該數據類型的對象所占用內存的平均值

除了列的信息,還有行信息:

  • data object 對象
  • class object 類
  • 1-byte array (byte[],boolean[]) 1字節的數組對象
  • 2-byte array (short[],char[]) 2字節的數組對象
  • 4-byte array (object[],int[],float[]) 4字節的數組對象
  • 6-byte array (long[],double[]) 8字節的數組對象
  • non-Java object 非Java對象

行信息中兩個比較重要的參數:
free—它與總覽視圖中的free的含義不同,它代表內存碎片。當新創建一個對象時,如果碎片內存能容下該對象,則復用碎片內存,否則就會從free空間(總覽視圖中的free)重新劃分內存給這個新對象。free是判斷內存碎片化程度的一個重要的指標。
1-byte array—圖片是以byte[]的形式存儲在內存中的,如果1-byte array一行的數據過大,則需要檢查圖片的內存管理了。

檢測內存泄漏

我們先寫一個內存泄漏的例子:
MainActivity:

public class MainActivity extends AppCompatActivity {private Button button;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button =(Button)findViewById(R.id.bt_next);button.setText("SecondActivity");button.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {startActivity(new Intent(MainActivity.this,SecondActivity.class));}});} }

SecondActivity:

public class SecondActivity extends AppCompatActivity {private static Object inner;private Button button;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button = (Button) findViewById(R.id.bt_next);button.setText("MainActivity");button.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {createInnerClass();finish();}});}class InnerClass {}private void createInnerClass() {inner = new InnerClass();} }

內存泄漏的原因很簡單,SecondActivity的內部類InnerClass Hold住了外部類實例的引用,而InnerClass的實例是靜態的,就會間接的長期維持著外部類實例的引用,阻止被系統回收,導致SecondActivity實例不能被釋放。

Heap Dump檢測內存泄漏:通常做法是使用Update Heap進行內存監聽,然后操作可能發生泄漏的APP功能、界面,并點擊Cause GC進行手動GC,經過多次操作后查看data object的Total Size大小是否有很大的變化,如果有則可能發生了內存泄漏,導致內存使用不斷增大。

步驟:
(1)在左邊Devices列表中選擇要查看的應用程序進程,點擊Update Heap按鈕,在右邊選擇Heap選項,并點擊Cause GC按鈕,就會開始顯示數據,如下圖所示。

(2)在MainActivity和SecondActivity間跳轉多次。這樣會生成多個SecondActivity實例且不能釋放。重新點擊Update Heap和Cause GC按鈕,顯示新的數據。

可以看到data object由610.500KB增長到1.158MB

(3)這時我點擊Cause GC按鈕,數據顯示為:

經過Cause GC的操作,Total Size的值從1.158MB變為了667.109KB,這是一個比較大的變化,說明在Cause GC操作之前有518.683KB(1.158MB-667.109KB)的內存沒有被回收,可能發生了內存泄漏。你多GC幾次,甚至會釋放更多的內存。

Allocation Tracker

使用Heap Dump可以讓你對APP的內存整體使用情況進行掌控,但缺點是無法了解每塊內存具體分配給哪個對象了,這時就需要使用Allocation Tracker工具來進行內存跟蹤。它允許你在執行某些操作的同時監視在何處分配對象,了解這些分配使你能夠調整與這些操作相關的方法調用,以優化應用程序性能和內存使用。

Allocation Tracker能夠做到如下的事情:

  • 顯示代碼分配對象類型、大小、分配線程和堆棧跟蹤的時間和位置。
  • 通過重復的分配/釋放模式幫助識別內存變化。
  • 當與 HPROF Viewer結合使用時,可以幫助你跟蹤內存泄漏。例如,如果你在堆上看到一個bitmap對象,你可以使用Allocation Tracker來找到其分配的位置。

使用Allocation Tracker

AS和DDMS中都有Allocation Tracker,這里會介紹AS中的Allocation Tracke如何使用。
使用的步驟為:

  • 運行需要監控的應用程序。
  • 點擊AS面板下面的Android Monitors選項,查看
  • 點擊Start Allocation Tracking按鈕
  • 操作應用程序。
  • 點擊Stop Allocation Tracking按鈕 ,結束快照。這時Memory Monitor會顯示出捕獲快照的期間,如下圖所示。

  • 過幾秒后就會自動打開一個窗口,顯示當前生成的alloc文件的內存數據。

alloc文件分析

該alloc文件顯示以下信息:

  • Method—負責分配的Java方法
  • Count—分配的實例總數
  • Total Size—分配內存的總字節數

目前的菜單選項是Group by Method我們也可以選擇 Group By Allocator,如下圖所示

同樣是上面的demo,我們在MainActivity和SecondActivity間跳轉了5次。
可以看到SecondActivity生成了5個匿名內部類OnClickListener實例(SecondActivity$1 表示它的第一個匿名內部類)和5個內部類InnerClass的實例,每個實例16個字節,且都沒有被釋放內存。

我們可以選擇列表中的一項,單擊鼠標右鍵,在彈出的菜單中選擇jump to the source就可以跳轉到對應的源文件中。
除此之外,還可以點擊Show/Hide Chart按鈕來顯示數據的圖形化,如下圖所示。

MAT

如果想要深入的進行分析并確定內存泄漏,就要分析疑似發生內存泄漏時所生成堆存儲文件。堆存儲文件可以使用DDMS或者Memory Monitor來生成,輸出的文件格式為hprof,而MAT就是來分析堆存儲文件的。

MAT,全稱為Memory Analysis Tool,是對內存進行詳細分析的工具,它是Eclipse的插件,如果用Android Studio進行開發則需要單獨下載它,下載地址為:http://eclipse.org/mat/。

生成hprof文件

我們這里分析一下用AS的Memory Monitor來生成hprof文件。

我們還是先寫一個內存泄漏的例子:

public class MainActivity extends AppCompatActivity {private Button button;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button =(Button)findViewById(R.id.bt_next);button.setText("SecondActivity");button.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {startActivity(new Intent(MainActivity.this,SecondActivity.class));}});} } public class SecondActivity extends AppCompatActivity {private Button button;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button = (Button) findViewById(R.id.bt_next);button.setText("MainActivity");button.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {LeakThread leakThread = new LeakThread();leakThread.start();finish();}});}class LeakThread extends Thread {@Overridepublic void run() {try {Thread.sleep(60 * 60 * 1000);} catch (InterruptedException e) {e.printStackTrace();}}} }

內存泄漏的原因是非靜態內部類LeakThread Hold住了外部類的引用,而LeakThread中做了耗時操作,導致外部類SecondActivity無法被釋放。

生成hprof文件主要分為一下幾個步驟:

  • 運行需要監控的應用程序。
  • 點擊AS面板下面的Android Monitors選項,查看
  • 操作應用程序(本文的例子就是不斷切換Activity)。
  • 點擊Dump Java Heap按鈕 ,生成hprof文件。

Memory Monitor生成的hprof文件不是標準的,AS提供了便捷的轉換方式:Memory Monitor生成的hprof文件都會顯示在AS左側的Captures標簽中,在Captures標簽中選擇要轉換的hprof文件,并點擊鼠標右鍵,在彈出的菜單中選擇Export to standard.hprof選項,即可導出標準的hprof文件,如下圖所示。

MAT分析hpof文件

用MAT打開標準的hprof文件,選擇Leak Suspects Report選項。這時MAT就會生成報告,這個報告分為兩個標簽頁,一個是Overview,一個是Leak Suspects,如下圖所示。

Leak Suspects中會給出了MAT認為可能出現內存泄漏問題的地方,本例共給出了4個內存泄漏猜想,通過點擊每個內存泄漏猜想的Details可以看到更深入的分析清理情況。如果內存泄漏不是特別的明顯,通過Leak Suspects是很難發現內存泄漏的位置。

打開Overview標簽頁,首先看到的是一個餅狀圖,它主要用來顯示內存的消耗,餅狀圖的彩色區域代表被分配的內存,灰色區域的則是空閑內存,點擊每個彩色區域可以看到這塊區域的詳細信息,如下圖所示。

再往下看,Actions一欄的下面列出了MAT提供的四種Action,其中分析內存泄漏最常用的就是Histogram和Dominator Tree。Histogram可以統計內存中對象的名稱、種類、實例數和大小,而Dominator Tree則是建立這些內存對象之間的關系。
我們點擊Actions中給出的鏈接或者在MAT工具欄中就可以打開Histogram和Dorminator Tree。

Histogram

圖中可以看出Dorminator Tree有四列數據。

  • Class Name:類名
  • Objects:對象實例的個數
  • Shallow Heap:對象自身占用的內存大小,不包括它引用的對象。如果是數組類型的對象,它的大小是數組元素的類型和數組長度決定。如果是非數組類型的對象,它的大小由其成員變量的數量和類型決定。
  • Retained Heap:一個對象的Retained Set所包含對象所占內存的總大小。換句話說,Retained Heap就是當前對象被GC后,從Heap上總共能釋放掉的內存。

在列表頂部的Regex區域,可以輸入過濾條件(支持正則表達式),通常Activity的內存泄漏,可以直接通過輸入Activity名獲取與之相關的的實例。

可以看到,SecondActivity實例創建了11次,基本可以判斷內存泄漏了。具體是如何泄漏的呢?可以通過查看GC對象的引用鏈來分析。在SecondActivity上右鍵,選擇Merge Shortest Paths to GC Root,并通過彈出的列表選擇相關類型的引用(強、軟、弱、虛),分析不同引用類型下的GC情況,這里我們選擇exclude all phantom/weak/soft etc. references,因為這個選項排除了虛引用、弱引用和軟引用,這些引用一般是可以被回收的。這時MAT就會給出SecondActivity的GC引用鏈。

到這里整個內存泄漏一目了然了,引用SecondActivity的是內部類LeakThread,this$0的含義就是內部類自動保留的一個指向所在外部類的引用,而這個外部類就是SecondActivity,導致SecondActivity無法被GC。

同時,在Histogram中還可以查看一個對象包含了哪些對象的引用。例如查看SecondActivity包含的引用,在SecondActivity上右鍵,選擇List objects—with incoming references(顯示選中對象被哪些外部對象引用,而with outcoming references表示選中對象持有哪些對象的引用)

Dominator Tree

Dorminator Tree意味支配樹,從名稱就可以看出Dorminator Tree更善于去分析對象的引用關系。而Histogram更側重于量的分析。

Shallow Heap和Retained Heap的含義和上面Histogram中的一樣。

同樣過濾SecondActivity:

發現有些圖標帶有小圓點,表示它們可以被GC系統訪問到,是內存泄漏的重點懷疑對象。那么SecondActivity沒有原點,是不是代表不能被GC訪問,可以回收呢?當然不是,如果可以回收,又怎么會存在這么多的實例呢。那怎么找到它的GC Root呢?在SecondActivity上右鍵,選擇Path To GC Roots,同樣選擇exclude all phantom/weak/soft etc. references

得出的結果和上面是一樣的,引用SecondActivity的是LeakThread,這導致了SecondActivity無法被GC。

OQL

OQL全稱為Object Query Language,類似于SQL語句的查詢語言,能夠用來查詢當前內存中滿足指定條件的所有的對象。它的查詢語句的基本格式為:

SELECT * FROM [ INSTANCEOF ] <class_name> [ WHERE <filter-expression>]

當我們點擊OQL按鈕,輸入條件select * from instanceof android.app.Activity并按下F5時(或者按下工具欄的紅色嘆號),會將當前內存中所有Activity都顯示出來,如下圖所示。

更過用法詳見官方文檔。

LeakCanary

LeakCanary 是一個開源的在debug版本中檢測內存泄漏的java庫。

使用LeakCanary

在APP的build.gradle文件添加:

dependencies {debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5.2'releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.2' }

接下來在Application加入如下代碼

public class BaseApplication extends Application {@Override public void onCreate() {super.onCreate();//如果當前的進程是用來給LeakCanary進行堆分析的則returnif (LeakCanary.isInAnalyzerProcess(this)) {return;}LeakCanary.install(this);} }

上面代碼只能夠檢測Activity的內存泄漏,當然還存在其他類的內存泄漏,這時我們就需要使用RefWatcher來進行監控。改寫Application,如下所示

public class BaseApplication extends Application {private RefWatcher refWatcher;@Override public void onCreate() {super.onCreate();refWatcher= setupLeakCanary();}private RefWatcher setupLeakCanary() {//如果當前的進程是用來給LeakCanary進行堆分析的則returnif (LeakCanary.isInAnalyzerProcess(this)) {return RefWatcher.DISABLED;}return LeakCanary.install(this);}public static RefWatcher getRefWatcher(Context context) {BaseApplication baseApplication = (BaseApplication) context.getApplicationContext();return baseApplication.refWatcher;} }

這里我們仍然使用上一節的demo,只是在SecondActivity中實現onDestroy方法,其中得到RefWatcher,并調用它的watch方法,watch方法的參數就是要監控的對象。

public class SecondActivity extends AppCompatActivity {private Button button;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button = (Button) findViewById(R.id.bt_next);button.setText("MainActivity");button.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {LeakThread leakThread = new LeakThread();leakThread.start();finish();}});}class LeakThread extends Thread {@Overridepublic void run() {try {Thread.sleep(60 * 60 * 1000);} catch (InterruptedException e) {e.printStackTrace();}}}@Overrideprotected void onDestroy() {super.onDestroy();RefWatcher refWatcher = BaseApplication.getRefWatcher(this);refWatcher.watch(this);} }

其實這個例子中onDestroy方法是多余的,因為LeakCanary在調用install方法時會啟動一個ActivityRefWatcher類,它用于自動監控Activity執行onDestroy方法之后是否發生內存泄露。這里只是為了方便舉例,如果想要監控Fragment,在Fragment中添加如上的onDestroy方法是有用的。

操作

運行程序,這時會在界面生成一個名為Leaks的應用圖標。接下來不斷的切換Activity,這時會閃出一個提示框,提示內容為:“Dumping memory app will freeze.Brrrr.”。再稍等片刻,內存泄漏信息就會通過Notification展示出來

Notification中提示了MainActivity發生了內存泄漏, 泄漏的內存為4.3KB。點擊Notification就可以進入內存泄漏詳細頁,除此之外也可以通過Leaks應用的列表界面進入,列表界面如下圖所示

點擊加號就可以查看具體類所在的包名稱。整個詳情就是一個引用鏈:SecondActiviy的內部類LeakThread引用了LeakThread的this0this0的含義就是內部類自動保留的一個指向所在外部類的引用,而這個外部類就是詳情最后一行所給出的SecondActiviy的實例,這將會導致SecondActiviy無法被GC,從而產生內存泄漏。

除此之外,我們還可以將 heap dump(hprof文件)和info信息分享出去,如下圖所示。

需要注意的是分享出去的hprof文件并不是標準的hprof文件,還需要將它轉換為標準的hprof文件,這樣才會被MAT識別從而進行分析。

總結

以上是生活随笔為你收集整理的Android 内存检测工具的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

在线免费av电影 | 国内一区二区视频 | 久久99久久99精品免观看软件 | 日躁夜躁狠狠躁2001 | 色一色在线 | 热久久精品在线 | 伊人久久国产精品 | 亚洲欧美国产视频 | 美女免费视频黄 | 久久综合激情 | 一区二区三区四区精品视频 | 天天爽天天做 | 在线看中文字幕 | 亚洲精品免费在线观看视频 | 成人午夜剧场在线观看 | 久日视频 | 国产精品18videosex性欧美 | 一级性视频 | 国产黄在线看 | 久久五月婷婷丁香 | 久久av免费 | 成年人免费看av | 天天干天天搞天天射 | 亚洲激情网站免费观看 | 日韩一区二区三区免费视频 | 波多野结衣久久资源 | 91精品欧美一区二区三区 | 亚洲精品99久久久久中文字幕 | 国产亚洲精品美女 | 婷婷综合网 | 久久免费视频在线观看30 | 97视频免费看 | 色视频成人在线观看免 | 国产黄色网 | 久久精品系列 | 久草在线视频网 | 亚洲免费av观看 | 五月婷婷婷婷婷 | 91麻豆精品国产91久久久无需广告 | 五月婷婷视频在线观看 | 免费在线观看国产黄 | 国产视频精品久久 | 欧美精品一区二区在线观看 | 亚洲资源片 | 极品美女被弄高潮视频网站 | 国产精品视频你懂的 | 91视频91蝌蚪| 91av在线视频播放 | 国产在线探花 | 天天色图 | 激情图片区 | 日韩av伦理片 | 狠狠躁夜夜躁人人爽视频 | 国产精品久久久久亚洲影视 | 久久精品在线免费观看 | 特级黄色片免费看 | 日韩成人av在线 | 久久人人爽人人爽人人片av免费 | 亚州精品在线视频 | 亚洲三级国产 | 伊人干综合 | 黄色91在线 | 在线视频观看国产 | 成人av在线影视 | 美女黄频视频大全 | 最近中文字幕高清字幕免费mv | www.eeuss影院av撸| 五月天色综合 | 国产原厂视频在线观看 | 国产高清av在线播放 | 奇米网777 | 亚洲成aⅴ人片久久青草影院 | 91 在线视频| 黄色小说18| 国内精品久久久久久久久久久久 | 色综合www | 日本黄色大片免费看 | 国产一区在线看 | 日韩精品久久久久久 | 婷五月激情 | 亚洲国产精品一区二区久久,亚洲午夜 | 中文字幕在线免费看线人 | 99在线热播 | 2023天天干| 久久伊人国产精品 | 中国一区二区视频 | 999视频在线观看 | 日本三级中文字幕在线观看 | 日韩在线视频免费播放 | 五月激情丁香图片 | 天天色天天操天天爽 | 激情在线五月天 | 国产精品一区二区美女视频免费看 | 国产成人精品国内自产拍免费看 | 日韩午夜高清 | 97超级碰碰 | 香蕉免费 | 欧美91精品| 天天干,天天射,天天操,天天摸 | 成人av影视在线 | 国产精品资源在线 | 91久久一区二区 | 久久久久久欧美二区电影网 | 婷婷国产精品 | 日韩午夜高清 | 99精品免费| 久久国产麻豆 | 午夜久久久久久久久久久 | 五月天亚洲激情 | 中文字幕永久在线 | 日韩在线资源 | 亚洲爽爽网| 天天操天天摸天天干 | 麻豆视频免费在线观看 | 99久久99久久| www.玖玖玖 | 成人网在线免费视频 | 亚洲欧洲精品一区 | 日韩精品一区二区三区三炮视频 | 在线午夜 | 午夜精品福利一区二区三区蜜桃 | 久久字幕网 | 激情视频综合网 | 日韩在线视频免费观看 | 黄色特级毛片 | 久热香蕉视频 | 一级黄色片在线观看 | 亚洲第一区精品 | 韩国av电影网 | 精品国产一区二区三区四 | 中文字幕免费一区 | 久久成人人人人精品欧 | 最近中文字幕第一页 | 免费在线激情电影 | 久久综合婷婷国产二区高清 | 色久综合 | 亚洲精品在线免费播放 | 国产精品欧美一区二区三区不卡 | 亚洲区精品视频 | 日韩不卡高清 | 久久综合免费视频影院 | 黄色av一区 | 99超碰在线观看 | 99久免费精品视频在线观看 | 日韩激情视频在线 | 婷婷午夜激情 | 狠狠操狠狠干天天操 | 国产字幕在线播放 | 久久艹99| 亚洲国产精品推荐 | 日韩av手机在线观看 | 蜜臀av在线一区二区三区 | 超碰电影在线观看 | 国产精品美女久久久久久 | 久在线观看 | 日韩有码中文字幕在线 | 美女视频黄免费网站 | 丁香在线观看完整电影视频 | 久久久久黄色 | 欧美日韩视频在线观看一区二区 | 成年人电影免费看 | 美女网站久久 | 99精品免费久久久久久久久 | 不卡的一区二区三区 | 992tv在线成人免费观看 | 久久欧美综合 | 精品国内自产拍在线观看视频 | 久亚洲 | 丁香六月综合网 | 欧美极品少妇xxxx | 日韩一二区在线观看 | 久久久.com | 久久久久久久久综合 | 九色激情网 | 亚洲国产精品小视频 | 黄色小网站免费看 | 99视频在线精品免费观看2 | 欧美va日韩va | 国产又粗又长又硬免费视频 | 久久久精品国产免费观看同学 | 亚洲在线网址 | av激情五月 | 96视频免费在线观看 | 亚洲最新在线 | 免费看wwwwwwwwwww的视频 久久久久久99精品 91中文字幕视频 | 久久婷婷国产 | 丁香六月色 | 亚洲春色综合另类校园电影 | 美女激情影院 | 五月天堂色 | 国产中文字幕在线视频 | 欧美成年人在线视频 | 国产精品毛片久久久久久 | 国产成人精品在线播放 | 午夜久久久影院 | 黄污在线观看 | 日韩av电影中文字幕在线观看 | h动漫中文字幕 | 精品一区在线 | 97在线精品国自产拍中文 | 亚洲高清色综合 | 久久在视频 | 久久精品视频免费播放 | 4438全国亚洲精品观看视频 | h网站免费在线观看 | 国产高清无av久久 | 日本中出在线观看 | 日韩免费三区 | a成人在线| 日韩免费看视频 | 亚洲区另类春色综合小说校园片 | 麻豆免费视频观看 | 亚洲午夜精品一区 | 成人av网站在线播放 | 99精品欧美一区二区三区黑人哦 | 久久久久久久久亚洲精品 | 亚洲欧美日韩一区二区三区在线观看 | 亚洲精品国产综合99久久夜夜嗨 | 在线观看免费日韩 | 视频在线一区二区三区 | 能在线观看的日韩av | 亚洲成av人影院 | 天堂黄色片 | 国产精品初高中精品久久 | 97在线影视 | 亚洲精品日韩av | 国产无吗一区二区三区在线欢 | 中文字幕在线观看完整版电影 | 韩国av一区 | 亚洲精品99久久久久久 | 日韩av电影国产 | 欧美在线观看视频一区二区三区 | 欧美日韩免费一区二区 | 久久伊人精品一区二区三区 | 中文字幕人成乱码在线观看 | 99视频一区二区 | 成年人在线看视频 | 国产福利小视频在线 | 毛片无卡免费无播放器 | 黄视频网站大全 | 97超碰人人模人人人爽人人爱 | 97网在线观看 | 黄色av电影一级片 | 色橹橹欧美在线观看视频高清 | 99久久电影 | 在线观看一区视频 | 波多野结衣在线中文字幕 | 在线观看视频三级 | 超碰久热 | 亚洲国产成人高清精品 | 黄色电影在线免费观看 | 日韩电影在线一区二区 | 日韩av电影中文字幕 | 日韩在线视频观看 | 色偷偷88888欧美精品久久久 | 最新中文字幕在线观看视频 | 日批在线观看 | 天天干天天想 | 亚洲精品啊啊啊 | 香蕉影视app | 国内精品久久久久影院一蜜桃 | 亚洲午夜精品一区二区三区电影院 | 免费情缘| 日韩在线免费看 | av午夜电影| 成人免费视频网 | 成人中文字幕在线观看 | 久久噜噜少妇网站 | 国产精品 中文字幕 亚洲 欧美 | 五月婷婷在线观看视频 | 国产精品一区二区果冻传媒 | 国产一区二区精品久久91 | 天天干天天干天天干天天干天天干天天干 | 成人三级网站在线观看 | 日韩一区二区三区不卡 | 一区二区三区四区免费视频 | 成人在线视频论坛 | 国产精品久久视频 | 91免费网 | 国产精品久一 | 日韩精品中文字幕在线不卡尤物 | av噜噜噜在线播放 | 亚洲精品小视频在线观看 | 亚洲va韩国va欧美va精四季 | 欧美日韩xxxxx | 丁香六月婷婷开心 | 九色精品在线 | 精品久久久成人 | 成人黄色大片在线观看 | 在线有码中文 | 日韩在线免费播放 | 91成人精品一区在线播放69 | 在线黄色免费av | 久久精彩视频 | 中文字幕视频免费观看 | 中文在线a在线 | 欧美有色 | 色婷婷天天干 | 日夜夜精品视频 | 亚洲精品高清视频 | 成年人视频免费在线 | 五月婷婷在线视频观看 | 91秒拍国产福利一区 | 久久婷婷一区二区三区 | 国产三级视频在线 | 免费在线激情电影 | 97国产大学生情侣酒店的特点 | 国产精品福利一区 | 国产精品对白一区二区三区 | 69国产精品视频免费观看 | 黄色av电影在线观看 | 免费看亚洲毛片 | 国产精品久久久久久久久久免费看 | 欧美精品在线观看 | 2021国产精品视频 | 免费在线激情视频 | 欧美日韩大片在线观看 | 欧美 日韩 国产 成人 在线 | 日韩欧美v | 日韩免费观看一区二区 | 亚洲精品国产精品国自产在线 | 在线观看国产 | www久久九 | 国产精品99蜜臀久久不卡二区 | 婷婷色av| 久久久黄视频 | 美女久久久久久久久久久 | 亚洲理论在线观看 | 亚洲精品欧美视频 | 国产中文字幕一区 | 天天干夜夜爽 | 九九视频免费在线观看 | 成片人卡1卡2卡3手机免费看 | 黄色大全免费网站 | 国产视频中文字幕 | www.国产在线视频 | 911av视频| 波多野结衣资源 | 西西人体4444www高清视频 | 久久理论影院 | 日韩激情视频在线 | 国产精品video爽爽爽爽 | 九九九热精品免费视频观看 | 成人免费视频观看 | 中文字幕中文字幕在线中文字幕三区 | 97视频入口免费观看 | 五月天激情在线 | 久草爱视频 | 亚洲高清在线 | 99 精品 在线 | 国内三级在线 | 婷婷国产一区二区三区 | 午夜精品久久久久久久99婷婷 | 精品国产自在精品国产精野外直播 | 亚洲综合国产精品 | 精品v亚洲v欧美v高清v | 天天天综合网 | 97av影院| 欧美嫩草影院 | 国产免费xvideos视频入口 | 蜜臀av性久久久久蜜臀av | 久久99精品久久只有精品 | 国产精品爽爽爽 | 国产麻豆果冻传媒在线观看 | 成人午夜在线电影 | 欧美人人爱 | 91系列在线 | 综合久久网站 | 久久超碰99 | 狠狠色丁香久久婷婷综 | 国产精彩视频 | 欧美精品三级在线观看 | www日韩欧美| 国产精品免费一区二区三区 | 91香蕉视频在线下载 | 成人av资源在线 | 国产日韩精品一区二区 | 亚洲国产经典视频 | 欧美日韩精品在线观看视频 | 美女网站色在线观看 | 国产v在线观看 | 最新中文字幕在线观看视频 | 97理论电影 | 欧美国产精品一区二区 | 久久午夜网 | 草 免费视频 | 国产亚洲aⅴaaaaaa毛片 | 成人在线电影观看 | 黄色网免费 | 丁香六月在线观看 | 天天射天天艹 | 国内精品久久久久久 | 探花视频在线版播放免费观看 | 国产精品毛片久久蜜 | 91桃花视频 | 国产精品久久久久久久久久白浆 | 91免费网 | 欧美成人精品欧美一级乱 | 婷婷综合亚洲 | 国产精品久久久免费看 | 蜜桃av观看| 国内精品一区二区 | 久久久久亚洲精品国产 | 97电影院在线观看 | 欧美国产日韩在线视频 | 黄色毛片在线观看 | 日韩中文字幕免费视频 | 精品一区二区在线观看 | 手机av电影在线 | 69久久久 | 亚洲视频久久久 | 成人a v视频 | 亚洲精品在线观 | 97精品国产97久久久久久久久久久久 | 伊人五月在线 | 亚洲激情视频在线观看 | 精久久久久 | 午夜男人影院 | 精品在线不卡 | 久免费视频 | 四虎成人精品永久免费av | 午夜久草 | 五月婷婷激情六月 | 日韩三级视频在线观看 | 手机色在线 | 日韩av高清| 国产精品久久久久久久婷婷 | 色婷婷九月 | 97视频网站 | 国产一区二区在线视频观看 | 日本性xxx | 国产精品激情 | 色婷婷伊人 | 婷婷中文字幕在线观看 | 亚洲欧美日韩精品久久奇米一区 | 天天操网站 | 99久免费精品视频在线观看 | 日韩福利在线观看 | 天天操婷婷 | 伊人亚洲综合网 | 国产高清免费 | 日韩久久久久 | 天天操网 | 91一区二区三区久久久久国产乱 | 久久久国产精品久久久 | 日韩在线第一区 | 深爱激情开心 | 在线视频 成人 | 天天色天天射天天操 | 色狠狠干 | 成人免费影院 | 中文网丁香综合网 | 字幕网资源站中文字幕 | 中文字幕视频在线播放 | 99久热在线精品视频 | 国产亚洲日本 | 亚洲涩综合 | 成年人黄色大全 | 国产精品一区二区三区久久久 | 黄色大片视频网站 | 91色在线观看视频 | 色噜噜在线观看 | 国产精品久久视频 | 天天摸天天干天天操天天射 | 久久成人18免费网站 | 91中文字幕永久在线 | 欧美激情精品久久久久久变态 | 天天操夜夜曰 | 黄色av播放 | 欧美色图p | 成人精品一区二区三区中文字幕 | 久久91久久久久麻豆精品 | 中文字幕av在线电影 | 欧美一区二区在线免费看 | 人人插人人做 | 波多野结衣电影一区二区 | 国产精品av久久久久久无 | 97av视频在线 | www视频免费在线观看 | 国产精品理论片在线观看 | 日韩欧美一级二级 | 91丨九色丨蝌蚪丨老版 | av理论电影| 色婷婷骚婷婷 | 在线精品视频免费播放 | 免费视频网 | 欧美男同网站 | 天天干人人插 | 国产精品都在这里 | 在线观看韩国av | 日韩精品网址 | 在线免费看黄网站 | 一级性av | 欧美日韩国产亚洲乱码字幕 | av电影免费观看 | 日韩视频中文字幕在线观看 | 天天操天天添 | av免费网站在线观看 | 在线观看日本高清mv视频 | 这里只有精品视频在线观看 | 免费看国产曰批40分钟 | 超碰97中文| 国产精品久久综合 | 久久大片网站 | 超碰97中文 | 日韩高清dvd | 色噜噜日韩精品一区二区三区视频 | 97视频在线观看播放 | 中文字幕一区二区三区在线视频 | 中文字幕国产视频 | 久久久久久久久久久网站 | 国产不卡一 | 91久久国产自产拍夜夜嗨 | 狠狠操电影网 | 日韩午夜精品 | 国产精品手机播放 | 久久久久成人精品 | 国产成人精品一区二区三区 | 精品国产一区在线观看 | 精品久久久久久久久久久院品网 | 国产精品久久久久久久电影 | 国产1级视频| 成人一级影视 | 婷婷在线视频观看 | 九九九九九精品 | 国产午夜精品福利视频 | 午夜久久久久久久 | 久久久久成人精品 | 超碰人人干人人 | 视频一区二区免费 | 最新中文在线视频 | 欧美日韩视频网站 | 成年人在线观看网站 | 黄色免费电影网站 | 亚洲狠狠婷婷综合久久久 | 少妇bbw搡bbbb搡bbb | 六月天色婷婷 | 天天摸日日操 | 国产资源在线视频 | 国产成人在线播放 | 国产成人亚洲在线观看 | 青春草视频 | 久久久久亚洲精品国产 | 99久久久国产精品免费观看 | 午夜美女wwww | 欧美日韩国产综合一区二区 | 国产精品高清一区二区三区 | 黄色一级大片在线观看 | 91中文字幕 | 亚洲高清视频在线观看 | 亚洲成人av在线电影 | 99r在线视频 | 国产黄在线 | 色多多视频在线观看 | 一区二区三区手机在线观看 | 成年人免费看片 | 四虎影视www | 免费欧美 | 国产精品久久网 | 中文免费在线观看 | www.五月婷 | 日韩在线观看中文 | 正在播放五月婷婷狠狠干 | 五月天综合在线 | 99色资源| 欧美日韩视频观看 | 国产精品一区二区在线免费观看 | 日日躁夜夜躁aaaaxxxx | 深夜免费小视频 | 日韩欧美一区二区在线播放 | 91免费看黄 | 91爱爱中文字幕 | 黄色大片免费网站 | 亚洲一区二区麻豆 | 在线免费观看黄色 | 日韩精品免费一区二区在线观看 | 91精品国自产在线 | 亚洲免费视频在线观看 | 国产成人精品在线 | 亚洲精品成人av在线 | 果冻av在线 | 欧美精品在线一区二区 | 亚洲免费在线看 | 91亚洲在线| 99久久综合国产精品二区 | 亚洲一区二区三区四区在线视频 | 蜜桃视频精品 | 波多野结衣视频一区二区 | 国产一在线精品一区在线观看 | 国产精品一区二区中文字幕 | 四虎永久视频 | 国产对白av | 国产精品原创av片国产免费 | 在线观看麻豆av | 国产麻豆果冻传媒在线观看 | 日韩激情中文字幕 | 国产字幕av | 日韩免费中文字幕 | 中文字幕制服丝袜av久久 | 中文字幕你懂的 | 色综合激情网 | 欧美夫妻性生活电影 | a视频在线观看 | 欧美性护士 | 国产精品久久久久久久久免费 | 亚洲欧美在线综合 | 国产精品黄网站在线观看 | 天天弄天天操 | 国产性xxxx | 日产中文字幕 | 日韩三级免费观看 | 久久视频中文字幕 | 在线国产能看的 | 国产在线v | 综合久久一本 | 国产xvideos免费视频播放 | www.天天色| 久精品一区 | 久久久久伊人 | 中文字幕亚洲欧美日韩2019 | 国产91成人在在线播放 | 国产性xxxx| 青草视频在线播放 | 国产中文字幕视频在线 | www.少妇| 在线中文字幕一区二区 | 日本韩国精品一区二区在线观看 | 国产在线综合视频 | 亚洲婷婷在线视频 | 91黄色免费网站 | 在线看一区 | 国产原厂视频在线观看 | 国语久久 | 免费看特级毛片 | 黄色网免费 | 欧美成天堂网地址 | 天天插天天爽 | 色婷婷88av视频一二三区 | 日韩精品久久久久久久电影99爱 | www.久久99| 亚洲麻豆精品 | 91精品视频在线 | 日韩在线观看视频在线 | 在线精品播放 | 亚洲色图 校园春色 | 久久这里只有精品1 | 精品人人人 | 久久久久久毛片精品免费不卡 | 在线а√天堂中文官网 | 精品视频资源站 | 欧美激情第28页 | 日韩高清在线看 | 久久午夜视频 | 国产成年免费视频 | 婷婷色 亚洲 | 中文字幕在线播放第一页 | 成人av在线电影 | 精品国产欧美一区二区 | 亚洲欧美日韩一级 | 91成人免费电影 | 婷婷在线精品视频 | 久久艹国产视频 | av免费观看在线 | 黄色软件在线观看视频 | 中文字幕在线字幕中文 | 欧美激情综合五月色丁香 | 日本丰满少妇免费一区 | 99国内精品久久久久久久 | 在线观看黄网站 | 国产精品自产拍在线观看 | 日韩欧美在线中文字幕 | 91插插影库 | 天天综合网~永久入口 | 欧美日韩性视频在线 | 国产综合片| 亚洲精品视频免费看 | 国产视频在线播放 | 天天操天天操天天操 | 丝袜美女视频网站 | 91九色综合 | 中文字幕av在线电影 | 亚洲综合最新在线 | 深夜免费福利视频 | 久草在线免费色站 | 国产一区二区不卡在线 | 日韩激情影院 | 日本最新一区二区三区 | 免费看黄在线观看 | 一级黄色电影网站 | av电影久久 | 国产丝袜一区二区三区 | 久久免费视频1 | 小草av在线播放 | 91麻豆精品国产午夜天堂 | 国产成人在线综合 | 特黄一级毛片 | 成人在线观看资源 | 97免费在线观看视频 | 欧美激情精品 | 国产99久久精品 | 国产精品日韩 | 91亚洲精品久久久蜜桃网站 | 久久精品8| 手机在线视频福利 | 青青草久草在线 | av3级在线 | 日韩成人免费在线电影 | 久久综合九色综合97婷婷女人 | 国产精品一区二区视频 | av电影中文字幕在线观看 | 亚洲人视频在线 | 国产精品免费看 | 日本三级中文字幕在线观看 | 91九色视频 | 狠狠网亚洲精品 | 最新极品jizzhd欧美 | 黄色免费大片 | 在线一级片 | av日韩精品 | 一区二区三区在线观看免费视频 | 久久久网 | 亚洲国产免费 | 啪嗒啪嗒免费观看完整版 | 久草视频在线资源站 | a精品视频| 欧美日韩1区2区 | 黄色www在线观看 | 麻豆视频免费在线观看 | 99免费看片 | 久久精品www人人爽人人 | 91麻豆精品国产91久久久久久 | 日韩在线电影一区二区 | 久久试看 | 香蕉在线播放 | 91视频麻豆 | 最新精品国产 | 伊人热 | 91在线视频观看 | 婷婷国产一区二区三区 | 亚洲国产精品成人av | 国产精品久久久久久久久免费看 | 国产精品久久久久久久久久免费看 | 91福利视频一区 | 久久久资源 | 亚洲一级在线观看 | 日韩在线首页 | 婷婷丁香视频 | 97国产精品亚洲精品 | 国产成人一区二区三区电影 | 欧美日韩国产一区二区三区 | 亚洲精品动漫在线 | 中文字幕在线观看的网站 | 久久人人爽爽人人爽人人片av | 久久午夜色播影院免费高清 | 玖玖视频网 | 久久黄色美女 | 免费日韩一区二区三区 | 国产伦理一区 | 精品九九九| www亚洲国产 | 精品国产精品久久一区免费式 | 欧美日韩一级久久久久久免费看 | 一区 在线 影院 | 久草影视在线观看 | 国产三级国产精品国产专区50 | aaawww| 国产在线高清视频 | 欧美性黑人 | 久草精品在线观看 | 久久九九影视网 | 一区二区国产精品 | 婷婷色在线资源 | 久久精品国产一区二区电影 | 欧美日韩在线观看一区 | 久久精品女人毛片国产 | 国产色爽| 国产成人一区二区三区影院在线 | 日韩午夜精品 | 久久久久久久久久久久久久av | 日本公妇在线观看 | 99精品久久99久久久久 | 四虎成人免费影院 | 久久综合亚洲鲁鲁五月久久 | 91在线操| 四虎影视8848dvd | 日韩精品五月天 | 欧美另类xxx| 四川bbb搡bbb爽爽视频 | 最近字幕在线观看第一季 | 在线小视频你懂得 | 日本激情动作片免费看 | 免费国产一区二区 | 国产婷婷视频在线 | 国产这里只有精品 | 成人va在线观看 | 中文字幕欧美激情 | 最近日本韩国中文字幕 | 国产区在线视频 | 91高清视频在线 | 免费观看成人 | 欧美日韩精品国产 | 亚洲国产偷 | 日韩高清精品一区二区 | 日韩久久网站 | 一级黄色在线视频 | 欧美精品黑人性xxxx | 91成人破解版 | 国产精品国产三级国产不产一地 | 精品主播网红福利资源观看 | 成 人 黄 色 视频免费播放 | 日韩精品你懂的 | www.亚洲精品视频 | 久操中文字幕在线观看 | 欧美另类交在线观看 | 黄色片网站av | 狠狠干天天色 | 五月花婷婷 | 一级黄色在线免费观看 | 国产精品国产三级国产不产一地 | 欧美男女爱爱视频 | 四虎国产精品永久在线国在线 | www黄在线 | 97夜夜澡人人双人人人喊 | www.五月天 | 黄色国产在线观看 | 一区二区视频在线播放 | 丁香综合 | 国产视频第二页 | 日韩av免费一区二区 | 午夜精品久久久久久久99婷婷 | 欧美国产日韩一区二区三区 | 久久视频在线 | 亚洲精品资源 | 国产亚洲精品久久19p | 天天狠狠干 | 日日操天天操狠狠操 | 婷婷色狠狠 | 99热播精品 | 免费国产ww| 久久精品亚洲 | 一级性生活片 | 国产五码一区 | 久久久精品国产一区二区三区 | 国产分类视频 | 日韩精品不卡在线 | 91亚洲国产成人久久精品网站 | 久久天天躁狠狠躁亚洲综合公司 | 福利在线看片 | 亚洲热久久 | 国产黄视频在线观看 | 国产一区成人在线 | 免费看的黄色片 | 97在线观看视频免费 | 九九热视频在线免费观看 | www欧美色 | 高清不卡毛片 | 国产午夜精品免费一区二区三区视频 | 国产精品 美女 | 久久精品九色 | 一本—道久久a久久精品蜜桃 | 999毛片| 日韩欧美成人网 | 中文字幕日韩国产 | 国产精品成人av电影 | 国产精品免费观看视频 | 在线午夜 | 久久免费试看 | 国产视频在线免费观看 | 98涩涩国产露脸精品国产网 | 国产无限资源在线观看 | 国产精品视屏 | 国产精品都在这里 | 久久久久久久久久免费视频 | 久久久91精品国产 | 97超碰资源 | 91中文字幕视频 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 88av网站| 国产精品久久久久免费观看 | 92国产精品久久久久首页 | 99久久精品电影 | 日韩av电影网站在线观看 | 操操操夜夜操 | 国产一级在线视频 | 亚洲最大免费成人网 | 免费在线激情电影 | 韩国一区二区三区视频 | 99久久99视频只有精品 | 亚洲国产日韩av | 国产不卡一二三区 | 午夜狠狠操 | 国产精品视频你懂的 | 操久久免费视频 | 久久字幕精品一区 | 视频在线观看国产 | 亚洲精品国偷拍自产在线观看蜜桃 | 91成人小视频 | 精品国产乱子伦一区二区 | www色网站 | 五月婷婷黄色网 | 久久精品美女视频网站 | 亚洲精品国精品久久99热一 | 国产丝袜网站 | 人人插人人舔 | 成人午夜电影久久影院 | 国语麻豆 | 在线观看视频色 | 香蕉成人在线视频 | 在线观看91视频 | 日韩在线第一 | 91人人人| 91入口在线观看 | 久久久观看| 中文字幕在线播放视频 | 黄色av一区二区三区 | 91九色在线视频 | 在线观看成人毛片 | 久久不卡av| 亚洲一级二级三级 | 97在线观看免费观看高清 | 久久免费在线视频 | 婷婷爱五月天 | 在线观看免费一级片 | 国产涩涩网站 | 五月天激情电影 | 国产成人免费在线 | 免费进去里的视频 | 俺要去色综合狠狠 | 欧美国产日韩激情 | 特黄特黄的视频 | av超碰免费在线 | 亚洲欧洲视频 | 国产一区二区三区免费观看视频 | 日本精品一区二区三区在线观看 | 亚洲第二色 | 精品久久综合 | 激情婷婷综合 | 99精品视频一区二区 | 在线婷婷 | 午夜av在线电影 | 超碰夜夜 | 手机看片福利 | 激情综合色图 | 久久99网| 九九久久免费视频 | 91精品少妇偷拍99 | 婷婷丁香花| 日韩欧美大片免费观看 | 久久久国产日韩 | 九九热久久久 | 日韩在线精品视频 | 色网站免费在线看 | 精品视频www| 99精品在线直播 | 在线观看岛国片 | 亚洲黄色片 | 国产中文字幕视频在线 | 色偷偷男人的天堂av | 玖玖玖国产精品 | 日韩在线 一区二区 | 在线观看中文字幕一区 | 欧美精品久久久久性色 | 国产美女精品视频免费观看 | 国产精品a久久久久 | 狠狠色噜噜狠狠狠狠2021天天 | 91麻豆福利 | 国产特级毛片aaaaaa高清 | 中文字幕精品一区 | 久香蕉 | 久久精品国产一区二区电影 | 久久久久久综合 | 91亚洲视频在线观看 | 婷婷六月丁香激情 | 久久不卡电影 | www.久久久精品 | 91理论电影| 午夜视频在线观看欧美 | 久久精品中文字幕少妇 | 色综合激情久久 | 一区二区欧美激情 | 最近高清中文在线字幕在线观看 | 久草在线观 | 狠狠插狠狠操 | 国产成人免费观看久久久 | 成人毛片一区 | 欧美一级小视频 | 99精品免费网 | 91九色视频国产 | 亚洲天堂精品视频 | 天堂av在线免费 | 中文字幕精品久久 | 97超碰.com | 欧美成人在线免费 | 亚洲乱码精品 | 最新国产精品视频 | 成人免费观看大片 | 美女免费网视频 | 91久久精|