什么是包装Purchases.shared.purchaserInfo
以仅返回true
或false
在If
语句中进行多重比较时的最佳方式。
我想要做的是通过返回 true 或 false 的方法或属性来快速检查用户是否可以访问 PRO 功能,因为我需要在 if 语句中进行多次检查,比如......if userHasAccess && someOtherCheck { // do something}
这是一个有效的解决方案吗?
单例类:
class IAPHelper {
static let shared = IAPHelper()
func hasAccessToProFeatures()->Bool{
var hasAccess:Bool?
Purchases.shared.purchaserInfo { (purchaserInfo, error) in
if let purchaserInfo = purchaserInfo {
if purchaserInfo.activeEntitlements.contains("myEntitlement") {
hasAccess = true
}else{
hasAccess = false
}
}
}
return hasAccess!
}
}
用法:
if IAPHelper.shared.hasAccessToProFeatures() && someOtherCheck{
// unlock PRO features
}