一个简单的、轻量级的用于 iOS 的评论管理器,使用 Swift 3 编写
SwiftlyRater 核心是一个 UIAlertController,当满足特定条件时呈现给用户,让他们有机会对你的应用程序进行评分。当事情没有正确运行时,用户倾向于留下负面评论而不是在一切顺利时写正面评论,这并不是什么秘密。SwiftlyRater 旨在实现一些平衡,让你的最忠实和活跃的用户提醒在 AppStore 上通过积极的评论来表示感谢。
您只需一行代码即可启动 SwiftlyRater,无需其他配置。
SwiftlyRater 支持以下四种语言:英文、西班牙语、法语和意大利语,更多语言即将推出!
SwiftlyRater 提供了一小部分可定制的属性,您可以根据需求为您的应用程序获得所需的行为。
SwiftlyRater 通过利用 Swift 3 提供的功能来保持简单,同时又简洁。
要启动 SwiftlyRater,您只需在 AppDelegate 的 didFinishLaunchingWithOptions()
中添加一行代码,传递与您的应用程序关联的 App Store ID
SwiftlyRater.sharedInstance.appId = "Your App ID"
SwiftlyRater 将使用其默认配置和标准来决定何时向用户呈现评论提示。
applicationName
主要用于评测试弹窗的标题,默认情况下从您的应用的info.plist
动态检索。它可以更改为特定的名称,如下所示:
SwiftlyRater.sharedInstance.applicationName = "Your Custom Name"
reviewTitle
是评测试弹窗的标题,默认设置为给
。这也可以自定义。
SwiftlyRater.sharedInstance.reviewTitle = "Custom Title"
reviewMessage
是评测试弹窗的消息,默认设置为喜欢这个应用吗?请花点时间在AppStore上留下评价!您的支持非常感谢!
。要更改它
SwiftlyRater.sharedInstance.reviewMessage = "Custom Message"
neverRemindButtonTitle
决定了用于“永不提醒”按钮的文本。其默认值是不用了
。
SwiftlyRater.sharedInstance.neverRemindButtonTitle = "Never Remind Title"
rateButtonTitle
决定了用于“评价”按钮的文本。其默认值是立即评}
。
SwiftlyRater.sharedInstance.rateButtonTitle = "Rate Title"
remindButtonTitle
决定了用于“提醒”按钮的文本。其默认值是稍后吧
。
SwiftlyRater.sharedInstance.remindButtonTitle = "Remind Title"
usesUntilPrompt
属性控制在显示提示之前,相同版本的您的应用需要使用多少次。一次“使用”对应于启动应用,而将其置为前台不会增加使用计数器。默认值是10
。
SwiftlyRater.sharedInstance.usesUntilPrompt = Int
daysUntilPrompt
属性控制在显示弹窗之前,从安装或更新应用开始需要过去多少天。默认值是5
。
SwiftlyRater.sharedInstance.daysUntilPrompt = Int
eventsUntilPrompt
属性确定弹出窗口显示之前需要发生多少“事件”。默认值是10
。
SwiftlyRater.sharedInstance.eventsUntilPrompt = Int
此属性可用于捕获您应用中发生的重要事件,这样只有最忠诚的用户才会看到评测试弹窗。要通知SwiftlyRater已发生重要事件,需要调用以下函数
SwiftlyRater.sharedInstance.userDidPerformEvent(showPrompt: Bool)
用户可以选择在评测试弹窗中选择“稍后吧”。daysBeforeReminding
属性决定了需要过去多少天才再次向这些用户显示弹窗。默认值是2
。
SwiftlyRater.sharedInstance.daysBeforeReminding = Int
shouldPromptIfRated
控制是否应向已经评测试过应用的用户显示评测试弹窗。当发布小型更新时,可以将其设置为false,这样用户就不会再次被要求为与上一个版本几乎相同的版本留评。默认值是true
。
SwiftlyRater.sharedInstance.shouldPromptIfRated = Bool
shouldPrompAtLaunch
控制是否在应用启动时立即显示评测试弹窗。默认值是true
。
SwiftlyRater.sharedInstance.shouldPrompAtLaunch = Bool
当将此属性设置为false时,评测试弹窗将不会显示 - 即使满足某些条件 - 除非调用以下函数
SwiftlyRater.sharedInstance.showPromptIfNeeded()
showNeverRemindButton
控制评测试弹窗是否应包括第三个按钮,使用户提供不再次显示该弹出窗口的选项。默认值是false
。
SwiftlyRater.sharedInstance.shouldPrompAtLaunch = Bool
useCustomLocalizationFile
确定使用哪个捆绑包来本地化评测试弹窗字符串。默认情况下,该值设置为false
,这意味着SwiftlyRater将使用自己的捆绑包进行翻译。当将其设置为true
时,您需要在应用捆绑包中包含一个名为SRLocalizable.strings
的文件,其中包含必要的翻译字符串。
SwiftlyRater.sharedInstance.useCustomLocalizationFile = Bool
默认情况下,debug
属性可用于测试目的,启用日志记录并在每次启动应用时显示评测试弹窗。设置为false
。
SwiftlyRater.sharedInstance.debug = Bool
SwiftlyRater使用委托来传达特定事件已发生
func swiftlyRaterDidShowPrompt() -> Void
func swiftlyRaterDidTapRate() -> Void
func swiftlyRaterDidTapDecline() -> Void
func swiftlyRaterDidTapRemind() -> Void
这只是围绕一些想法的几个概念,欢迎贡献!
UIAlertController
的能力最终目标是让SwiftlyRater成为最好的审核管理器,所以请继续提供反馈——无论是通过电子邮件、错误报告还是拉取请求!
SwiftlyRater在MIT LICENSE许可下发布。