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

iOS 9 每天了解多一點(diǎn)第1天:搜索API

移動(dòng)開(kāi)發(fā)
在 iOS 9 之前,Spotlight 里只能搜索 app 的名字。隨著 iOS 9 新公布的搜索 API,蘋(píng)果現(xiàn)在允許開(kāi)發(fā)者來(lái)定制自己 app 里能被搜到的內(nèi)容,搜索結(jié)果在 Spotlight 里顯示的方式,以及用戶點(diǎn)擊搜索結(jié)果的事件。

在 iOS 9 之前,Spotlight 里只能搜索 app 的名字。隨著 iOS 9 新公布的搜索 API,蘋(píng)果現(xiàn)在允許開(kāi)發(fā)者來(lái)定制自己 app 里能被搜到的內(nèi)容,搜索結(jié)果在 Spotlight 里顯示的方式,以及用戶點(diǎn)擊搜索結(jié)果的事件。

3 個(gè)搜索 API

NSUserActivity

NSUserActivity API 是 iOS 8 介紹新功能 Handoff 時(shí)引入的,不過(guò)在 iOS 9 里,Spotlight 也能搜索到 activity。你現(xiàn)在可以給 acitivity 提供 metadata,表示這個(gè) activity 是能搜到的。實(shí)際用起來(lái)是一個(gè)歷史記錄棧,跟你平常瀏覽網(wǎng)頁(yè)類(lèi)似。用戶可以從 Spotlight 里快速打開(kāi)最近使用過(guò)的 activity。

Web Markup

Web Markup 的機(jī)制是,app 可以把內(nèi)容鏡像到一個(gè)網(wǎng)站上,然后 Spotlight 就會(huì)索引里面的內(nèi)容。即使用戶設(shè)備上沒(méi)裝這個(gè) app,Spotlight 里也能顯示出搜索結(jié)果。蘋(píng)果的爬蟲(chóng)會(huì)在網(wǎng)絡(luò)上持續(xù)爬取,尋找網(wǎng)站上的特定 markup。之后搜索結(jié)果在 Safari 里和 Spotlight 里都會(huì)出現(xiàn)。

即使用戶沒(méi)裝這個(gè) app,都能搜到結(jié)果,所以這個(gè)功能至關(guān)重要,它能給你帶來(lái)很多在潛在用戶面前曝光的機(jī)會(huì)。你暴露給搜索 API 的 app 里的深度鏈接,會(huì)被存到蘋(píng)果的云索引上。想進(jìn)一步了解 Web Markup,可以看看蘋(píng)果的官方文檔 Use Web Markup to Make App Content Searchable

CoreSpotlight

CoreSpotlight 是一個(gè) iOS 9 的新框架,能讓你索引 app 里的任何內(nèi)容。之前提到的 NSUserActivity 可以用來(lái)保存用戶的歷史信息,而這個(gè)新的 API 可以索引任何數(shù)據(jù)。它為你接觸到用戶設(shè)備上的 CoreSpotlight 索引提供了必不可少的橋梁。

使用 Core Spotlight API

NSUserActivity 和 Web Markup API 相對(duì)來(lái)說(shuō)用起來(lái)比較容易,而 CoreSpotlight 就要復(fù)雜一些。為了演示新的 CoreSpotlight API 是怎么用的,我們來(lái)做一個(gè)簡(jiǎn)單的 app 吧。它的功能就是顯示一個(gè)朋友列表,點(diǎn)擊朋友名字的時(shí)候顯示一張肖像。你可以在GitHub上下載到源代碼,一步一步跟著做。

app截圖

App里有一個(gè)簡(jiǎn)單的 storyboard,里面有一個(gè)FriendTableViewController,顯示簡(jiǎn)單的朋友列表;還有一個(gè)FriendViewController,顯示每個(gè)朋友的細(xì)節(jié)。

storyboard

所有朋友的信息都存在Datasource類(lèi)里。我們用這個(gè)類(lèi)來(lái)創(chuàng)建保存朋友信息的 model,另外,把朋友保存到 Core Spotlight 索引的邏輯也寫(xiě)在這個(gè)類(lèi)里。

首先,我們重寫(xiě)Datasource類(lèi)的init()方法,在這個(gè)方法里創(chuàng)建并保存一個(gè)Person數(shù)組。可能數(shù)據(jù)一般應(yīng)該是從數(shù)據(jù)庫(kù)、服務(wù)器接口等處讀出來(lái)的,為了演示起見(jiàn),我們就簡(jiǎn)單寫(xiě)一些假數(shù)據(jù)吧。

  1. override init () { 
  2.     let becky = Person()  
  3.     becky.name = "Becky"  
  4.     becky.id = "1"  
  5.     becky.image = UIImage(named: "becky")!  
  6.  
  7.     ...  
  8.  
  9.     people = [becky, ben, jane, pete, ray, tom] 

people數(shù)組存好數(shù)據(jù)之后,Datasource就準(zhǔn)備就緒啦!

這邊數(shù)據(jù)已經(jīng)準(zhǔn)備完畢,F(xiàn)riendTableViewController就可以創(chuàng)建一個(gè)Datasource的實(shí)例,在 table view 要顯示 cell 的時(shí)候使用。

  1. let datasource = Datasource() 

在cellForRowAtIndexPath方法里,顯示 cell 內(nèi)容的代碼如下:

  1. let person = datasource.people[indexPath.row] 
  2. cell?.textLabel?.text = person.name 

#p#

把 person 數(shù)據(jù)保存到 Core Spotlight 上

現(xiàn)在有了假數(shù)據(jù),我們就可以用上 iOS 9 的新 API,把它存到 Core Spotlight 上了。回到Datasource類(lèi),我們?cè)谶@個(gè)類(lèi)里定義了一個(gè)方法savePeopleToIndex。FriendTableViewController的界面加載完畢后,就可以調(diào)用這個(gè)方法。

在這個(gè)方法里,我們循環(huán)遍歷people數(shù)組里的每一個(gè) person,為每一個(gè) person 分別創(chuàng)建一個(gè) CSSearchableItem,存到一個(gè)臨時(shí)數(shù)組searchableItems里。

  1. let attributeSet = CSSearchableItemAttributeSet(itemContentType: "image" as String) 
  2. attributeSet.title = person.name 
  3. attributeSet.contentDescription = "This is an entry all about the interesting person called (person.name)" 
  4. attributeSet.thumbnailData = UIImagePNGRepresentation(person.image) 
  5. let item = CSSearchableItem(uniqueIdentifier: person.id, domainIdentifier:  
  6.     "com.ios9daybyday.SearchAPIs.people", attributeSet: attributeSet) 
  7. searchableItems.append(item) 

最后一步是在默認(rèn)的CSSearchableIndex上調(diào)用indexSearchableItems。這一步就真正把這些 item 存到 CoreSpotlight 里了,此后用戶就可以搜索這些數(shù)據(jù),會(huì)在搜索結(jié)果里出現(xiàn)。

  1. CSSearchableIndex.defaultSearchableIndex().indexSearchableItems(searchableItems,  
  2.                    completionHandler: { error -> Void in 
  3.     if error != nil { 
  4.         print(error?.localizedDescription) 
  5.     } 
  6. }) 

完事兒了!把 app 跑起來(lái),數(shù)據(jù)會(huì)實(shí)時(shí)加入存儲(chǔ);在 spotlight 里一搜,就能搜到你的朋友啦~

搜索結(jié)果

響應(yīng)用戶點(diǎn)擊

現(xiàn)在用戶能在 Spotlight 里看到你的搜索結(jié)果了,但愿他們會(huì)點(diǎn)上一點(diǎn)!但如果他們真點(diǎn)了,會(huì)發(fā)生什么呢?就此刻而言,點(diǎn)擊搜索結(jié)果只會(huì)跳轉(zhuǎn)打開(kāi)你的 app。如果你想要展示出用戶剛點(diǎn)擊的那位朋友,還得再寫(xiě)點(diǎn)代碼。我們可以在 app 的AppDelegate的 continueUserActivity UIApplicationDelegate 方法里指定 app 從搜索結(jié)果打開(kāi)之后的行為。

以下是這整個(gè)方法的代碼:

  1. func application(application: UIApplication, continueUserActivity userActivity: NSUserActivity, restorationHandler: ([AnyObject]?) -> Void) -> Bool { 
  2.     // Find the ID from the user info 
  3.     let friendID = userActivity.userInfo?["kCSSearchableItemActivityIdentifier"] as! String 
  4.  
  5.     // Find the root table view controller and make it show the friend with this ID 
  6.     let navigationController = (window?.rootViewController as! UINavigationController) 
  7.     navigationController.popToRootViewControllerAnimated(false
  8.     let friendTableViewController = navigationController.viewControllers.first as! FriendTableViewController 
  9.     friendTableViewController.showFriend(friendID) 
  10.  
  11.     return true 

如代碼所示,之前我們用indexSearchableItems方法存在 CoreSpotlight 索引里的信息,現(xiàn)在可以用userActivity.userInfo獲取到。這里我們唯一感興趣的就是朋友的 ID,這個(gè) ID 我們保存在索引 item 的kCSSearchableItemActivityIdentifier里了。

我們從userInfo字典里提取出 ID 之后,下一步是獲取到 app 的 navigation controller,pop 到首頁(yè)(不帶動(dòng)畫(huà),這樣用戶就不會(huì)看到 pop 的過(guò)程),然后調(diào)用friendTableViewController的showFriend方法。這個(gè)方法的細(xì)節(jié)我就不多說(shuō)了,總之就是根據(jù) ID 從 datasource 里找到對(duì)應(yīng)的朋友,然后 push 進(jìn)來(lái)一個(gè)新的 view controller。收工啦!現(xiàn)在當(dāng)用戶點(diǎn)擊 spotlight 里的朋友時(shí),他們會(huì)看到下面的畫(huà)面:

點(diǎn)擊搜索結(jié)果

截圖上可以看到,app的左上角有一個(gè)“Back to Search”按鈕。點(diǎn)擊這個(gè)按鈕會(huì)直接回到搜索結(jié)果頁(yè)面,就是剛才點(diǎn)擊朋友名字的那個(gè)頁(yè)面。用戶還可以點(diǎn)擊標(biāo)準(zhǔn)的返回按鈕,接著在 app 里面逛。

Demo 小結(jié)

在上面這個(gè) demo 里,我們展示了整合 app 的數(shù)據(jù)與CoreSpotlight索引如此簡(jiǎn)單,引導(dǎo)用戶打開(kāi) app 的功能如此強(qiáng)大,以及對(duì)用戶搜索特定內(nèi)容如此有幫助。

不過(guò),我們并沒(méi)提到怎么從索引里刪除數(shù)據(jù)。這一點(diǎn)還是很重要的,應(yīng)該勤于更新索引的數(shù)據(jù)。想進(jìn)一步了解如何從 CoreSpotlight 刪除舊數(shù)據(jù),可以看看 deleteSearchableItemsWithIdentifiers,deleteSearchableItemsWithDomainIdentifiers 以及 deleteAllSearchableItemsWithCompletionHandler 方法。

有節(jié)操的重要性

盡管讓 Spotlight 和 Safari 索引到的 app 內(nèi)容似乎越多越好,在大肆往里灌水之前還是要三思。在 iOS 生態(tài)系統(tǒng)里保持節(jié)操,不僅能讓用戶更舒服,而且蘋(píng)果也盯著呢。蘋(píng)果花了很多心思來(lái)保證搜索結(jié)果是真正相關(guān)的,他們會(huì)跟蹤搜索結(jié)果點(diǎn)擊率,而灌水會(huì)導(dǎo)致被挪到搜索結(jié)果的末尾。

了解更多

想要進(jìn)一步了解新的搜索 API,推薦看一看 WWDC session 709,介紹搜索 API。你也可能會(huì)對(duì) NSUserActivity Class ReferenceCoreSpotlight 文檔感興趣。別忘了,如果想要試試本文描述的 demo,可以在GitHub上下到源碼。

責(zé)任編輯:倪明
相關(guān)推薦

2015-07-21 16:43:13

IOSUI

2015-08-03 10:03:09

iosuistack vie

2015-07-27 09:04:33

ios9

2015-08-07 11:07:21

IOS9code covera每天積累一點(diǎn)

2019-06-17 06:18:27

邊緣計(jì)算物聯(lián)網(wǎng)霧計(jì)算

2019-06-26 05:14:32

性能優(yōu)化程序系統(tǒng)

2011-03-15 10:41:05

內(nèi)部類(lèi)

2024-07-29 00:00:00

C程序色彩文本

2019-04-16 15:05:59

ServerlessIT基礎(chǔ)局域網(wǎng)

2020-09-25 17:44:43

人工智能 倫敦時(shí)裝學(xué)院

2010-05-20 15:29:43

優(yōu)化IIS

2016-04-05 10:12:58

HiveSQLHadoop

2024-12-18 18:29:12

2018-01-09 21:47:17

2012-08-30 14:17:42

IBMdw

2013-01-08 10:06:43

創(chuàng)業(yè)創(chuàng)業(yè)方法

2025-05-29 00:00:00

UI 庫(kù)前端模塊化

2009-09-14 19:44:27

LINQ To SQL

2012-03-27 08:49:19

Json

2009-07-09 15:09:05

JDK卸載
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

五月六月丁香婷婷| 日韩国产精品毛片| 亚洲精品无码久久久久| 天天做天天爱天天综合网| 欧美久久久影院| 青青草精品视频在线| 韩日视频在线| 国产精品综合av一区二区国产馆| 欧美激情欧美激情在线五月| 亚洲最大成人网站| 老司机亚洲精品一区二区| 疯狂欧美牲乱大交777| 亚洲在线视频一区二区| 先锋av资源站| 久草这里只有精品视频| 97色在线观看免费视频| 国产极品美女在线| 美国十次av导航亚洲入口| 欧美精品黑人性xxxx| 欧美 国产 综合| 国内精品久久久久久野外| 91亚洲午夜精品久久久久久| 成人在线免费观看视视频| 国产91精品一区| 欧美日韩久久| 色偷偷av一区二区三区| 亚洲av午夜精品一区二区三区| 国产亚洲人成a在线v网站 | av影片在线| 国产精品美女久久久久av爽李琼| 久草精品电影| 免费观看国产精品| 国产一区二区按摩在线观看| 国产精品激情自拍| 国产精品一区二区三区四| 欧美午夜免费影院| 久热99视频在线观看| 麻豆视频免费在线播放| 精品久久视频| 国产视频亚洲视频| 国产美女视频免费观看下载软件| 视频二区欧美毛片免费观看| 69久久99精品久久久久婷婷 | 亚洲乱码一区av黑人高潮| 黑人性生活视频| 日韩电影精品| 欧美日韩免费观看一区二区三区| 成年人免费在线播放| 小早川怜子影音先锋在线观看| 一区二区三区在线不卡| japanese在线播放| 久草中文在线| 亚洲三级小视频| 成年人免费观看的视频| 日本视频不卡| 国产精品传媒入口麻豆| 永久免费精品视频网站| 老司机在线视频二区| ●精品国产综合乱码久久久久| 一区二区三区av| 免费在线看黄色| 亚洲色图20p| 欧美一级爱爱视频| 黄页网站在线观看免费| 亚洲成a天堂v人片| 黄色一级在线视频| 亚洲人体视频| 欧美在线色视频| 亚洲欧美日本一区二区三区| 精品一区二区三区在线观看视频| 日韩欧美亚洲国产另类| 日批在线观看视频| 国产伦精品一区二区三区视频 | 日韩精品乱码免费| 国产精品久久久久不卡| 又骚又黄的视频| 国产福利一区在线| 精品久久久久亚洲| shkd中文字幕久久在线观看| 亚洲男人天堂av网| 日韩av新片网| 亚洲校园激情春色| 欧美美女视频在线观看| 精品人妻一区二区免费| 真实原创一区二区影院| 菠萝蜜影院一区二区免费| 欧美日韩综合一区二区| 国产精品日韩精品欧美精品| 国产精品视频xxxx| 亚洲奶汁xxxx哺乳期| 久久综合999| 一级一片免费播放| 涩涩视频在线播放| 这里只有精品99re| 搡老熟女老女人一区二区| 日本不卡高清| 97热在线精品视频在线观看| 欧美高清69hd| 成人精品视频一区二区三区| 日韩精品久久久免费观看| 中文字幕在线观看网站| 一本大道综合伊人精品热热| 日本一二三区在线| 久久成人av| 欧美激情视频给我| 正在播放木下凛凛xv99| 不卡一区在线观看| 色乱码一区二区三区熟女| 美女搞黄视频在线观看| 欧美一级在线观看| 最新中文字幕av| 亚洲福利久久| 成人精品久久av网站| 免费av在线电影| 亚洲一区二区综合| 色婷婷激情视频| 免费一区二区三区视频导航| 久久久噜噜噜久久| 国产精品高潮呻吟久久久| 久久久精品天堂| 波多野结衣乳巨码无在线| 久久天堂久久| 久久久99久久精品女同性| 亚洲成人av网址| 99re在线精品| 亚洲国产精品成人天堂| 国产一区二区三区视频在线 | 午夜dj在线观看高清视频完整版| 欧美亚洲动漫另类| 91中文字幕永久在线| 亚洲精品麻豆| 国产午夜精品在线| 最新黄网在线观看| 欧美日韩国产免费| 亚洲第一综合网| 天堂一区二区在线免费观看| 激情欧美一区二区三区中文字幕| 美足av综合网| 欧美一级理论片| 婷婷在线精品视频| 国产麻豆日韩欧美久久| 中国成人亚色综合网站| 精品乱码一区二区三区四区| 伊人精品在线观看| 国产99久久久久久免费看| 久久久三级国产网站| 成人羞羞国产免费网站| 免费短视频成人日韩| 欧美一区二区.| 国产午夜精品一区理论片| 色综合久久久久综合体桃花网| 亚洲AV无码国产精品| 久久成人亚洲| 日韩欧美亚洲v片| 草莓视频成人appios| 中文欧美日本在线资源| 国产一区二区三区视频免费观看| 亚洲欧美日韩系列| 亚洲色图欧美自拍| 欧美三级小说| 好吊色欧美一区二区三区| 在线高清av| 国产亚洲精品成人av久久ww| 国产精品成人无码| 亚洲美女免费在线| 催眠调教后宫乱淫校园| 国产欧美成人| 日韩欧美在线电影| 91成人app| 欧美激情中文网| 美州a亚洲一视本频v色道| 欧美午夜视频网站| 国产真实乱在线更新| 福利一区在线观看| 91视频最新入口| 久久伦理在线| 国产精品果冻传媒潘| 亚洲黄色免费av| 亚洲色无码播放| 91美女精品网站| 性久久久久久久久| 国产美女免费无遮挡| 国产综合一区二区| 免费观看美女裸体网站| 日韩成人激情| 国产激情一区二区三区在线观看| 免费电影日韩网站| 久久精品国产久精国产一老狼| 天天综合天天色| 欧美色手机在线观看| 久久久久无码国产精品不卡| 久久久久久**毛片大全| 黄色一级片免费播放| 麻豆亚洲精品| 女人床在线观看| 不卡av一区二区| 国产精品视频福利| 欧美网站免费| 欧美做受高潮1| а√资源新版在线天堂| 亚洲网站在线观看| 亚洲精品综合久久| 欧美日韩中字一区| 久久一区二区三区视频| 亚洲色图.com| 久久久久亚洲av无码a片| aaa亚洲精品一二三区| 婷婷激情5月天| 老司机精品久久| 婷婷无套内射影院| 综合久久十次| 先锋影音一区二区三区| 少妇高潮一区二区三区| 91久久精品www人人做人人爽 | 日本高清视频在线观看| 精品在线小视频| 韩国av在线免费观看| 51午夜精品国产| 狠狠躁夜夜躁人人爽视频| 亚洲成在线观看| 国产极品国产极品| 国产精品丝袜一区| 久久久视频6r| 久久久青草青青国产亚洲免观| 看全色黄大色黄女片18| 国产精品1区2区| 国产在线观看中文字幕| 蜜桃精品视频在线观看| 欧美日韩亚洲一二三| 一区二区三区福利| 免费观看国产精品视频| 亚洲香蕉网站| 高清无码一区二区在线观看吞精| 婷婷久久一区| 一区二区在线观看网站| 日韩一区自拍| 亚洲狠狠婷婷综合久久久| 国精一区二区| 涩涩涩999| 狠狠做六月爱婷婷综合aⅴ| 免费在线一区二区| 免费短视频成人日韩| 欧美日韩日本网| 国产99亚洲| 亚洲成人自拍| 久久裸体网站| 亚洲区成人777777精品| 在线电影一区二区| 国产a级黄色大片| 国产精品v日韩精品v欧美精品网站 | 亚洲区小说区图片区| 日韩av影片在线观看| 天堂av中文在线资源库| 日韩福利视频在线观看| 久草在线网址| 在线视频精品一| 欧美日本高清| 欧美久久久精品| 8x8ⅹ拨牐拨牐拨牐在线观看| 性欧美xxxx| 欧美1级2级| 国产狼人综合免费视频| 99久久99九九99九九九| 高清不卡日本v二区在线| 精品一区二区男人吃奶| 欧美日韩一区综合| 色一区二区三区四区| 日本a在线天堂| 亚洲免费一区二区| 日本人视频jizz页码69| 国产精品一二三四五| 捆绑凌虐一区二区三区| 国产亚洲女人久久久久毛片| 性生交大片免费全黄| 亚洲一区二区三区自拍| 啦啦啦免费高清视频在线观看| 欧美亚洲丝袜传媒另类| 国产婷婷一区二区三区久久| 亚洲精品福利在线观看| 国产永久免费高清在线观看视频| 日韩中文在线视频| 怡红院在线播放| 国产91成人video| 色综合视频一区二区三区日韩| 成人av中文| 精品日韩免费| 人人妻人人澡人人爽欧美一区双 | 亚洲狼人国产精品| 91午夜视频在线观看| 欧美日免费三级在线| 你懂的网站在线| 国产一区二区三区视频在线观看| av理论在线观看| 全球成人中文在线| 精品国模一区二区三区欧美 | 日韩a在线观看| 久久精品一区中文字幕| 男人久久天堂| 亚洲va欧美va国产综合剧情| 日韩人体视频| 男女爱爱视频网站| 久久综合亚州| 成人做爰www看视频软件| 国产精品免费视频网站| 日韩免费av片| 777欧美精品| 噜噜噜在线观看播放视频| 欧美高清第一页| 91国拍精品国产粉嫩亚洲一区| 国产精品免费观看高清| 香蕉久久网站| 亚洲高清在线免费观看| 不卡免费追剧大全电视剧网站| 三级黄色录像视频| 91黄视频在线观看| 日韩中文字幕免费在线观看| zzjj国产精品一区二区| 国产在线|日韩| 免费精品视频一区| 狠狠久久婷婷| 成人高清在线观看视频| 国产精品乱码人人做人人爱 | 看国产成人h片视频| 全黄一级裸体片| 精品日韩美女的视频高清| www.色日本| 蜜臀久久99精品久久久久久宅男| 国产第一亚洲| 日韩啊v在线| 久久国产日韩| 男人天堂av电影| 粉嫩老牛aⅴ一区二区三区| 亚洲av成人精品日韩在线播放| 欧美激情综合亚洲一二区| 亚洲精品一区二区三区在线| 中文字幕超清在线免费观看| 九一九一国产精品| 尤物在线免费视频| 欧美一区二区观看视频| 91小视频xxxx网站在线| 亚洲va久久久噜噜噜| 午夜激情久久| 日韩欧美色视频| 一区二区三区四区中文字幕| www.蜜臀av.com| 欧美激情伊人电影| 国内精品麻豆美女在线播放视频| 黄色成人在线看| 99精品久久免费看蜜臀剧情介绍| 97久久久久久久| 亚洲欧洲国产一区| 日本在线视频一区二区| 亚洲国产精品综合| 久久99精品国产麻豆婷婷| 中文国语毛片高清视频| 91精品国产综合久久香蕉麻豆| 国产在线一区二区视频| 国产98在线|日韩| 亚洲三级网站| 欧美人妻一区二区三区| 欧美色图免费看| 在线免费观看a视频| 国产伦精品一区二区三区四区视频| 在线视频观看日韩| 亚洲第一香蕉网| 在线电影一区二区三区| 人人澡人人添人人爽一区二区| 国产伦精品一区二区三区四区免费| 亚洲在线国产日韩欧美| 国产精品久久久久久成人| 日韩一级高清毛片| 欧美久久天堂| 亚洲精品在线免费看| 国产伦精品一区二区三区免费| 国产午夜小视频| 亚洲女人被黑人巨大进入| 久久亚洲国产精品尤物| 高清无码视频直接看| 91亚洲永久精品| 国产精品久久久久久久免费 | 国产一区二区三区丝袜| 国产精品免费精品自在线观看| 91.com在线| 国产无一区二区| 精品久久久中文字幕人妻| 2021国产精品视频| 99精品全国免费观看视频软件| 无码任你躁久久久久久老妇| 在线欧美日韩国产| 丝袜综合欧美| 日韩在线三级| 丁香婷婷深情五月亚洲| 波多野结衣在线观看视频| 欧美日韩福利电影| 精品日本12videosex| 日本黄色大片在线观看| 欧美亚洲国产一区二区三区 | 国产在线视频不卡| 国产日韩精品视频一区二区三区 | 麻豆av在线免费看|