SwiftyRate
一个简单的辅助工具,用于显示符合类似规则和行为的 SKStoreReviewController(iOS 10.3 或更高版本)或自定义 UIAlertView。
需求
- iOS 9.3+
- Swift 5.0+
安装
Cocoa Pods
CocoaPods 是 Cocoa 项目的依赖管理器。只需将以下行添加到 pod 文件中即可安装 pod
pod 'SwiftyRate'
Swift包管理器
Swift包管理器是一个用于自动化分发Swift代码的工具,并且集成到了Swift编译器中。
要将Swift包添加到您的项目中,只需在xCode中打开您的项目,然后点击 File > Swift Packages > 添加包依赖。然后输入 https://github.com/crashoverride777/swifty-rate.git
作为仓库URL,完成设置向导。
或者,如果您需要一个框架,并且需要将其作为依赖项添加,您只需将其添加到Package.swift文件中的dependencies值即可。
dependencies: [
.package(url: "https://github.com/crashoverride777/swifty-rate.git", from: "3.5.0")
]
手动
或者,您可以复制Sources
文件夹及其包含的文件到您的项目中。
用法
- 当使用CocoaPods或SwiftPackageManager时,添加导入语句。
import SwiftyRate
- 请求审阅
正如Apple在SKStoreReviewController的文档中所描述的
“尽管您应该在应用的用户体验流程中感觉到合适的时候调用此方法,但评分/评价请求视图的实际显示由App Store政策控制。因为此方法可能显示或可能不显示警报,所以不应在按钮点击或其他用户操作后调用它。”
UIViewController
let ratingsRequest = SwiftyRate.Request(
afterAppLaunches: 15,
customAlertTitle: "Enjoying this app"?,
customAlertMessage: "Tap the stars to rate it on the App Store.",
customAlertActionCancel: "Not Now"
)
SwiftyRate.requestReview(ratingsRequest, from: self)
SKScene(需要在外部或DidMoveToView之后调用,否则将无法工作)
if let viewController = view?.window?.rootViewController {
let ratingsRequest = SwiftyRate.Request(...)
SwiftyRate.requestReview(ratingsRequest, from: viewController)
}