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

Android資源管理框架(Asset Manager)簡要介紹和學習

移動開發 Android
Android應用程序主要由兩部分內容組成:代碼和資源。資源主要就是指那些與UI相關的東西,例如UI布局、字符串和圖片等。代碼和資源分開可以使得 應用程序在運行時根據實際需要來組織UI。這樣就可使得應用程序只需要編譯一次,就可以支持不同的UI布局。這種特性使得應用程序在運行時可以適應不同的 屏幕大小和密度,以及不同的國家和語言等。在本文中,我們就簡要介紹Android的資源管理框架,以及制定學習計劃。

在軟件開發中,說到代碼與資源分離,最容易想到的可能就是Web開發了。在Web開發中,我們一般會通過CSS文件來描述HTML頁面的展現形式, 也就是通過CSS來控制HTML頁面的UI。這樣就可以很方便地進行Web開發和維護。例如,當我們要更改HTML頁面的UI時,只要修改相應的CSS文 件就可以了。注意,這些CSS文件都是在運行時加載的。這樣我們就可以根據HTML頁面的運行環境來加載不同的CSS文件,例如,根據不同的地區或者語言 來選擇不同的CSS文件,從而實現國際化。

再來看PC客戶端軟件的開發。開始的時候,微軟的MFC應用程序框架非常流行。在開發MFC程序的時候,代碼和資源同樣也是分開的,例如,程序的界面一般 都是通過一個RC文件來描述的。不過我們一般都是在Visual Studio里面通過可視化界面來編輯RC文件的,即一般都不會直接手動去操作RC文件,所以我們一般都不怎么意識到其實RC文件和CSS文件一樣,都是 用來描述程序的界面的。實際上,RC文件和CSS文件一樣,都是可以看作是一個界面配置文件,而且它們的配置信息都是通過文字來描述的,只不過這些文字描 述要遵循一定的規范。

 隨著PC客戶端軟件的發展,微軟的MFC應用程序框架顯得有些力不從心了,其中的一個原因就是它的界面比較丑陋。如果要對MFC應用程序的UI進行美化以 及個性化的話,是要費比較大的勁的,這嚴重地影響了軟件開發效率,特別是不適合要進行快速迭代開發的互聯網客戶端軟件。微軟后來又開發了另外一套應用程序 開發框架WPF。WPF同樣是使用一種稱為XAML的文件來描述應用程序的界面的。實際上,包括現在Win 8的Metro界面,也同樣是通過XAML文件來描述應用程序界面的。XAML文件是一種XML文件,它具有更好的可讀性,非常方便編輯以及維護。

在PC客戶端軟件的發展過程中,還有一種不得不提的應用程序框架——QT。QT最初由Trolltech公司開發,后來被Nokia收購。隨著Meego 的沒落,如日沖天的Nokia也沒落了,Qt又被賣給了芬蘭的另外一家IT服務公司Digia。QT也算得是一套優秀的應用程序框架,而且它是跨平臺的。 QT同樣也是通過一種稱為QML的文件來描述應用程序的界面的,不過QML文件不是XML格式的,它的格式有點類似Web頁面的CSS。

類似這種采用XML文件來描述界面的PC客戶端軟件開發框架其實還有很多,例如,迅雷用的Bolt界面引擎,以及騰訊QQ用的GF界面引擎,它們都同樣是通過XML文件來描述程序界面的,并且做成代碼和界面描述文件分離。

最后看iOS應用程序的開發,它的界面和代碼同樣是分開,并且通過一種稱為XIB的文件來描述界面。XIB文件實際上也是一個XML文件,因此,它也是非常方便編輯以及維護的。

從上面的分析就可以看出,無論是Web應用程序,還是PC客戶端應用程序,以及移動客戶端應用程序,它們都無一例外地將代碼與界面分離,并且界面都是通過描述性的文字來描述的,這種描述性的文字越來越傾向于使用XML格式。

 Android應用程序作為一種移動客戶端應用程序,它同樣也是毫無意外地將代碼邏輯和界面資源進行分離,但是它的資源管理方式與傳統的Web應用程序和 PC客戶端應用程序以及iOS應用程序相比會更復雜一些,這是因為Android應用程序可能會運行在各種大小和密度不等的設備之上。接下來我們就將注意 力集中在Android應用程序資源的組織和管理之上。

我們首先看Android應用程序資源的分類。Android應用程序資源可以分為兩大類,分別是assets和res:

1. assets。 assets類資源放在工程根目錄的assets子目錄下,它里面保存的是一些原始的文件,可以以任何方式來進行組織。這些文件最終會被原裝不動地打包在 apk文件中。如果我們要在程序中訪問這些文件,那么就需要指定文件名來訪問。例如,假設在assets目錄下有一個名稱為filename的文件,那么 就可以使用以下代碼來訪問它:

  1. AssetManager am= getAssets();     
  2. InputStream is = assset.open("filename");   

2. res。res類資源放在工程根目錄的res子目錄下,它里面保存的文件大多數都會被編譯,并且都會被賦予資源ID。這樣我們就可以在程序中通過ID來訪問res類的資源。res類資源按照不同的用途可以進一步劃分為以下9種子類型:

 --animator。這類資源以XML文件保存在res/animator目錄下,用來描述屬性動畫。屬性動畫通過改變對象的屬性來實現動畫效果,例如,通過不斷地修改對象的坐標值來實現對象移動動畫,又如,通過不斷地修改對象的Alpha通道值來實現對象的漸變效果。

--anim。 這類資源以XML文件保存在res/anim目錄下,用來描述補間動畫。補間動畫和屬性動畫不同,它不是通過修改對象的屬性來實現,而是在對象的原來形狀 或者位置的基礎上實現一個變換來得到的,例如,對對象施加一個旋轉變換,就可以獲得一個旋轉動畫,又如,對對象實施一個縮放變換,就可以獲得一個縮放動 畫。從數學上來講,就是在對象的原來形狀或者位置的基礎上施加一個變換矩陣來實現動畫效果。注意,在動畫的執行過程中,對象的屬性是始終保持不變的,我們 看到的只不過是它的一個變形副本。

--color。這類資源以 XML文件保存在res/color目錄下,用描述對象顏色狀態選擇子。例如,我們可以定義一個選擇子,規定一個對象在不同狀態下顯示不同的顏色。對象的 狀態可以劃分為pressed、focused、selected、checkable、checked、enabled和window_focused 等7種。

--drawable。這類資源以XML或者Bitmap 文件保存在res/drawable目錄下,用來描述可繪制對象。例如,我們可以在里面放置一些圖片(.png, .9.png, .jpg, .gif),來作為程序界面視圖的背景圖。注意,保存在這個目錄中的Bitmap文件在打包的過程中,可能會被優化的。例如,一個不需要多于256色的真 彩色PNG文件可能會被轉換成一個只有8位調色板的PNG面板,這樣就可以無損地壓縮圖片,以減少圖片所占用的內存資源。

--layout。這類資源以XML文件保存在res/layout目錄下,用來描述應用程序界面布局。

--menu。這類資源以XML文件保存在res/menu目錄下,用來描述應用程序菜單,例如,Options Menu、Context Menu和Sub Menu。

--raw。 這類資源以任意格式的文件保存在res/raw目錄下,它們和assets類資源一樣,都是原裝不動地打包在apk文件中的,不過它們會被賦予資源ID, 這樣我們就可以在程序中通過ID來訪問它們。例如,假設在res/raw目錄下有一個名稱為filename的文件,并且它在編譯的過程,被賦予的資源 ID為R.raw.filename,那么就可以使用以下代碼來訪問它:

  1. Resources res = getResources();   
  2. InputStream is = res .openRawResource(R.raw.filename);   

--values。這類資源以XML文件保存在res/values目錄下,用來描述一些簡單值, 例如,數組、顏色、尺寸、字符串和樣式值等,一般來說,這六種不同的值分別保存在名稱為arrays.xml、colors.xml、 dimens.xml、strings.xml和styles.xml文件中。

--xml。這類資源以XML文件保存在res/xml目錄下,一般就是用來描述應用程序的配置信息。

注意,上述9種類型的資源文件,除了raw類型資源,以及Bitmap文件的drawable類型資源之外,其它的資源文件均為文本格式的XML文件,它 們在打包的過程中,會被編譯成二進制格式的XML文件。這些二進制格式的XML文件分別有一個字符串資源池,用來保存文件中引用到的每一個字符串,包括 XML元素標簽、屬性名稱、屬性值,以及其它的一切文本值所使用到的字符串。這樣原來在文本格式的XML文件中的每一個放置字符串的地方在二進制格式的 XML文件中都被替換成一個索引到字符串資源池的整數值。這樣做有兩個好處:

A. 文件占用更小。例如,假設在原來的文本格式的XML文件中,有四個地方使用的都是同一個字符串,那么在最終編譯出來的二進制格式的XML文件中,字符串資源池只有一份字符串值,而引用它的四個地方只占用一個整數值。

B. 解析速度更快。由于在二進制格式的XML文件中,所有的XML元素標簽和屬性等值都是使用整數來描述的,因此,在解析的過程中,就不再需要進行字符串解析,這樣就可以提高解析速度。

還有另外一個地方需要注意的是,每一個res資源在編譯的打包完成之后,都會被分配一個資源ID,這些資源ID被終會被定義為Java常量值,保存在一個 R.java文件中,與應用程序的其它源文件一起被編譯到程序中,這樣我們就可以在程序或者資源文件中通過這些ID常量來訪問指定的資源。

我們接下來再看應用程序資源的組織。應用程序資源的組織方式有18個維度,如圖1所示:

圖1 應用程序資源的組織方式

注意,圖1的表格是來自于官方文檔的,它的詳細描述可以參考:http://developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResources。這里有一點需要說明的是,表格中的18個維度是按照優先級從最大到小排列的,這個優先級次序可以幫助系統根據機器的本地配置來在應用程序資源目錄中找到最合適的資源來使用。

具體來說,Android資源管理框架按照圖2所示的算法流程來在應用程序資源目錄中選擇最合適的資源:

圖2 應用程序資源的匹配算法

注意,圖2的算法流程圖是來自于官方文檔的,它的詳細描述可以參考:http://developer.android.com/guide/topics/resources/providing-resources.html#BestMatch。我們同樣是通過上述官方文檔中的例子來說明上述應用程序資源匹配算法的執行過程。

假設一個應用程序的drawable資源按照以下方式來組織:

  1. drawable/   
  2. drawable-en/   
  3. drawable-fr-rCA/   
  4. drawable-en-port/   
  5. drawable-en-notouch-12key/   
  6. drawable-port-ldpi/   
  7. drawable-port-notouch-12key/   

并且該應用程序所運行在的設置的配置情況如下所示:

  1. Locale = en-GB    
  2. Screen orientation = port    
  3. Screen pixel density = hdpi    
  4. Touchscreen type = notouch    
  5. Primary text input method = 12key   

根據圖2所示的算法,Android資源管理框架按照以下步驟來選擇一個drawable資源:

Step 1. 消除與設備配置沖突的drawable目錄,即drawable-fr-rCA目錄,因為設備設置的語言是en-GB。

  1. drawable/   
  2. drawable-en/   
  3. drawable-en-port/   
  4. drawable-en-notouch-12key/   
  5. drawable-port-ldpi/   
  6. drawable-port-notouch-12key/  

Step 2. 從MMC開始,選擇一個資源組織維度來過渡從Step 1篩選后剩下來的目錄。

Step 3. 檢查Step 2選擇的維度是否有對應的資源目錄。如果沒有,就返回到Step 2繼續處理。如果有,那么就繼續往下執行Step 4。在我們這個例子中,要一直重復執行Step 2,直到檢查到language這個維度時。

Step 4. 消除那些不包含有Step 2所選擇的資源維度的目錄。在我們這個例子中,就是要消除那些不包含有en這個language的目錄:

  1. drawable-en/   
  2. drawable-en-port/   
  3. drawable-en-notouch-12key/  

Step 5.  繼續執行Step 2、Step 3和Step 4,直到找到一個最匹配的資源目錄為止,即剩下最后一個目錄為止。在我們這個例子中,下一個要檢查的維度是screen orienation。由于設備的screen orienation為port,因此,所有不包含有port資源維度的目錄將被消除:

  1. drawable-en-port/   

最后剩下來的目錄就只有drawable-en-port,因此,它就是最匹配的資源目錄了,這時候所有drawable類型的資源都可以從這個目錄中獲取。

注意,我們在編譯和打包應用程序資源的過程中,會生成一個resources.arsc文件,這個文件記錄了所有的應用程序資源目錄的信息,包括每一個資 源名稱、類型、值、ID以及所配置的維度信息。我們可以將這個resources.arsc文件想象成是一個資源索引表,這個資源索引表在給定資源ID和 設備配置信息的情況下,能夠在應用程序的資源目錄中快速地找到最匹配的資源。

最后,我們可以通過圖3來總結應用程序資源的編譯、打包以及查找過程:

圖3 應用程序資源的編譯、打包以及查找過程

通過圖3我們就可以看出:

A. 除了assets和res/raw資源被原裝不動地打包進APK之外,其它的資源都會被編譯或者處理。 

B. 除了assets資源之外,其它的資源都會被賦予一個資源ID。

C. 打包工具負責編譯和打包資源,編譯完成之后,會生成一個resources.arsc文件和一個R.java,前者保存的是一個資源索引表,后者定義了各個資源ID常量。

D. 應用程序在運行時通過AssetManager來訪問資源,或通過資源ID來訪問,或通過文件名來訪問。

在接下來的一系列文章中,我們主要關注以下三個關鍵情景:

1. 應用程序資源的編譯和打包過程;

2. 應用程序資源的初始化過程;

3. 應用程序資源的查找過程。

通過這個三個情景,我們基本上就可以了解Android系統的資源管理框架了,敬請關注。不過在閱讀這個系列的文章之前,希望讀者可以先了解一下 Android應用程序資源的基礎知識,因為這個系列的文章不會陷入到這些基礎知識中去,具體可以參考以下官方文檔:

責任編輯:閆佳明 來源: csdn
相關推薦

2013-12-03 18:31:43

SDN應用編排資源管理

2024-04-26 00:03:00

機器學習人力資源管理

2016-06-17 15:21:43

小米運維

2009-06-24 14:18:47

資源管理敏捷項目

2013-12-21 19:58:32

SDN應用資源管理平臺SDN

2021-11-22 16:21:28

Kubernetes 運維開源

2019-07-03 10:57:03

大數據人力資源軟件

2023-12-15 15:14:10

yarn任務管理資源管理

2018-09-21 11:10:25

云計算數據中心數據驅動

2011-07-28 16:06:34

IOS 應用程序 資源

2021-07-19 09:47:37

阿里云Flink 1.12資源管理

2010-01-28 14:54:01

C++資源管理

2011-02-22 14:47:52

SQL Server資

2009-10-15 08:57:45

Windows 7電源管理

2021-09-15 09:00:00

Github工具資源控制管理器

2016-11-28 10:19:19

云資源濫用開支

2009-03-24 09:05:54

資源管理IT管理廣通信達

2011-02-28 08:57:10

SQL Server資內存性能調優

2020-03-02 16:47:42

物聯網人力資源管理IOT

2023-08-24 16:24:44

TypeScript
點贊
收藏

51CTO技術棧公眾號

韩国19禁主播vip福利视频| 欧美日韩国产一区二区三区| 国产裸体写真av一区二区| 男人晚上看的视频| 欧一区二区三区| 香蕉成人啪国产精品视频综合网| 欧美日韩一区二区三区在线视频 | 欧美喷水视频| 日韩精品中文字幕有码专区| 天堂中文av在线| 在线天堂资源www在线污| 亚洲欧洲国产日韩| 欧美一区二区三区成人久久片| 97人妻人人澡人人爽人人精品| 亚洲国产二区| 久久天天躁夜夜躁狠狠躁2022| 亚洲中文字幕一区| 精品三级国产| 91福利社在线观看| 亚洲免费观看在线观看| 久久中文久久字幕| 国产精品高清无码在线观看| 国产美女亚洲精品7777| 色综合久久久网| 真实国产乱子伦对白视频| 免费资源在线观看| 成人性视频免费网站| 国产日韩精品视频| 国产乱码77777777| 一区二区国产精品| 欧美高清性猛交| 麻豆网址在线观看| 欧美理论电影大全| 亚洲乱码av中文一区二区| 中文字幕在线播放一区二区| 日韩成人免费av| 日本韩国一区二区三区| 波多野结衣之无限发射| 成人在线免费看片| 国产精品久久影院| 色播亚洲婷婷| 精品视频一二区| 91美女蜜桃在线| 久久久99爱| 少妇av在线播放| www.欧美色图| 国产一区不卡在线观看| 国产av无码专区亚洲av| free性护士videos欧美| 老司机精品久久| 国产综合在线看| 老妇女50岁三级| 我不卡影院28| 久久天天躁狠狠躁夜夜躁2014| 国产18无套直看片| 精品产国自在拍| 国产亚洲欧洲高清| 亚洲欧美va天堂人熟伦 | 亚洲综合免费视频| 久久99精品久久久野外观看| 欧美猛男gaygay网站| 爱爱爱爱免费视频| 成人在线视频区| 日韩午夜三级在线| 国产精品成人国产| 亚洲人成久久| 欧美日本中文字幕| 午夜精品一区二区三区视频| 亚洲精品国产首次亮相| 欧美成人免费在线观看| 2021亚洲天堂| 亚洲精品专区| 国产成人综合精品| 伊人亚洲综合网| 九色综合国产一区二区三区| 91久久精品美女| 亚洲卡一卡二卡三| 26uuu亚洲综合色| 日产精品一线二线三线芒果| 91亚洲欧美| 亚洲欧洲综合另类在线| 欧美人与动牲交xxxxbbbb| 99久久国产免费免费| 中日韩精品视频在线观看| 9国产精品视频| 国产成人av在线| 91精品国产乱码久久久| 国产成+人+日韩+欧美+亚洲| 国产伦理久久久| 国产黄色在线播放| 亚洲欧美日韩电影| 日本www在线播放| 日本成人在线网站| 欧美精品一区二区三区蜜桃| 久久精品老司机| 先锋资源久久| 欧美一区二区三区四区在线| 中文字幕一区二区三区波野结 | 国产精品全国免费观看高清| 亚洲免费视频播放| 色一区二区三区| 欧美理论片在线| 黄色工厂在线观看| 你懂的国产精品| 国产精品久久久久久久久粉嫩av| 精品人妻一区二区三区浪潮在线| 2021中文字幕一区亚洲| 亚洲国产精品va在线观看黑人| 国内精品二区| 免费在线你懂的| 欧美日韩一区二区免费在线观看| 999久久久精品视频| 午夜精品福利影院| 久久99热这里只有精品国产| 日本三级一区二区三区| 成人av网在线| 欧美xxxx吸乳| 国产精品原创视频| 国产视频久久久久| 日本五十熟hd丰满| 国产经典欧美精品| 亚洲视频在线二区| 经典三级一区二区| 日韩大片在线观看视频| 免费在线观看国产精品| 久草精品在线观看| 亚洲va韩国va欧美va精四季| 日本在线啊啊| 亚洲国产精品va在看黑人| 538精品在线观看| 美女网站视频久久| 五月天色一区| 午夜精品久久久久久久久久蜜桃| 精品播放一区二区| 国产一级中文字幕| 国产精品系列在线观看| 99热一区二区三区| 欧美日韩va| 色诱女教师一区二区三区| 三级网站在线播放| 久久久精品欧美丰满| 免费在线a视频| 免费成人蒂法| 1769国内精品视频在线播放| 开心激情综合网| 久久精品首页| 精品日本高清在线播放| 国产wwwxx| 不卡在线一区二区| 国产精品亚洲精品| 日韩三级影院| 欧美精品777| 午夜国产福利一区二区| 国产综合色在线| 黄黄视频在线观看| 91精品国产自产在线丝袜啪| 久久久久中文字幕| 色一情一乱一乱一区91av| 精品久久久中文| 青青草福利视频| 日韩一区精品视频| 正在播放精油久久| 亚洲精品在线国产| 久久欧美在线电影| 青青草超碰在线| 欧美亚洲一区二区在线观看| 成年人看的免费视频| 国产一区二区中文字幕| 乱熟女高潮一区二区在线| 57pao国产一区二区| 5566日本婷婷色中文字幕97| 美国一级片在线免费观看视频| 在线观看区一区二| 欧美激情图片小说| av网站免费线看精品| 黄色片久久久久| 久久综合成人| 国产福利一区二区三区在线观看| 2019中文字幕在线电影免费 | 亚洲无中文字幕| 国产98在线|日韩| 成人国产二区| 另类专区欧美制服同性| 日本xxxx人| 欧美探花视频资源| 免费在线一级片| 久久久久久久久97黄色工厂| 久热在线视频观看| 极品尤物久久久av免费看| 欧洲久久久久久| 欧美久久亚洲| 国产不卡精品视男人的天堂| 国产精品va在线观看视色| 亚洲韩国欧洲国产日产av| 中文字幕一区2区3区| 亚洲福中文字幕伊人影院| 日韩一级av毛片| 国产河南妇女毛片精品久久久| 日本在线观看a| 中文字幕午夜精品一区二区三区 | 欧美高清成人| 欧美一区二区在线观看| 成年人视频在线免费看| 亚洲日本中文字幕区| 亚洲欧美在线不卡| 国产综合色产在线精品| 精品99在线视频| 综合激情视频| 日韩欧美三级电影| 精品久久ai| 91丝袜美腿美女视频网站| 中文字幕一区久| 久热99视频在线观看| 福利片在线观看| 亚洲精品www久久久久久广东| 91在线观看喷潮| 色综合久久六月婷婷中文字幕| 欧美日韩激情在线观看| 中文字幕第一区二区| 欲求不满的岳中文字幕| 国产成人免费在线观看| 日本在线播放一区二区| 日韩福利电影在线| 久草资源站在线观看| 成人精品视频| 欧美精品国产精品久久久| 成人性生交大片免费看96| 成人精品视频99在线观看免费| 日韩精品影片| 国产不卡av在线| 老司机成人影院| 国产91精品青草社区| 7777kkk亚洲综合欧美网站| 色综合老司机第九色激情| 大地资源网3页在线观看| 北条麻妃99精品青青久久| av大片在线看| 在线视频精品一| 国产精品视频二区三区| 亚洲片在线资源| 黄色大片在线看| 亚洲男女性事视频| 国产在线视频你懂得| 亚洲男人天堂2023| 欧美男男同志| 亚洲欧美日韩精品久久| 亚洲色图狠狠干| 日韩精品在线视频美女| 欧美亚洲日本| 一区二区国产精品视频| 超碰免费97在线观看| 色老头一区二区三区在线观看| av在线女优影院| 日韩在线免费视频观看| 快射视频在线观看| 久久国产色av| 白白色在线观看| 91精品国产高清久久久久久91| 亚洲美女尤物影院| 国产精品com| 亚洲一区二区三区久久久| 亚洲一区二区三区乱码aⅴ| 2020国产精品极品色在线观看| 国产日韩三区| 亚洲免费毛片| 在线观看精品视频| 欧美日韩亚洲一区| 国产成人a亚洲精v品无码| 日韩电影免费一区| 手机在线视频一区| 成人高清伦理免费影院在线观看| 亚洲精品在线视频免费观看| 国产午夜亚洲精品不卡| 国产在线观看免费视频软件| 亚洲黄网站在线观看| 欧美亚洲精品天堂| 欧美日韩在线三区| 亚洲美女性生活| 国产午夜精品视频免费不卡69堂| 麻豆传媒视频在线| 国内精品久久久久伊人av| 日本高清不卡一区二区三区视频 | 久久国产精品色av免费看| 奇米影视首页 狠狠色丁香婷婷久久综合 | 国产乱国产乱老熟300| 午夜精品福利久久久| 最近中文在线观看| 日韩免费电影网站| 国产在线视频网| 欧美激情精品在线| 日韩精选视频| 日本一二三不卡| 青青青国产在线观看| 日本一不卡视频| 久久av一区二区三| 日本一二三四高清不卡| 国产无遮挡免费视频| 欧美四级电影在线观看| 欧美一区二区三区激情| 色综合亚洲精品激情狠狠| 超碰在线cao| 91在线免费观看网站| 天堂日韩电影| 菠萝蜜视频在线观看入口| 蜜桃一区二区三区四区| 黄色av网址在线观看| 日韩一区日韩二区| 久久久久久久久久成人| 精品av久久707| av大片在线| 国产精品永久免费视频| 日韩mv欧美mv国产网站| 在线视频一二三区| 蜜桃av噜噜一区| 91精品人妻一区二区三区蜜桃欧美| 亚洲自拍与偷拍| 国产欧美熟妇另类久久久| 亚洲天堂色网站| 国产精品xx| 99在线热播| 在线精品小视频| 自拍偷拍一区二区三区四区| 久久亚洲春色中文字幕久久久| 精品肉丝脚一区二区三区| 91精品国产aⅴ一区二区| av在线免费播放网站| 国产999在线观看| 日韩在线你懂的| 成人黄色av片| 成人午夜在线视频| 精国产品一区二区三区a片| 欧美精品久久一区二区三区| av女优在线| 国产精品国产自产拍在线| 精品国产成人av在线免| 白白色亚洲国产精品| 国产在线观看99| 日韩美女视频在线| 日本资源在线| 91久久极品少妇xxxxⅹ软件| 一级欧洲+日本+国产| 91香蕉国产线在线观看| 亚洲品质自拍视频网站| 国产suv一区二区| 九九久久精品一区| www.国产精品一区| 黄色一级在线视频| av在线不卡免费看| 精品国产一区二区三区四| 亚洲欧美激情四射在线日| 亚洲天堂一区二区| 午夜精品区一区二区三| 久久黄色级2电影| 夫妻性生活毛片| 日韩欧美精品在线视频| 污污的视频在线观看| 成人女人免费毛片| 亚洲激情综合| 精品无码一区二区三区 | 日本少妇高潮喷水视频| 久久午夜羞羞影院免费观看| www.五月婷婷.com| 色伦专区97中文字幕| a一区二区三区亚洲| 欧美一区二区三区综合| av电影一区二区| 波多野结衣一二区| 久久精视频免费在线久久完整在线看| 久久九九精品视频| 国产69精品久久久久999小说| 91老师国产黑色丝袜在线| 波多野结衣在线观看一区| 最新国产成人av网站网址麻豆| 国产一区二区三区精品在线观看| 青青在线免费观看| 国产午夜精品久久久久久久 | 韩国v欧美v亚洲v日本v| 国产亚洲精品久久777777| 亚洲欧美日韩成人| 精品国产亚洲一区二区在线观看| 黄色一级视频片| 国产精品日产欧美久久久久| 亚洲精品一区二区口爆| 秋霞午夜一区二区| 91精品久久久久久久久久不卡| 在线黄色免费网站| 亚州一区二区| 女女百合国产免费网站| 99久久精品免费看| 一级黄色免费片| 91国产高清在线| 91精品国产成人观看| 一本色道综合久久欧美日韩精品| 欧美日韩在线综合| 瑟瑟视频在线看| www.69av| 国产日韩三级在线| 人妻va精品va欧美va| 国产在线观看91精品一区| 亚洲综合三区|