精品欧美一区二区三区在线观看 _久久久久国色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人影院| 中文高清一区| 欧美网站一区二区| 中国成人在线视频| 精品国产乱码一区二区三 | 亚洲色图50p| 免费一区二区三区在线观看| 色av手机在线| www.亚洲精品| 国产美女精品视频| 久久精品久久国产| 欧美日韩爱爱| 日韩av黄色| 国产精品资源站在线| 国模精品视频一区二区| 99精品欧美一区二区| 美女黄页在线观看| 国产国产精品| 亚洲美女黄色片| 亚洲三级在线视频| 丝袜美腿一区| 亚洲影视在线播放| 亚洲欧美丝袜| 日本一区高清| 国产精品99久久不卡二区| 国产成人精品一区二区三区| 丝袜 亚洲 另类 欧美 重口| 老牛国内精品亚洲成av人片| 欧美日韩一区二区三区在线看| 97干在线视频| 麻豆网在线观看| 久久久99精品免费观看| 国产经典一区二区三区| 一区二区三区在线免费观看视频| 在线欧美不卡| 欧美裸身视频免费观看| 美女福利视频网| 精品一区免费| 亚洲精品在线观看www| 香蕉在线观看视频| 亚洲欧洲日韩精品在线| 欧美视频中文一区二区三区在线观看 | a级黄色一级片| 在线视频二区| 国产网站一区二区| 久久精品国产第一区二区三区最新章节| 欧美一级片黄色| 祥仔av免费一区二区三区四区| 欧美色播在线播放| 国产原创popny丨九色| 国产精品美女xx| 亚洲天堂网2018| 亚洲成人短视频| 日韩欧美一区二区三区| 亚洲理论电影在线观看| 欧美日韩经典丝袜| 亚洲一区二区三区四区在线观看| 992tv成人免费观看| 欧美被日视频| 国产精品成人网| 亚洲精品一品区二品区三品区| 美国成人毛片| 久久久99免费| 亚洲国产精品毛片| 91精彩在线视频| 国产精品久久久久永久免费观看| 亚洲国产一区在线| 婷婷成人激情| 亚洲欧美另类图片小说| 在线观看成人免费| 久草在线视频资源| 欧美日韩国产黄| 日日鲁鲁鲁夜夜爽爽狠狠视频97 | 综合干狼人综合首页| 日韩风俗一区 二区| 精品夜夜澡人妻无码av| 欧美日韩123| 午夜精品久久99蜜桃的功能介绍| 亚洲一二三四区| 六月婷婷激情综合| 丁香影院在线| 欧美性高跟鞋xxxxhd| 成人免费毛片播放| 亚洲成人毛片| 精品久久久久久综合日本欧美 | 2017欧美狠狠色| 日韩精品资源| 国产精品久久久久久福利| 夜夜爽夜夜爽精品视频| 俄罗斯av网站| 国产精品久久久久77777丨| 在线播放视频一区| 无码国产69精品久久久久网站| 全球av集中精品导航福利| 国产亚洲视频中文字幕视频| 久久久久久久麻豆| 国产视频一区免费看| 国产精品视频播放| 亚洲精品久久久久久久久久 | 欧美人禽zoz0强交| 99视频精品| 国产主播在线一区| 天天色天天操天天射| 久久精品视频一区二区| 国产精品88久久久久久妇女| 成人爽a毛片免费啪啪| 91精品国产综合久久久久久漫画 | 国产精品美女www爽爽爽| 欧美日韩中文字幕在线播放| 亚洲精品在线影院| 精品久久人人做人人爰| 日韩免费成人av| 精品成人久久| 成人在线小视频| 可以在线观看的av| 亚洲午夜激情av| 中文字幕成人免费视频| 五月综合久久| 欧美激情免费视频| 国产精品久久久久久69| 久久综合资源网| 久久男人资源站| 欧美97人人模人人爽人人喊视频| 日韩精品视频在线观看免费| 欧美成人777| 美女视频黄a大片欧美| 久久久久久久有限公司| 色a资源在线| 91精品蜜臀在线一区尤物| 女人十八毛片嫩草av| 国产精品一级| 国产女主播一区二区| 国产在线激情视频| 欧美日韩免费一区二区三区| 自拍偷拍亚洲天堂| 一区二区日本视频| 国产欧美日韩综合一区在线观看| 国产日产一区二区三区| 欧美三级韩国三级日本一级| 亚洲av综合一区二区| 国产视频一区免费看| 国产精品免费一区二区三区观看| 成人在线影视| 制服丝袜激情欧洲亚洲| 我要看一级黄色录像| 日韩和欧美一区二区| 欧美精品久久久| 在线天堂中文资源最新版| 日韩精品一区二区三区视频播放| 久久久成人精品视频| 草草影院第一页| 亚洲一区成人| 久久99国产精品99久久| 超碰在线公开| 亚洲精品视频免费| 免费黄色网址在线| 久久久精品国产99久久精品芒果| 日韩av片在线看| 亚洲调教一区| 日韩美女免费观看| 国产精品一区在线看| 欧美亚洲图片小说| 国产jizz18女人高潮| 久久99国产精品久久| 一级黄色片播放| 日本一区影院| 午夜精品久久17c| 五月天婷婷在线播放| 色综合中文字幕| www..com.cn蕾丝视频在线观看免费版 | 欧美一区二区三区男人的天堂| 亚洲最大的黄色网址| 国产成人av电影在线播放| 国产精品一色哟哟| 日韩欧美黄色| 国产精品永久免费在线| 91在线中字| 亚洲国产精品嫩草影院久久| 国产精品国产一区二区| 神马午夜精品95| 欧美午夜无遮挡| 一级二级黄色片| 国产精品一二三四| 成人毛片一区二区| 精品一区二区三区的国产在线观看| 国产精品久久久久久久久久尿| 日韩欧美小视频| 欧美精品一区二区三区高清aⅴ| 国产 日韩 欧美 在线| 中文字幕成人在线观看| 26uuu国产| 久久精品1区| 男同互操gay射视频在线看| h视频久久久| 国产精品夫妻激情| 久久五月精品中文字幕| 一本一道久久a久久精品逆3p| 国产免费无遮挡| 精品久久久在线观看| 992在线观看| 99re8在线精品视频免费播放| 人人干人人视频| 激情婷婷亚洲| 亚洲欧美日韩国产yyy| 牛牛影视一区二区三区免费看| 国产精品三级久久久久久电影| 女人天堂av在线播放| 一区二区三区精品99久久| 亚洲精选一区二区三区| 欧美性极品少妇| 日韩高清免费av| 亚洲欧美视频在线观看| 国产精品久久久久无码av色戒| 国产一区二三区| 北条麻妃视频在线| 一本色道久久精品| 特大黑人娇小亚洲女mp4| 97免费在线观看视频| 日本伊人色综合网| 青青草视频在线免费播放 | 中文字幕成人精品久久不卡| 亚洲第一天堂在线观看| 欧美丝袜自拍制服另类| 欧美国产成人精品一区二区三区| 一区二区三区中文字幕在线观看| 蜜桃传媒一区二区亚洲| 99精品国产99久久久久久白柏| 毛毛毛毛毛毛毛片123| 日韩精品1区2区3区| 国产免费黄色小视频| 欧美日韩精品免费观看视频完整| 亚洲高清在线观看一区| 国产99久久| 玛丽玛丽电影原版免费观看1977 | proumb性欧美在线观看| 中文字幕欧美视频| 久久99精品久久只有精品| 老头吃奶性行交视频| 蘑菇福利视频一区播放| 国产午夜福利100集发布| 欧美午夜精品| 黄色一级片国产| 欧美黄色aaaa| 波多野结衣av一区二区全免费观看| 四虎成人av| 国产精品美女在线播放| 99久久夜色精品国产亚洲96| 亚洲精品一区二区三区蜜桃久 | 日韩一区二区高清视频| 综合激情视频| 国产 国语对白 露脸| 欧美视频网站| 免费看欧美一级片| 亚洲精品三级| www.中文字幕在线| 久久精品毛片| av视屏在线播放| 美女一区二区视频| 捷克做爰xxxⅹ性视频| 国产在线播放一区| 久久久国产精品久久久| 菠萝蜜视频在线观看一区| 国产不卡一二三| 久久嫩草精品久久久久| 日本成人免费视频| 亚洲欧美在线另类| 久久久久久久久久一区二区三区| 亚洲成人免费看| 波多野结衣理论片| 欧美精选在线播放| 亚洲精品久久久久久无码色欲四季| 国产丝袜欧美中文另类| 成人信息集中地欧美| 亚洲人成午夜免电影费观看| 91成人性视频| 欧美91在线|欧美| 国产成人精品日本亚洲11| 图片婷婷一区| 一级黄色免费在线观看| 欧美在线不卡| 日韩欧美视频网站| 日韩高清不卡一区二区| 美女在线视频一区二区| 国产精品888| 捆绑凌虐一区二区三区| 亚洲国产精品激情在线观看| 欧美风情第一页| 亚洲国产aⅴ天堂久久| 亚洲欧美一区二区三区在线观看| 欧美中文字幕一区二区三区亚洲| 一级黄色短视频| 亚洲国产精品久久久久秋霞不卡| 国内三级在线观看| 亚洲福利视频在线| 成人免费高清在线播放| 久久天天躁狠狠躁夜夜躁| f2c人成在线观看免费视频| 国产成人精品网站| 激情不卡一区二区三区视频在线| 精品免费视频123区| 日韩av密桃| 久久亚洲a v| 日韩高清不卡在线| 国产伦理在线观看| 国产视频在线观看一区二区三区| 老妇女50岁三级| 色94色欧美sute亚洲线路二| 激情网站在线观看| 亚洲福利小视频| 香蕉视频在线播放| 日本三级韩国三级久久| 精品久久亚洲| 日本10禁啪啪无遮挡免费一区二区| 日本黄色成人| 成人av网站观看| 禁果av一区二区三区| 国产va亚洲va在线va| 美腿丝袜在线亚洲一区| 91丝袜在线观看| 亚洲一区二区三区四区中文字幕 | 老司机在线视频二区| 91精品成人久久| 中文在线综合| 一本色道久久综合亚洲精品婷婷| 一本综合精品| 国产精品麻豆入口| 超碰国产精品一区二页| 亚洲国产精品一区二区久| av在线免费网站| 国产国语刺激对白av不卡| 麻豆国产欧美一区二区三区r| 在线无限看免费粉色视频| 久久最新视频| 欧美bbbbb性bbbbb视频| 一个色在线综合| 国产一区二区三区在线观看| 中文字幕国产日韩| 波多野结衣亚洲| 欧美日本韩国国产| 亚洲激情专区| 一区二区三区四区影院| 一区二区三区在线视频观看58| 中文区中文字幕免费看| 伊人男人综合视频网| 六月婷婷综合| 久久99欧美| 麻豆久久婷婷| 美国黄色一级毛片| 欧美性高潮在线| 色视频在线观看免费| 久久久女人电视剧免费播放下载| 北条麻妃一区二区三区在线| 99视频精品全部免费看| 国产精品一品视频| 精品无码久久久久成人漫画| 欧美日韩大陆在线| av网站大全在线| 91在线看www| 伊人精品视频| 在线中文字日产幕| 亚洲国产综合人成综合网站| 丰满人妻一区二区| 韩国精品久久久999| 日韩三区视频| 国产真实乱子伦| 久久久国产精品麻豆| 中文字字幕在线中文乱码| 色琪琪综合男人的天堂aⅴ视频| 91精品亚洲一区在线观看| 91免费视频黄| 国产精品888| 美女又爽又黄免费视频| 亚洲欧美三级伦理| 亚州精品国产| 777久久精品一区二区三区无码| 粉嫩aⅴ一区二区三区四区| 国产精品自拍视频一区| 亚洲国产女人aaa毛片在线| 黄瓜视频成人app免费| 亚洲欧美日韩在线综合 | 国语对白精品一区二区| 免费观看污网站| 欧美性猛交丰臀xxxxx网站| 国产香蕉在线| 亚洲一区久久久| 欧美jjzz| 五月天婷婷在线观看视频| 午夜精品福利一区二区三区蜜桃| 四虎影视在线播放| 亚洲精品欧美日韩专区| 亚洲日本黄色| 999福利视频| 欧美人与动xxxxz0oz| 日韩欧美精品免费| 久久亚洲一级片| 国产又粗又猛视频| 奇门遁甲1982国语版免费观看高清| 精品国产91乱码一区二区三区四区| 性久久久久久久久久久久久久| 五月天激情小说综合|