Sherpa

一个基于 JSON 模板,用于在 iOS 应用中显示用户指南的即插即用解决方案。

Unit Tests Quality Gate Status CocoaPods Compatible

特性

安装

Swift Package Manager(仅适用于 Apple 平台)

在 Xcode 中,选择File > Swift Packages > Add Package Dependency 并输入仓库 URL

https://github.com/jellybeansoup/ios-sherpa

CocoaPods

将以下行添加到您的 Podfile

pod 'Sherpa'

Carthage

将以下行添加到您的 Cartfile

github "jellybeansoup/ios-sherpa"

如何使用

Sherpa 使用 JSON 文件作为其内容源,这允许您在应用程序包中提供文件,从服务器下载文件,或者两者都进行!它会为您处理 JSON 的解析,您只需要提供文档的本地 URL,它就会处理其余的事情。您甚至不需要将视图控制器包装在 UINavigationController 中,因为这是自动完成的;只需直接 present SherpaViewController 即可。

let viewController = SherpaViewController(fileAtURL: fileURL)
self.presentViewController(viewController, animated: true, completion: nil)

要深度链接到特定的文章以提供上下文帮助,您可以选择提供一个 articleKey,该键与您想要链接到的文章的键匹配。Sherpa 将会打开选定的文章并显示,并允许用户返回到完整的文章列表,以查找他们需要的其他帮助。

let viewController = SherpaViewController(fileAtURL: fileURL)
viewController.articleKey = "related-articles"
self.presentViewController(viewController, animated: true, completion: nil)

如果您想将 Sherpa 推送到现有的 UINavigationController 堆栈中,则可以优雅地处理,而无需任何额外的配置。 只需直接 push SherpaViewController 即可。

let viewController = SherpaViewController(fileAtURL: fileURL)
viewController.articleKey = "related-articles"
self.navigationController?.pushViewController(viewController, animated: true)

有关设置 JSON 文档的更多信息,请参见 示例应用程序的 UserGuide.json 文件。 您可以阅读本用户指南,并通过运行示例应用程序本身来查看实际示例。 如果您安装了 CocoaPods,可以通过在终端运行 pod try Sherpa 命令轻松完成此操作。

文档

您可以在此处找到该项目的文档。该文档使用 jazzyGitHub Action 自动生成,并由 GitHub Pages 托管。

要在本地生成文档,请从 repo 的根目录运行 make documentationsh ./scripts/documentation.sh。 输出将在 docs 文件夹中生成,并且不应包含在提交中(因为在线文档会自动生成和更新)。

联系方式

如果您有任何疑问,可以通过 Twitter 找到我,或者通过 电子邮件 联系。

根据 BSD 许可证发布

版权所有 © 2021 Daniel Farrelly

允许在源和二进制形式中重新分发和使用,无论是否进行修改,只要满足以下条件

本软件由版权所有者和贡献者“按原样”提供,并且不承担任何明示或暗示的保证,包括但不限于对适销性和特定用途适用性的暗示保证。在任何情况下,版权所有者或贡献者均不对任何直接、间接、偶然、特殊、惩戒性或后果性损害(包括但不限于采购替代商品或服务;使用、数据或利润损失;或业务中断)承担责任,无论其因何种原因引起,也无论其是因合同、严格责任还是侵权(包括疏忽或其他原因)引起的,即使已被告知可能发生此类损害。