面向 Lyft 开发者的 Swift API(Lyft 是滴滴的战略合作伙伴)

1,168 阅读1分钟
原文链接: github.com

Lyft

查看图片
Version
License
Platform

Requirements

Please signup and read: developer.lyft.com

Installation

Lyft is available through CocoaPods. To install
it, simply add the following line to your Podfile:

pod Lyft

Usage

API Keys

Lyft.set(clientId: clientId, clientSecret: clientSecret)

Deeplinking

Lyft.openLyftRide(rideType: .Line, destination: Address(lat: 37.7763592, lng: -122.4242038))

Dont forget to update Info.plist to support lyft://

Authentication

Client Credentials (2-legged) flow for public endpoints

Lyft.publicLogin { success, error in

}

3-Legged flow for accessing user-specific endpoints

Lyft.userLogin(scope:public) { success, error in

}

You will need to setup a redirect too:
swift
func application(app: UIApplication, openURL url: NSURL, options: [String : AnyObject]) - Bool {
return Lyft.openURL(url)
}

Availability

Lyft.requestRideTypes(rideTypesQuery: RideTypesQuery(lat: 37.7833, lng: -122.4167)) { result, response, error in

}

Lyft.requestETA(etaQuery: ETAQuery(lat: 37.7833, lng: -122.4167)) { result, response, error in

}

Lyft.requestCost(costQuery: CostQuery(startLat: 37.7833, startLng: -122.4167, endLat: 37.7972, endLng: -122.4533)) { result, response, error in

}

Lyft.requestNearbyDrivers(nearbyDriversQuery: NearbyDriversQuery(lat: 37.7789, lng: -122.45690)) { result, response, error in

}

Rides

Lyft.requestRide(requestRideQuery: RequestRideQuery(originLat: 34.305658, originLng: -118.8893667, originAddress: ;123 Main St, Anytown, CA, destinationLat: 36.9442175, destinationLng: -123.8679133, destinationAddress: ;123 Main St, Anytown, CA, rideType: .Lyft)) { result, response, error in

}

Lyft.requestRideDetails(rideId: 123456789) { result, response, error in

}

Lyft.cancelRide(rideId: 123456789) { result, response, error in

}

Lyft.rateAndTipRide(rideId: 123456789, rateAndTipQuery: RateAndTipQuery(rating: 5, tipAmount: 100, tipCurrency: USA, feedback:great ride!)  { result, response, error in

}

Lyft.requestRideReceipt(rideId: 123456789) { result, response, error in

}

Lyft.requestRidesHistory(ridesHistoryQuery: RidesHistoryQuery(startTime:2015-12-01T21:04:22Z, endTime: 2015-12-04T21:04:22Zuot;, limit: 10)) { result, response, error in

}

Author

Genady Okrain, genady@okrain.com

License

Lyft is available under the MIT license. See the LICENSE file for more info.