import 'app_market.dart'; import 'app_upgrade_method.dart'; /// 应用升级版本信息(由服务器返回的数据模型) /// 用户只需返回此类的实例,插件会自动获取当前App版本进行比对 class AppUpgradeVersion { /// 版本名称 (如 "1.0.0") final String versionName; /// 版本号 (如 10) final int versionBuildNumber; /// 更新内容 final String updateContent; /// 下载地址 (Android APK下载地址) final String? downloadUrl; /// 是否强制更新 final bool isForce; /// App Store地址 (iOS) final String? appStoreUrl; /// APK文件大小 (字节) final int? apkSize; /// APK文件的MD5值 (用于校验) final String? apkMd5; /// 应用商店白名单 (用于Android多渠道更新) /// 配置后,只允许跳转到白名单中且设备已安装的应用市场 /// 如果设备上没有白名单中的任何应用市场,将提示用户选择其他更新方式 final List? appMarkets; /// 支持的更新方式 (如果为null,默认使用所有可用的方式) final List? supportedMethods; AppUpgradeVersion({ required this.versionName, required this.versionBuildNumber, required this.updateContent, this.downloadUrl, this.isForce = false, this.appStoreUrl, this.apkSize, this.apkMd5, this.appMarkets, this.supportedMethods, }); @override String toString() { return 'AppUpgradeVersion(versionName: $versionName, versionBuildNumber: $versionBuildNumber, isForce: $isForce, downloadUrl: $downloadUrl, supportedMethods: $supportedMethods)'; } }