Purchases.setup已废弃,替换为PurchasesConfiguration时遇错误如何解决?
解决purchases_flutter中
setup废弃及PurchasesConfiguration报错问题 问题原因
新版purchases_flutter(v4.0+)废弃了Purchases.setup()方法,改为通过Purchases.configure()传入PurchasesConfiguration实例完成初始化。你报错是因为错误地尝试通过Purchases.PurchasesConfiguration调用该类,实际上PurchasesConfiguration是独立的模型类,直接实例化即可。
修正步骤
- 修正日志级别设置:
setLogLevel需要传入LogLevel枚举值,而非布尔值强转,可用LogLevel.debug开启调试日志。 - 替换初始化方法:创建
PurchasesConfiguration实例,传入API密钥,再调用Purchases.configure()完成初始化。 - 确保导入正确:无需额外导入
purchases_configuration.dart,主包purchases_flutter.dart已包含相关导出。
修改后的完整代码
import 'package:purchases_flutter/purchases_flutter.dart'; class PurchaseApi { static const _apiKey = ''; // 填入你的API密钥 static Future init() async { // 设置日志级别为调试模式 await Purchases.setLogLevel(LogLevel.debug); // 创建配置实例并完成初始化 final configuration = PurchasesConfiguration(_apiKey); await Purchases.configure(configuration); } static Future<List<Offering>> fetchOffers() async { try { final offerings = await Purchases.getOfferings(); final current = offerings.current; return current == null ? [] : [current]; } on PlatformException catch (e) { return []; } } }
额外说明
如果仍存在问题,检查你的pubspec.yaml中purchases_flutter的版本是否为最新稳定版,执行flutter pub upgrade purchases_flutter更新依赖。
内容的提问来源于stack exchange,提问作者Android_devNL
相关产品推荐
相关产品推荐

