KatsanaSDK 0.9.3

KatsanaSDK 0.9.3

测试已测试
Lang语言 SwiftSwift
许可证 自定义
发布最后发布2017年2月
SwiftSwift 版本3.0
SPM支持 SPM

Lutfi 维护。



 
依赖
Siesta>= 0
XCGLogger>= 0
 

  • Wan Ahmad Lutfi

KatsanaSDK

KatsanaSDK 是一个框架,用于通过 iOS/macOS 应用程序访问 Katsana 平台的数据。

安装

KatsanaSDK 通过 Cocoapods 提供。

使用方法

在每个源文件中导入 KatsanaSDK

import KatsanaSDK

在您的 AppDelegate 中

application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]? = nil)

配置 KatsanaAPI 并使用客户端 ID、客户端密钥和授权类型

KatsanaAPI.configure(clientId: CLIENT_ID, clientSecret: CLIENT_SECRET, grantType: GRANT_TYPE)

然后,您可以使用凭证登录

KatsanaAPI.shared.login(email: EMAIL, password: PASSWORD, completion: { user in
    //Handle user login success
}) { error in
    //Login error        
}

车辆

Vehicle 类包含车辆信息,例如车辆 ID、今日最高速度、图片 URL 和当前车辆位置。

要加载所有车辆的详细信息,使用

KatsanaAPI.shared.requestAllVehicles(completion: { (vehicles) in
    //Vehicles loaded 
})

要加载单个车辆

KatsanaAPI.shared.requestVehicle(vehicleId: "78", completion: { (vehicle) in
    //Vehicle loaded
})

您还可以使用

KatsanaAPI.shared.vehicleWith(vehicleId: "78")

这将返回如果已从服务器请求,则包含车辆 ID 的车辆。

车辆位置

VehicleLocation 类包含车辆的定位数据,包括坐标、速度和设备电压。

您可以从 Vehicle 类中获取车辆位置

 let location = vehicle.current

或请求最新的车辆位置

KatsanaAPI.shared.requestVehicleLocation(vehicleId: "78", completion: { (vehicleLocation) in
    //Success
})

行程

Travel 类包含特定车辆的行程历史记录。每项行程仅包含一天的行程数据,除非是多日行程。

要请求特定日期的行程数据

KatsanaAPI.shared.requestTravel(for: Date(), vehicleId: "78", completion: { (travel) in
    //Success
}) { (error) in
    //Error
}

如果您需要请求日期范围内的多个日期的行程数据

KatsanaAPI.shared.requestTravelSummaries(vehicleId: "78", fromDate: date1, toDate: date2, completion: { (travels) in
    //Success
})

行程概要请求也将返回 Travel 实例,但不包括以节省带宽的行程数据。

如果需要,您可以再次请求特定日期的完整行程数据。

let summary = ... //Travel summary already requested from server
KatsanaAPI.shared.requestTravelUsing(summary: summary, completion: { (travel) in
    //Success
}) { (error) in
    //Error
}

请求今天的单个行程概要

KatsanaAPI.shared.requestTravelSummaryToday(vehicleId: "78") { travel in
    //Success   
}