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

那些開發(fā)者應(yīng)該知道但又略顯模糊的iOS 8 API

移動開發(fā) iOS
我們將探討下以下列出的功能,分享一些iOS 8中每個(gè)人都應(yīng)該知道的但比較模糊的API。從現(xiàn)在起,NSHipster將主要使用Swift編寫示例代碼,當(dāng)然偶爾會用Objective-C編寫。夏天結(jié)束的時(shí)候,我們希望所有的現(xiàn)有代碼樣本都能移植到Swift上,從而在語言間進(jìn)行迅速切換。

無論你問任何人,他們都會告訴你:WWDC2014是他們近些時(shí)日最令人興奮的一件事,沒有硬件發(fā)布信息,完全是關(guān)于軟件和開發(fā)者工具的。

2014年iOS 8和OS X Yosemite的公布將會讓蘋果平臺成為今年***領(lǐng)導(dǎo)力的平臺, iOS的擴(kuò)展性,連續(xù)性,SpriteKit增強(qiáng)以及SceneKit,還有Metal,Game HealthKit,HomeKit,Local Authentication和全新的拍照框架。更不用說引人注目的Xcode和Interface Builder,改進(jìn)后的iTunes Connect、TestFlight、Crash Reports以及CloudKit,當(dāng)然還有Swift!

還要抱怨嗎? 蘋果已經(jīng)慷慨地放寬了對新技術(shù)的保密措施,這意味著我們現(xiàn)在就可以討論那些閃亮的新東西。

本周,我們將探討下以下列出的功能,分享一些iOS 8中每個(gè)人都應(yīng)該知道的但比較模糊的API。

從現(xiàn)在起,NSHipster將主要使用Swift編寫示例代碼,當(dāng)然偶爾會用Objective-C編寫。夏天結(jié)束的時(shí)候,我們希望所有的現(xiàn)有代碼樣本都能移植到Swift上,從而在語言間進(jìn)行迅速切換。

## NSProcessInfo -isOperatingSystemAtLeastVersion ##

忘了[[UIDevice currentDevice] systemVersion] 和NSFoundationVersionNumber吧,這里有一個(gè)新的方法可在代碼中確定當(dāng)前的操作系統(tǒng):NSProcessInfo -isOperatingSystemAtLeastVersion

  1. import Foundation 
  2.  
  3. let yosemite = NSOperatingSystemVersion(majorVersion: 10, minorVersion: 10, patchVersion: 0) 
  4. NSProcessInfo().isOperatingSystemAtLeastVersion(yosemite) // false 

不過請記住,為了測試(進(jìn)行兼容性測試的時(shí)候),SomeClass.class或respondsToSelector:是檢查操作系統(tǒng)版本的一個(gè)更不錯(cuò)的選擇。C和Swift編譯器的宏可以

用來有條件地編譯基于目標(biāo)配置的源。(基于target的構(gòu)建配置,C或者Swift編譯的宏可以有條件地編譯源代碼)

## 新 NSFormatter 子類 ##

Foundation框架中最為嚴(yán)重缺乏就是對數(shù)量單位例如質(zhì)量和長度的處理能力。iOS中8和OS X Yosemite引入了三個(gè)新的類--NSEnergyFormatter、NSMassFormatter以及NSLengthFormatter,填 補(bǔ)了這一缺失。這有效地使Foundation框架中NSFormatter子類的數(shù)目加倍,以前僅限于NSNumberFormatter、NSDateFormatter以及NSByteCountFormatter。

雖然這些新的格式化類是Foundation框架中的一部分,但是它們主要在HealthKit中使用。

## NSEnergyFormatter ##

NSEnergyFormatter以焦耳和卡路里作為格式化能量單位,焦耳是運(yùn)動鍛煉時(shí)用到的單位,卡路里營養(yǎng)學(xué)上熱量單位。

  1. let energyFormatter = NSEnergyFormatter() 
  2. energyFormatter.forFoodEnergyUse = true 
  3.  
  4. let joules = 10_000.0 
  5. println(energyFormatter.stringFromJoules(joules)) // "2.39 Cal"

## NSMassFormatter ##

雖然是物質(zhì)存在的基本單位,但mass在HealthKit中主要指用戶的重量。但還有一句忘記翻譯:是的,Mass和weight是不一樣的,但是在程序中,這里不是科學(xué)課程,所以不要那么迂腐了?。?/p>

  1. let massFormatter = NSMassFormatter() 
  2. let kilograms = 60.0 
  3. println(massFormatter.stringFromKilograms(kilograms)) // "132 lb" 

## NSLengthFormatter ##

為完善新NSFormatter,還有一個(gè)子類是NSLengthFormatter。把它看成是一個(gè)MKDistanceFormatter的更有用版本,它擁有更多的單位選項(xiàng)和格式設(shè)置選項(xiàng)。

  1. let lengthFormatter = NSLengthFormatter() 
  2. let meters = 5_000.0 
  3. println(lengthFormatter.stringFromMeters(meters)) // "3.107 mi" 

## CMPedometer ##

iOS 8繼續(xù)了之前的健康路線,在最近一次發(fā)布中,CMStepCounter比之前做了嚴(yán)格的改進(jìn),可及時(shí)從離散數(shù)據(jù)點(diǎn)進(jìn)行查詢,跟蹤用戶的步數(shù)和距離,甚至計(jì)算用戶爬了多少級樓梯。

令人驚訝的是M7的芯片可以勝任這項(xiàng)任務(wù)。

  1. import CoreMotion 
  2.  
  3. let lengthFormatter = NSLengthFormatter() 
  4. let pedometer = CMPedometer() 
  5. pedometer.startPedometerUpdatesFromDate(NSDate(), withHandler: { data, error in 
  6.     if !error { 
  7.         println("Steps Taken: \(data.numberOfSteps)"
  8.  
  9.         let distance = data.distance.doubleValue 
  10.         println("Distance: \(lengthFormatter.stringFromMeters(distance))"
  11.  
  12.         let time = data.endDate.timeIntervalSinceDate(data.startDate) 
  13.         let speed = distance / time 
  14.         println("Speed: \(lengthFormatter.stringFromMeters(speed)) / s"
  15.     } 
  16. })

## CMAltimeter ##

在支持的設(shè)備上,CMPedometer對floorsAscended/ floorsDescended的統(tǒng)計(jì)可使用CMAltimeter進(jìn)行擴(kuò)充,以獲得更精細(xì)的垂直距離:

  1. import CoreMotion 
  2.  
  3. let altimeter = CMAltimeter() 
  4. if CMAltimeter.isRelativeAltitudeAvailable() { 
  5.     altimeter.startRelativeAltitudeUpdatesToQueue(NSOperationQueue.mainQueue(), withHandler: { data, error in 
  6.         if !error { 
  7.             println("Relative Altitude: \(data.relativeAltitude)"
  8.         } 
  9.     }) 

## CLFloor ##

CLFloor是iOS 8中的新API,CoreMotion中的新功能體現(xiàn)了蘋果公司的雄心勃勃的室內(nèi)導(dǎo)航計(jì)劃。這些信息將會在本地化導(dǎo)航應(yīng)用中扮演重要的角色。

  1. import CoreLocation 
  2.  
  3. class LocationManagerDelegate: NSObject, CLLocationManagerDelegate { 
  4.     func locationManager(manager: CLLocationManager!, didUpdateLocations locations: AnyObject[]!) { 
  5.         let location: CLLocation? = locations[0] as? CLLocation 
  6.         if let floor: CLFloor? = location?.floor { 
  7.             println("Current Floor: \(floor?.level)"
  8.         } 
  9.     } 
  10.  
  11. let manager = CLLocationManager() 
  12. manager.delegate = LocationManagerDelegate() 
  13. manager.startUpdatingLocation() 

## HKStatistics ##

作為一個(gè)框架,HealthKit涉及了很廣泛的范圍,包括許多個(gè)新的類和常量。理解HKStatistics存在的可能性給了開發(fā)者一個(gè)良好的開端。

HealthKit在一個(gè)統(tǒng)一的API中管理著來自用戶所有設(shè)備中的生物數(shù)據(jù),可以用強(qiáng)大的方式跟蹤并匯總用戶的多項(xiàng)生物數(shù)據(jù),比如心率、熱量攝入以及有氧輸出等數(shù)據(jù)。

下面示例展示了如何對持續(xù)一天的數(shù)據(jù)進(jìn)行分組和逐個(gè)解讀:

  1. import HealthKit 
  2.  
  3. let collection: HKStatisticsCollection? = ... 
  4. let statistics: HKStatistics? = collection!.statisticsForDate(NSDate()) 
  5. for item: AnyObject in statistics!.sources { 
  6.     if let source = item as? HKSource { 
  7.         if let quantity: HKQuantity = statistics!.sumQuantityForSource(source) { 
  8.             if quantity.isCompatibleWithUnit(HKUnit.gramUnitWithMetricPrefix(.Kilo)) { 
  9.                 let massFormatter = NSMassFormatter() 
  10.                 let kilograms = quantity.doubleValueForUnit(HKUnit.gramUnitWithMetricPrefix(.Kilo)) 
  11.                 println(massFormatter.stringFromKilograms(kilograms)) 
  12.             } 
  13.  
  14.             if quantity.isCompatibleWithUnit(HKUnit.meterUnit()) { 
  15.                 let lengthFormatter = NSLengthFormatter() 
  16.                 let meters = quantity.doubleValueForUnit(HKUnit.meterUnit()) 
  17.                 println(lengthFormatter.stringFromMeters(meters)) 
  18.             } 
  19.  
  20.             if quantity.isCompatibleWithUnit(HKUnit.jouleUnit()) { 
  21.                 let energyFormatter = NSEnergyFormatter() 
  22.                 let joules = quantity.doubleValueForUnit(HKUnit.jouleUnit()) 
  23.                 println(energyFormatter.stringFromJoules(joules)) 
  24.             } 
  25.         } 
  26.     } 

NSHipster后期將涵蓋更多有關(guān)HealthKit的功能,敬請期待!

## NSStream +getStreamsToHostWithName ##

從很多方面看,WWDC 2014上蘋果修補(bǔ)了此前存在的諸多不足之處。一些很小的事情,比如添加缺失的NSStream initializer,而不是依賴笨拙橋接CFStreamCreatePairWithSocketToHost的調(diào)用。這就是+[NSStream getStreamsToHostWithName:port:inputStream:outputStream:]

  1. var inputStream: NSInputStream? 
  2. var outputStream: NSOutputStream? 
  3.  
  4. NSStream.getStreamsToHostWithName(hostname: "nshipster.com"
  5.                                       port: 5432, 
  6.                                inputStream: &inputStream, 
  7.                               outputStream: &outputStream) 

 

## NSString -localizedCaseInsensitiveContainsString ##

又如下面這個(gè)是“小而堅(jiān)實(shí)的修復(fù)”,一種更簡便的NSString的方法:

  1. let string: NSString = "Café" 
  2. let substring: NSString = "É" 
  3.  
  4. string.localizedCaseInsensitiveContainsString(substring) // true

## CTRubyAnotationRef ##

如果你是一個(gè)語言學(xué)和文字排版的執(zhí)著者,那么CoreText框架新增添的部分可能會令你起身歡呼了。

......哦對。不過這個(gè)Ruby不是你印象中的Ruby,它用來在某些亞洲人的腳本中展示字符發(fā)音的。

  1. @import CoreText; 
  2.  
  3. NSString *kanji = @"貓"
  4. NSString *hiragana = @"ねこ"
  5.  
  6. CFStringRef furigana[kCTRubyPositionCount] = 
  7.     {(__bridge CFStringRef)hiragana, NULL, NULL, NULL}; 
  8.  
  9. CTRubyAnnotationRef ruby = 
  10.     CTRubyAnnotationCreate(kCTRubyAlignmentAuto, kCTRubyOverhangAuto, 0.5, furigana);

不可否認(rèn),文檔沒有完全清晰地描述如何精確地將這部分合并到剩余的CoreText繪制調(diào)用中,但是結(jié)果看起來也許會是這樣:

ねこ

## 新的日歷識別符 ##

有什么比Ruby注釋更書***氣的?iOS 8和OS X Yosemite中添加了新日歷標(biāo)識符。此次更新讓Foundation框架更新至***的CLDR版本。不過,在NSHipsters看來,French Republican Calendar(法國共和歷)依然有自己的亮點(diǎn)。

新日歷識別符:

- NSCalendarIdentifierCoptic: 又名亞歷山大歷,之前被Coptic Orthodox Church使用。

- NSCalendarIdentifierEthiopicAmeteMihret:埃塞俄比亞日歷,Amete Mihret(公元8世紀(jì)左右)

- NSCalendarIdentifierEthiopicAmeteAlem:埃塞俄比亞日歷,Amete Alem(公元前5493前后)

- NSCalendarIdentifierIslamicTabular:一個(gè)簡單的伊斯蘭歷法表格,在公元622年7月15日星期四的天文時(shí)代使用。

- NSCalendarIdentifierIslamicUmmAlQura:在沙特阿拉伯使用的伊斯蘭烏姆Qura日歷。根據(jù)天文計(jì)算,而不是表格的行為。

#p#

## NSURLCredentialStorage ##

自去年引入NSURLSession后,F(xiàn)oundation的URL載入系統(tǒng)基本上沒有太大變化。但是,這個(gè)新功能可讓你更方便地以異步非閉包的形式獲取和設(shè)置任務(wù)憑證。

  1. import Foundation 
  2.  
  3. let session = NSURLSession() 
  4. let task = session.dataTaskWithURL(NSURL(string: "http://nshipster.com"), completionHandler: { data, response, error in 
  5.     // ... 
  6. }) 
  7.  
  8. let protectionSpace = NSURLProtectionSpace() 
  9. NSURLCredentialStorage.getCredentialsForProtectionSpace(protectionSpace: protectionSpace, task: task, completionHandler: { credentials in 
  10.     // ... 
  11. }) 

## kUTTypeToDoItem ##

對比過***的API后,人們可能會注意到大量新的UTIs常量,最吸引我的是kUTTypeToDoItem:

  1. import MobileCoreServices 
  2.  
  3. kUTTypeToDoItem // "public.to-do-item" 

作為一個(gè)公眾類型,現(xiàn)在iOS和OS X提供了一個(gè)統(tǒng)一的方法來共享應(yīng)用程序之間的任務(wù)。如果你碰巧正在開發(fā)一個(gè)任務(wù)管理工具,那么適當(dāng)?shù)卣线@個(gè)系統(tǒng)類型應(yīng)該是你首先要做的工作。(說實(shí)話,機(jī)會是非常好的,考慮在App Store有多少這樣的工具)

## kCGImageMetadataShouldExcludeGPS ##

大多數(shù)用戶都完全不知道用手機(jī)拍攝的大部分照片,包含了全球定位系統(tǒng)(GPS)的元數(shù)據(jù)。因?yàn)檫@個(gè)小細(xì)節(jié),無數(shù)個(gè)人的隱私遭受侵犯。***的圖片 I/O框架又為CGImageDestination提供一個(gè)方便的新選項(xiàng):kCGImageMetadataShouldExcludeGPS,這確實(shí) 是你所期望的東西。

  1. @import UIKit; 
  2. @import ImageIO; 
  3. @import MobileCoreServices; 
  4.  
  5. UIImage *image = ...; 
  6. NSURL *fileURL = [NSURL fileURLWithPath:@"/path/to/output.jpg"]; 
  7. NSString *UTI = kUTTypeJPEG; 
  8. NSDictionary *options = @{ 
  9.                           (__bridge id)kCGImageDestinationLossyCompressionQuality: @(0.75), 
  10.                           (__bridge id)kCGImageMetadataShouldExcludeGPS: @(YES), 
  11.                           }; 
  12.  
  13. CGImageDestinationRef imageDestinationRef = 
  14. CGImageDestinationCreateWithURL((__bridge CFURLRef)fileURL, 
  15.                                 (__bridge CFStringRef)UTI, 
  16.                                 1, 
  17.                                 NULL); 
  18.  
  19. CGImageDestinationAddImage(imageDestinationRef, [image CGImage], (__bridge CFDictionaryRef)options); 
  20. CGImageDestinationFinalize(imageDestinationRef); 
  21. CFRelease(imageDestinationRef);

## WTF_PLATFORM_IOS ##

#define WTF_PLATFORM_IOS`已經(jīng)從`JavaScriptCore`中移除了。

## WKWebView ##

UIWebView已死,WKWebView長存。

WKWebView為你自己的應(yīng)用程序提供Safari瀏覽器級別的性能,并進(jìn)一步提高了UIWebView的使用偏好和配置:

  1. import WebKit 
  2.  
  3. let preferences = WKPreferences() 
  4. preferences.javaScriptCanOpenWindowsAutomatically = false 
  5.  
  6. let configuration = WKWebViewConfiguration() 
  7. configuration.preferences = preferences 
  8.  
  9. let webView = WKWebView(frame: self.view.bounds, configuration: configuration) 
  10. let request = NSURLRequest(URL: NSURL(string: "http://nshipster.com")) 
  11. webView.loadRequest(request) 

## NSQualityOfService ##

蘋果框架概念基礎(chǔ)中將不再過分強(qiáng)調(diào)線程這個(gè)概念。這對開發(fā)者確實(shí)一件好事。

以下這種趨勢的變化在***的API也應(yīng)用于NSOperation。新的qualityOfService屬性替換了ThreadPriority。這些新的語義允許應(yīng)用程序推遲非關(guān)鍵工作,以確保始終如一的用戶體驗(yàn)。

該NSQualityOfService枚舉定義了以下值:

- UserInteractive:在實(shí)現(xiàn)圖形密集型相關(guān)工作時(shí)使用UserInteractive QoS,比如滾動或動畫。

- UserInitiated:在實(shí)現(xiàn)用戶精確請求請求相關(guān)工作時(shí)使用UserInitiated QoS,但不要求精確到毫秒,比如動畫。例如,如果用戶打開email app馬上查看郵件。

- Utility:Utility QoS用于執(zhí)行已經(jīng)由用戶請求自動發(fā)生的任務(wù)。例如,電子郵件應(yīng)用程序可以被配置為每隔5分鐘自動檢查郵件。如果系統(tǒng)是非常有限的資源,而電子郵件檢查被推遲幾分鐘這也是被允許的。

- Background: Background QoS用于執(zhí)行用戶可能甚至都沒有意識到正在發(fā)生的工作,比如email app可能使用它來執(zhí)行索引搜索。

Quality of Service貫穿了IOS 8和OS X Yosemite整個(gè)Foundation,所以好好利用這一新功能吧。

## LocalAuthentication ##

***,一個(gè)iOS 8最值得期待的功能:LocalAuthentication。自從iPhone5S引入TouchID之后,開發(fā)人員一直樂此不疲的在自己的應(yīng)用程序中進(jìn)行使用。

想象一下:有了CloudKit和LocalAuthentication,創(chuàng)建用戶帳戶的障礙已經(jīng)一去不復(fù)返了。只需掃描一下你的指紋,你就能進(jìn)入了。

LocalAuthentication以LAContext類的方式工作,評估一個(gè)特定的策略,并給出一個(gè)拇指朝上或者朝下的用戶驗(yàn)證。它不會將用戶的信息提供給應(yīng)用程序,所有數(shù)據(jù)都被保存在硬件中。

  1. LAContext *context = [[LAContext alloc] init]; 
  2. NSError *error = nil; 
  3.  
  4. if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics 
  5.                          error:&error]) 
  6.     [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics 
  7.             localizedReason:NSLocalizedString(@"...", nil) 
  8.                       reply:^(BOOL success, NSError *error) { 
  9.         if (success) { 
  10.             // ... 
  11.         } else { 
  12.             NSLog(@"%@", error); 
  13.         } 
  14.     }]; 
  15. else { 
  16.     NSLog(@"%@", error); 

結(jié)語

雖然這些天看起來像所有人在談?wù)揝wift,但如果我們忽略了iOS 8 & OS X Yosemite中這些新的API,那就有點(diǎn)遺憾了,它們可以為你做些實(shí)際的事情.

 

責(zé)任編輯:chenqingxiang 來源: cocoachina
相關(guān)推薦

2018-10-16 11:03:19

API開發(fā)者AR

2017-04-12 09:42:29

Java開發(fā)工具

2012-11-13 10:34:03

PythonWeb

2014-07-17 09:31:50

iOS8SDK

2015-06-05 09:12:52

OpenStack設(shè)計(jì)指導(dǎo)開發(fā)者

2014-08-08 13:27:34

Android LAndroid開發(fā)

2016-12-26 11:00:57

Java開發(fā)者工具

2025-08-29 07:00:00

Go并發(fā)開發(fā)

2014-10-11 10:20:50

程序員

2023-11-27 15:49:55

軟件開發(fā)系統(tǒng)設(shè)計(jì)

2016-03-04 10:18:24

xcode技巧開發(fā)

2023-11-17 14:18:48

開發(fā)編程

2013-06-26 09:42:52

Web開發(fā)URL編碼URL

2019-11-23 23:38:51

開發(fā)者微服務(wù)安全

2016-03-04 10:25:50

Xcode技巧開發(fā)

2022-04-27 09:48:56

JS前端開發(fā)

2016-12-19 15:35:10

Web開發(fā)者jQueryi18n

2019-11-20 12:09:01

JavaScriptGitHub工具

2013-05-23 11:22:04

Android開發(fā)者UI設(shè)計(jì)Android設(shè)計(jì)

2020-02-11 12:17:53

開發(fā)命令
點(diǎn)贊
收藏

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

黑人巨大猛交丰满少妇| 四虎精品欧美一区二区免费| 无码日韩精品一区二区| 欧美日韩激情| 日韩一区二区免费在线电影| 一二三四视频社区在线| 二区在线观看| 国产不卡在线一区| 国产精品高潮呻吟久久av无限| 成年人视频软件| 国产乱论精品| 在线成人午夜影院| 97超碰青青草| 91高清在线观看视频| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 美女黄色片视频| 里番在线播放| 日韩理论片网站| 日韩av电影免费播放| 午夜久久久久久久久久| 日本aⅴ免费视频一区二区三区| 欧美国产精品va在线观看| 精品无码人妻一区二区免费蜜桃 | 蜜桃精品久久久久久久免费影院| 国产美女明星三级做爰| 久久国产日本精品| 久久久女女女女999久久| 日韩欧美在线视频播放| 中文字幕精品影院| 欧美不卡视频一区| 五月六月丁香婷婷| 久久91超碰青草在哪里看| 精品国产乱码久久久久久天美 | 性欧美13一14内谢| www.豆豆成人网.com| 51精品久久久久久久蜜臀| 久久综合久久色| 国产中文在线播放| 亚洲午夜在线电影| 免费看日b视频| av网站免费在线观看| 中文一区二区完整视频在线观看| 欧美日韩国产免费一区二区三区 | 曰本一区二区| 欧美人体做爰大胆视频| 男女视频在线看| 欧美三级精品| 色老综合老女人久久久| 欧美变态另类刺激| 蜜桃av在线播放| 午夜欧美视频在线观看| 国产精品国产对白熟妇| 久久不射影院| 亚洲国产精品久久不卡毛片| 欧美视频在线第一页| 超碰在线最新| 一区二区三区视频在线看| 一二三在线视频| 伊人春色在线观看| 一区二区三区在线高清| 久久国产精品免费观看| av香蕉成人| 亚洲自拍偷拍av| 男女啪啪免费视频网站| 国产在线88av| 在线免费一区三区| 天堂在线资源视频| av一级久久| 欧美岛国在线观看| 182在线视频| 女人丝袜激情亚洲| 中文字幕国产日韩| 国产精品免费人成网站酒店| 亚洲视频免费| 2024亚洲男人天堂| 蜜臀99久久精品久久久久小说| 日本不卡一区二区三区高清视频| 成人免费视频97| 亚洲大尺度网站| 91蜜桃在线免费视频| 亚洲成人第一| 人人超在线公开视频| 精品国产91久久久| 欧美女同在线观看| av不卡一区二区| 亚洲深夜福利在线| 91嫩草丨国产丨精品| 国产农村妇女精品一二区 | 精品女同一区二区三区在线观看| 欧美一区二区三区在线观看| 在线天堂www在线国语对白| 精品视频99| 久久999免费视频| 久久www视频| 九色porny丨首页入口在线| 91久久人澡人人添人人爽欧美| 老司机久久精品| 美国十次av导航亚洲入口| 综合激情国产一区| 免费中文字幕在线观看| 久久这里有精品15一区二区三区| 亚洲一区二区三区乱码aⅴ| 天堂中文在线视频| 中文字幕一区二区三区蜜月| 精品无码国模私拍视频| 欧美黄色a视频| 亚洲精品国产欧美| 日韩激情小视频| 免费在线亚洲| 国产精品加勒比| 秋霞影院午夜丰满少妇在线视频| 亚洲va在线va天堂| 婷婷激情小说网| 精品大片一区二区| 91精品国产777在线观看| 亚洲一区二区天堂| 久久免费国产精品| 国产又粗又猛又爽又黄的网站| abab456成人免费网址| 亚洲国产成人精品久久久国产成人一区 | 久久亚洲国产成人精品性色| 日韩和欧美一区二区| 精品免费视频123区| 97caopor国产在线视频| 色噜噜狠狠成人中文综合| 丝袜熟女一区二区三区| 久久久久美女| 国产精品自拍视频| 国产视频网站在线| 精品国产福利视频| 久久久老熟女一区二区三区91| 欧美在线三区| 成人羞羞国产免费| 永久免费在线观看视频| 色综合天天综合网天天狠天天| 美女搡bbb又爽又猛又黄www| 影视一区二区| 91最新在线免费观看| 天堂аⅴ在线地址8| 日本福利一区二区| 国产av自拍一区| 石原莉奈在线亚洲三区| 美国av一区二区三区| 欧产日产国产精品视频| 亚洲国产欧美自拍| 一级免费在线观看| jizz一区二区| 国产素人在线观看| 欧美久久精品| 奇米影视亚洲狠狠色| 男人av在线| 日本韩国一区二区三区视频| 亚洲激情视频小说| 麻豆9191精品国产| 日韩欧美三级电影| 福利一区二区三区视频在线观看 | 国产私拍一区| 免费h视频在线观看| 国产丝袜一区二区三区| 久久国产视频一区| 国产片一区二区三区| 老司机午夜av| 91精品国产视频| 99精彩视频在线观看免费| 国产盗摄一区二区| 亚洲成人av资源网| 99精品人妻国产毛片| 国产亚洲一二三区| 在线不卡一区二区三区| 欧美黄色一区| 久久国产精品免费一区| 二区三区不卡| 按摩亚洲人久久| 午夜精品久久久久久久第一页按摩| 一区二区三区产品免费精品久久75| 国产伦精品一区二区三区精品| 噜噜噜久久亚洲精品国产品小说| 天天人人精品| 麻豆精品久久| 欧美在线免费视频| 午夜激情在线观看| 欧美精品免费视频| 日韩精品久久久久久久| 久久精品一区蜜桃臀影院| 99re6在线观看| 最新日韩av| 日韩中文字幕一区二区| 亚洲精品a区| 欧美最猛黑人xxxx黑人猛叫黄| 91精彩在线视频| 精品黑人一区二区三区久久| 无码人妻精品一区二区蜜桃色欲| 亚洲品质自拍视频| 久久久久国产精品区片区无码| 日韩av一级片| 日韩一级性生活片| 成人三级视频| 久久久综合亚洲91久久98| 日韩久久99| 91成人天堂久久成人| 九七电影韩国女主播在线观看| 日韩av在线免费播放| 一本色道久久综合精品婷婷 | 久久久久亚洲视频| 亚洲尤物在线视频观看| 快灬快灬一下爽蜜桃在线观看| 粉嫩嫩av羞羞动漫久久久| 亚洲国产精品三区| 国产欧美激情| av动漫在线播放| 久久精品播放| 久久综合一区二区三区| 欧美9999| 国产一区二中文字幕在线看| 日韩av影片| 欧美激情xxxx性bbbb| freemovies性欧美| 亚洲欧美激情一区| 黄色一级a毛片| 欧美一区二区三区四区久久| 精品乱码一区内射人妻无码 | 久久久久国产一区二区三区四区| 制服下的诱惑暮生| 久久精品国产99国产| 成人3d动漫一区二区三区| 日韩一级精品| 日本wwwcom| 欧美不卡一区| 三年中国中文在线观看免费播放| 狠狠色丁香婷婷综合影院| 精品午夜一区二区| 国产劲爆久久| av一本久道久久波多野结衣| 爱情电影网av一区二区| 国产精品日日做人人爱| 日韩av大片站长工具| 91sa在线看| 国产高潮在线| 91av视频在线观看| 老司机深夜福利在线观看| 欧美激情视频给我| 日本在线视频中文有码| 久久九九热免费视频| 黄色网址免费在线观看| 久久精品一偷一偷国产| 日本不卡不卡| 美女av一区二区三区| av片在线观看永久免费| 欧美成人精品在线观看| 亚洲电影视频在线| 欧美福利视频在线观看| 国产探花在线观看| 亚洲18私人小影院| 筱崎爱全乳无删减在线观看| **欧美日韩vr在线| 97久久香蕉国产线看观看| 国产高清在线不卡| 国产亚洲欧美日韩精品一区二区三区| 国产精品久久久久久久久久久久| 久久电影天堂| 91视频免费在线| 亚洲国产中文在线| 国产伦视频一区二区三区| 日韩在线你懂的| 欧美午夜免费| 91精品综合久久久久久久久久久 | 欧美福利精品| 日韩精品永久网址| 老司机午夜网站| 国产一区导航| 欧美精品性生活| 国产乱色国产精品免费视频| 国产国语老龄妇女a片| www日韩大片| а天堂中文在线资源| 亚洲精品欧美激情| 97免费在线观看视频| 欧美亚洲国产一区二区三区| 国产情侣av在线| 亚洲成年人在线播放| 国产午夜精品一区理论片| 日韩中文字幕在线观看| jizz一区二区三区| 国产成人+综合亚洲+天堂| 国产乱码精品一区二区三区亚洲人| 成人动漫视频在线观看完整版 | 久久久久久久久黄色| 欧美日韩高清一区二区三区| 亚洲精品喷潮一区二区三区| 亚洲天堂一区二区三区| 在线电影福利片| 国产精品高清在线观看| 亚洲一区二区三区在线免费| 欧美在线一二三区| 久久久五月天| 中文字幕无码不卡免费视频| 国产乱码一区二区三区| av直播在线观看| 亚洲黄色免费网站| 波多野结衣视频观看| 日韩你懂的电影在线观看| 女人天堂在线| 欧美—级高清免费播放| 日本中文字幕视频一区| 精品国产免费一区二区三区 | 久久免费国产视频| 欧美大片网站| 欧美日韩国产高清视频| 国内在线观看一区二区三区| 美女网站视频黄色| av在线一区二区三区| 日本aⅴ在线观看| 欧美丝袜丝交足nylons| 色哟哟在线观看| 欧美激情乱人伦一区| 天天综合91| 视频在线精品一区| 午夜综合激情| 中文字幕天堂网| 亚洲黄色片在线观看| 国产精品人妻一区二区三区| 亚洲网在线观看| 在线天堂资源www在线污| 国产精品xxx在线观看www| 91精品国产91久久综合| 中文字幕日韩综合| 中文字幕+乱码+中文字幕一区| 欧美性猛交bbbbb精品| 精品成人佐山爱一区二区| 污污的视频在线观看| 成人久久久久久久| 久久看人人摘| 在线看免费毛片| 国产精品免费视频网站| 四虎影院在线免费播放| 亚洲欧美综合精品久久成人| 小h片在线观看| 欧美日韩无遮挡| 久久久噜噜噜| 国产免费无遮挡吸奶头视频| 欧美性生活大片免费观看网址| 视频福利在线| 欧美一区二区三区四区在线| 日韩精品丝袜美腿| 日韩欧美国产免费| 91视频91自| 无码人妻丰满熟妇奶水区码| 夜夜嗨av色一区二区不卡| 亚洲伦乱视频| 一区二区三区欧美在线| 黄一区二区三区| 青青草原免费观看| 日韩欧美国产系列| sm在线观看| 欧美xxxx黑人又粗又长精品| 久久婷婷久久| 大胸美女被爆操| 91麻豆精品国产| 蜜桃传媒在线观看免费进入| 风间由美一区二区三区| 亚洲精品裸体| 国产精品av久久久久久无| 欧美日韩午夜影院| 91麻豆免费在线视频| 粉嫩精品一区二区三区在线观看| 国产欧美午夜| av手机在线播放| 欧美一区二区视频观看视频| 1024在线看片你懂得| 日本高清不卡一区二区三| 美女视频一区二区三区| 欧美日韩综合一区二区| 亚洲国产精品一区二区久| 三级成人黄色影院| 正在播放亚洲| 不卡区在线中文字幕| 欧美brazzers| 理论片在线不卡免费观看| 国产一区福利| 国产三级国产精品国产专区50| 18涩涩午夜精品.www| 午夜成人鲁丝片午夜精品| 国产精品大片wwwwww| 在线精品视频在线观看高清| 国产不卡一二三| 欧美日韩日本视频| 超碰中文在线| 亚洲国产精品一区在线观看不卡| 国产精品123| 亚洲av无码不卡| 久久久久久久久电影| av一区二区高清| 亚洲日本久久久| 欧美日韩一区不卡| 大香伊人久久| 一区二区三区四区不卡| 95精品视频在线| 国产特级黄色片| 国产福利精品视频| 最新亚洲视频|