测试测试过的 | ✓ |
Lang语言 | SwiftSwift |
许可证 | MIT |
发布上次发布 | 2017年2月 |
SwiftSwift 版本 | 3.0 |
SPM支持 SPM | ✓ |
由 Brennan Stehling 维护。
用 Swift 编写的 Strava API 客户端。
请参阅 变更日志 和 待办事项列表,以查看已完成的特性和未来计划。
当 StravaKit 版本小于 1.0.0 时,它被视为测试版。在测试版期间将遵循 语义化版本控制 标准,但可能会有一些例外。0.5.x 系列的所有版本都将兼容,而升级到 0.6 或 0.7 可能会包括模型属性的破坏性更改,因为这些细节正在解决。一旦版本达到 1.0.0,将遵循严格的语义化版本控制。
Strava Labs 提供了 API 参考。它包括 OAuth 和各种 REST 端点的工作规范。有关 API 的讨论可在 开发者论坛 中找到。
欢迎帮助添加新功能、修复错误或报告错误。对于新功能,您可以在 待办事项列表
中浏览缺少的功能,一旦确定想添加什么,就可以创建一个新的 issue,以告知其他人为即将到来的更新做准备。Fork 仓库,准备好测试和提交 Pull Request
。对于错误,如果您计划自己修复,请也要 fork 仓库,包括测试并提交 Pull Request
。如果您发现了错误,请创建一个新的 issue 并将其标记为错误。有可能该问题已经记录过,因此提出新问题之前请先查看。
如果您认为某个功能非常重要,并希望它尽快实现,您可以根据需要创建一个 issue,并邀请其他人对它进行评论。具有更多正面反应的功能请求将获得优先权。
StravaKit 框架旨在成为 Strava API 客户端的 Swift 实现。目标是使它完全功能化,以便可以用于构建任何 iOS 应用,甚至可能是 Mac、Apple TV 或 watchOS 应用。将尽量保持依赖项最少。虽然 StravaKit 将通过 CocoaPods 和 Carthage 提供,但它本身没有依赖。它也不会加载 UIKit,这样就可以用于开发 Mac 应用。
StravaKit 还将与 Swift 最新版本同步跟踪,一旦 3.0 版本发布,它不会对旧版本的 Swift 或 Objective-C 以及 iOS 版本给予优先权。如果应用需要旧版本的 iOS 或 Objective-C,建议使用 FRDStravaClient,它是用 Objective-C 编写的,将更适合向下兼容。
授权访问 Strava API 时返回的响应包括访问令牌和运动员资料。尽管这些值存储在密钥链中,但此框架不提供其他数据存储解决方案。可以构建一个完全独立的框架,在 StravaKit 之上,或者将可选功能定义为子模块。使用 CocoaPods 可以定义子规范。对于 Carthage 和 SwiftPM,当前可能不支持子模块。创建与 StravaKit 协作的可扩展框架可能更合理。数据存储解决方案将使用 StravaKit 并封装与 API 的所有交互,因此应用和视图控制器不会直接与 API 交互,而是将请求提交给数据存储以获取所需内容,当数据就绪时,不论是来自本地存储的仍很新鲜的数据还是从 API 拉取的新副本时,会获得延迟的结果。
MIT
Brennan Stehling - 2016-2017
StravaKit 伴随一个示例应用程序,其中包含一系列全面的测试,演示了如何使用 StravaKit。您还可以浏览使用 Jazzy 生成的文档。
注意:StravaKit 中尚未实现所有端点。请参见贡献。