精品欧美一区二区三区在线观看 _久久久久国色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ù)棧公眾號

91探花在线观看| 亚洲综合网av| 伊人网中文字幕| 亚洲欧美日韩免费| 久久久久国产精品一区三寸| 中文字幕v亚洲ⅴv天堂| 三级网站免费看| 国产精品粉嫩| 一区二区三区在线免费播放| 久久天天狠狠| 国产精品日韩无码| 亚洲少妇在线| 久久高清视频免费| 国产又爽又黄无码无遮挡在线观看 | 国内精品久久久久影院色| 久久久免费电影| 国产激情av在线| 韩国女主播一区二区三区| 在线精品视频免费播放| 99色这里只有精品| 欧美日韩xx| 久久综合色天天久久综合图片| 国产在线精品自拍| 久久不卡免费视频| 综合天天久久| 中文字幕一精品亚洲无线一区 | 欧美日韩中文字幕在线播放 | 99久久精品免费| 国产精品入口夜色视频大尺度 | 影音国产精品| 久久精品国产成人精品| 国产 欧美 在线| 波多野结衣乳巨码无在线| 国产乱人乱偷精品视频| 久久久久久一区二区| 九九热最新视频//这里只有精品 | 91av久久久| 美女精品在线| 高清欧美性猛交xxxx| 日韩在线视频网址| 欧美gayvideo| 亚洲香蕉伊综合在人在线视看| 欧美日韩一区二区区| 日本午夜精品久久久久| 色激情天天射综合网| 少妇无码av无码专区在线观看 | 国产精品久久久久久久久久久久久久久久久久 | 日韩亚洲不卡在线| 视频福利在线| av在线这里只有精品| 亚洲一区二区三区乱码aⅴ| 在线免费看毛片| 日韩电影在线一区二区| 欧美最猛性xxxx| 日本天堂网在线| 午夜一区不卡| 国产成人精品免费视频| 无码日韩精品一区二区| 久久中文字幕一区二区三区| 欧美在线欧美在线| 久久久精品免费看| 亚洲另类黄色| 国产91精品久久久| 天天操天天操天天操天天| 亚洲一区黄色| 日本精品视频在线观看| 日韩av在线播| 国产精品久久久一区二区| 4388成人网| 亚洲国产精品无码久久久| 日韩av在线播放中文字幕| 68精品久久久久久欧美| 国产又粗又爽视频| 日韩av电影天堂| 成人a在线视频| 精品国产av一区二区| 国产伦精品一区二区三区在线观看| 91在线观看免费观看| 国产黄a三级三级三级| 成人免费不卡视频| 精品一卡二卡三卡四卡日本乱码| 你懂的在线播放| 日本一区二区不卡视频| 久久最新免费视频| av影院在线免费观看| 欧美午夜精品久久久久久人妖 | 精品一二三四在线| 91一区二区三区| 五月天婷婷视频| 欧美国产禁国产网站cc| 久久久久久久久久久久久国产| 欧美极品少妇videossex| 日韩欧美大尺度| 中文字幕永久有效| 99re热精品视频| 亚洲欧洲在线视频| 五月天婷婷色综合| 国产精品一区亚洲| 成人在线播放av| 三级在线观看网站| 国产精品乱人伦中文| 热99这里只有精品| 视频欧美精品| 日韩精品视频观看| 成人免费黄色小视频| 亚洲综合日本| 亚洲一区二区三区xxx视频| 日本一二三区在线视频| 亚洲欧美一区二区三区国产精品| 亚洲 欧美 日韩 国产综合 在线| 另类一区二区| 日韩久久精品成人| 青青草原在线免费观看| 日日摸夜夜添夜夜添亚洲女人| 亚洲最大成人免费视频| 国产三级在线观看| 午夜欧美大尺度福利影院在线看 | 黑人巨大精品欧美一区二区桃花岛| 欧美日韩aaaaa| 中文人妻一区二区三区| 欧美二区视频| 国产日韩欧美成人| 国产色在线 com| 欧美日韩国产精品一区二区三区四区| 五月天视频在线观看| 在线亚洲a色| 午夜精品福利在线观看| 国产伦精品一区二区三区四区 | 久久久久网址| 青青草原国产在线| 91精品国产综合久久久蜜臀图片| 日韩中文字幕有码| 亚洲少妇自拍| 国产一区二区久久久| 怡红院av在线| 欧美高清视频一二三区| 性欧美精品男男| 国产精品一二| 狠狠干一区二区| av手机在线观看| 欧美精品一区二区三区在线播放| 农村妇女精品一区二区| 美女任你摸久久| 欧美一区国产一区| 中文在线а√天堂| 亚洲精品美女视频| 特黄视频免费看| 久久蜜桃一区二区| 久久久免费视频网站| 日韩在线影视| 欧美在线视频免费观看| 亚洲 小说区 图片区 都市| 午夜激情一区二区三区| 婷婷五月精品中文字幕| 亚洲精品社区| 精品乱码一区二区三区| 色在线视频观看| 亚洲奶大毛多的老太婆| 精品久久久久久久久久久久久久久久久久| xf在线a精品一区二区视频网站| 日韩欧美国产免费| 免费观看久久av| 国产精品视频一区二区高潮| 亚洲图片88| 69堂精品视频| 欧美丰满艳妇bbwbbw| 国产99精品国产| 国产精品免费看久久久无码| 91麻豆精品激情在线观看最新 | 狠狠色狠狠色综合| 免费在线精品视频| 福利片在线一区二区| 91成人性视频| 成a人v在线播放| 91麻豆精品国产综合久久久久久| 欧美三级小视频| fc2成人免费人成在线观看播放| 国产成人在线免费看| 精品国产一区二区三区| 成人欧美一区二区三区在线湿哒哒 | 99久久婷婷国产综合精品首页| 最新亚洲国产精品| 亚洲高清在线观看视频| 欧美午夜精品在线| 农村老熟妇乱子伦视频| 成人性生交大片免费看中文网站| 久草青青在线观看| 天天超碰亚洲| 国产精品免费看一区二区三区| 成人影院入口| 久久久成人精品视频| 日韩在线观看视频一区| 欧美唯美清纯偷拍| 久久影院一区二区| 国产欧美日韩视频一区二区| 国内av免费观看| 久久三级视频| 超碰97在线看| 北条麻妃国产九九九精品小说| 亚洲最大福利视频网站| 北岛玲heyzo一区二区| 久久天堂电影网| 青青免费在线视频| 91精品国产综合久久久久久漫画| 久久黄色精品视频| 亚洲美女视频在线观看| 国精产品一区二区三区| 国产不卡在线视频| 欧美特级aaa| 国产日韩欧美高清免费| 久久最新免费视频| 欧美亚洲激情| 精品免费一区二区三区蜜桃| 国产在线一区不卡| 国产精品毛片a∨一区二区三区|国| 超碰97免费在线| 久久久成人精品视频| 大地资源中文在线观看免费版| 亚洲第一精品自拍| 99久久精品日本一区二区免费| 一本大道av伊人久久综合| 九九热精彩视频| 中文字幕日本不卡| 色婷婷国产精品免| 久久综合99re88久久爱| 911亚洲精选| 国产精品99久久久久久宅男| 色悠悠久久综合网| 久久久久国产精品一区二区| 极品美女扒开粉嫩小泬| 国产精品99一区二区| a级黄色片网站| 三上亚洲一区二区| 日本一区视频在线观看| 亚洲第一二三区| 国内精品久久国产| 综合激情久久| 波多野结衣一区二区三区在线观看 | 久久影院一区| 亚洲欧美日产图| 欧美理论在线播放| 日韩在线三级| 精品盗摄女厕tp美女嘘嘘| 蜜桃av色综合| 妖精视频一区二区三区| 欧美高清视频一区| 精品一区毛片| 日本欧洲国产一区二区| 国产一区二区三区四区大秀| 麻豆视频成人| 免费看成人吃奶视频在线| 久久久久久九九九九| 亚洲美女久久| 日本一区免费观看| 第四色成人网| 日本成人性视频| 综合精品一区| av片在线免费| 99视频在线精品国自产拍免费观看| 国内精品视频一区二区三区| 亚洲精品乱码久久久久久蜜桃麻豆| 久久久久久久久久久99| 国产精品美女久久久| av五月天在线| 久久99精品国产麻豆不卡| 加勒比av中文字幕| 国产传媒久久文化传媒| 欧美双性人妖o0| 久久女同互慰一区二区三区| a天堂中文字幕| 自拍偷拍亚洲激情| 欧美黄色免费在线观看| 婷婷中文字幕综合| 极品国产91在线网站| 欧美撒尿777hd撒尿| 国产精品老熟女视频一区二区| 日韩欧美国产一二三区| 香蕉人妻av久久久久天天| 亚洲午夜色婷婷在线| 超碰在线免费公开| 97碰在线观看| 日本美女久久| 99re视频在线播放| 欧美人妖在线| 好吊色这里只有精品| 99re国产精品| 向日葵污视频在线观看| 国产成人在线网站| 色欲av无码一区二区三区| 中文字幕一区日韩精品欧美| 久久成人在线观看| 91久久精品一区二区二区| 国产熟女精品视频| 亚洲男人天堂网站| 91福利国产在线观看菠萝蜜| 欧美一级在线播放| 国产精品视频一区二区三区综合| 国产在线精品一区二区三区| 日韩一区欧美| 免费看的黄色大片| 国产综合久久久久久鬼色 | 久久精品国产精品亚洲| 丁香高清在线观看完整电影视频| 国产精品v片在线观看不卡| av日韩在线播放| 一区二区三区四区不卡| 国产欧美日韩一级| 老司机久久精品| 久久人人97超碰com| 动漫性做爰视频| 在线观看日韩精品| 欧美熟妇交换久久久久久分类 | 欧美视频在线一区| 手机看片1024国产| 乱亲女秽乱长久久久| 向日葵视频成人app网址| 不卡一卡2卡3卡4卡精品在| 日韩精品永久网址| 男人揉女人奶房视频60分| 国产精品99久久久| 人成免费在线视频| 91激情在线视频| 无码国产伦一区二区三区视频 | 亚洲人做受高潮| 色综合天天综合网天天狠天天| 国产成人手机在线| 久久深夜福利免费观看| 国产麻豆久久| 日本在线观看一区二区三区| 午夜亚洲性色视频| 国产激情视频网站| 亚洲电影在线播放| 国产高清视频免费| 久久亚洲电影天堂| 婷婷久久免费视频| 亚洲mv在线看| 日韩av电影一区| 亚洲精品视频网址| 91久久线看在观草草青青| 神马久久高清| 2020久久国产精品| 久久97精品| 久久久久久免费看| 99久久99久久综合| 五月天婷婷久久| 日韩成人性视频| 蜜桃视频在线观看播放| 国产精品区一区二区三含羞草| 狠狠色狠狠色综合日日tαg| 激情小说欧美色图| 亚洲国产精品久久一线不卡| 免费观看a视频| 久久久综合免费视频| 九色丨蝌蚪丨成人| 欧美 日韩精品| 国产亚洲综合在线| 国产亚洲欧美日韩高清| 永久免费精品影视网站| 成人自拍视频网| 丰满女人性猛交| 国产一区二区三区高清播放| 九九九在线视频| 亚洲国产成人在线视频| 在线最新版中文在线| 日本精品一区二区三区视频| 六月丁香综合在线视频| 手机av在线看| 欧美xxxx在线观看| 蜜桃视频在线观看免费视频| 欧美在线一区二区三区四区| 欧美aaaaaa午夜精品| 极品色av影院| 精品99久久久久久| 久久人体大尺度| 自拍偷拍亚洲色图欧美| 岛国精品在线播放| 女人十八岁毛片| 色偷偷88888欧美精品久久久| 欧美日本三级| 国产精品无码一区二区在线| 国产视频一区二区在线观看| 一级片一区二区三区| 欧美激情奇米色| 亚洲日产av中文字幕| 亚洲一区日韩精品| 亚洲国产精品影院| 国产爆初菊在线观看免费视频网站| 国产日韩欧美视频| 亚洲福利专区| 欧美老女人性生活视频| 精品日韩av一区二区| 色天使综合视频| 日韩专区第三页| 国产亚洲污的网站| 国产www免费观看| 欧美在线性爱视频 | 少妇人妻无码专区视频| 国产精品免费人成网站| 成人乱码一区二区三区 | 日韩精品亚洲专区在线观看|