ShakeCrash 是一种很好的方式,可以让您的测试人员深度参与到应用内报告。它的想法是来自 Google Maps,只需摇晃您的 iPhone,就可以通过电子邮件或 Redmine 提交带有描述的截图!
要运行示例项目,请克隆仓库,并首先从 Example 目录运行 pod install
ShakeCrash 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile 中
pod "ShakeCrash"
您有两种选择 - 您可以直接将报告发送到您的 Redmine 项目问题,或者将其发送到所需的电子邮件地址。同时使用两者是不可能的。我建议您在 AppDelegate
中进行配置。首先,导入 ShakeCrash
import ShakeCrash
您需要启用 Redmine 的 REST API 并获取您的 API 密钥。您还需要一个项目 ID。您应该在 Redmine 中能够找到它们,如果遇到麻烦,请到 Google 寻找答案。
let shakeReporterSettings = ShakeCrash.sharedInstance
let redmineReporter = RedmineFeedbackReporter(
redmineAddress: "<REDMINE_URL>",
apiToken: "<API_KEY>",
projectId: "<PROJECT_ID>")
shakeReporterSettings.delegate = redmineReporter
正确的 URL 格式为 http(s)://www.yourredmine.com
。 非常重要,Redmine 版本必须 >1.4。
在发送电子邮件方面没有特殊要求,只需进行配置即可。
let shakeReporterSettings = ShakeCrash.sharedInstance
let mailReporter = MailFeedbackReporter(reportEmail: "[email protected]")
shakeReporterSettings.delegate = mailReporter
如果您能知道测试人员的名字,这将非常有用。您可以让用户输入他们的名字,并且这个操作只触发一次。只需将以下行粘贴到您想要用户输入名字的 UIViewController
的 viewDidLoad
中。
self.presentConfigShakeCrashView()
如果您不这样做,那么第一次用户做摇晃手势时,ShakeCrash 会要求输入名字。但是,是否告诉用户在应用中有摇晃手势取决于您。
强烈建议您在应用的第一视图控制器中使用它。如果您在调用此方法时遇到了问题,请确保视图控制器堆栈中没有问题,因为 ShakeCrash
中的所有视图都调用模态视图来显示。
多米尼克·迈达,[email protected]
ShakeCrash受MIT许可协议保护。有关更多信息,请参阅LICENSE文件。