一个美观的Flutter抽奖应用,支持iOS、Android和鸿蒙平台。
🎲 美观的翻牌动画 - 5张精美的扑克牌样式卡片
🎯 智能概率控制 - 管理员可精确控制每张牌的中奖概率
🔒 双重设置系统 - 虚假设置页面对外展示,真实设置需要密码验证
💾 本地数据存储 - 所有设置保存在本地,无需服务器
📱 跨平台支持 - 一套代码支持iOS、Android、鸿蒙三平台
- 点击卡片翻牌,每张卡片显示1-5中的一个数字
- 每轮游戏每个数字只出现一次
- 点击"重新开始"重置所有卡片
- 点击"设置"查看虚假的随机设置页面
- 在主界面的星星图标上连续点击10次
- 输入管理员密码:
123456 - 进入真实设置页面,可以设置每个翻牌位置各数字的出现概率
- 概率设置范围:0-100%(0=永不出现,100=必然出现)
访问 Flutter官网 下载并安装Flutter SDK
Mac用户推荐步骤:
# 下载Flutter SDK
git clone https://github.com/flutter/flutter.git -b stable
export PATH="$PATH:`pwd`/flutter/bin"
# 检查环境
flutter doctorflutter pub getAndroid:
flutter runiOS (仅Mac):
flutter run -d iosWeb (调试用):
flutter run -d webAndroid APK:
flutter build apk --releaseiOS (需要开发者账号):
flutter build ios --release鸿蒙 (需要DevEco Studio):
- 安装DevEco Studio
- 配置鸿蒙开发环境
- 使用flutter_harmony插件构建
lib/
├── main.dart # 应用入口
├── models/ # 数据模型
│ ├── lottery_card.dart # 抽奖卡片模型
│ └── lottery_settings.dart # 设置模型
├── services/ # 业务逻辑
│ ├── lottery_service.dart # 抽奖逻辑服务
│ └── settings_service.dart # 设置服务
├── pages/ # 页面
│ ├── lottery_page.dart # 主抽奖页面
│ ├── fake_settings_page.dart # 虚假设置页面
│ └── real_settings_page.dart # 真实设置页面
├── widgets/ # 自定义组件
│ └── lottery_card_widget.dart # 抽奖卡片组件
└── utils/ # 工具类
└── admin_dialog.dart # 管理员验证对话框
- 状态管理: Provider
- 本地存储: SharedPreferences
- 动画效果: 自定义翻牌动画
- UI设计: Material Design + 自定义渐变
- 概率算法: 智能权重分配确保数字不重复
- Flutter SDK 3.0.0+
- Dart 3.0.0+
- Android Studio / VS Code
- Xcode (iOS开发)
- DevEco Studio (鸿蒙开发)
Q: 如何修改管理员密码?
A: 在真实设置页面中可以修改密码,或直接修改 SettingsService 中的默认密码。
Q: 概率设置不生效?
A: 确保每个位置的总概率合理分配,系统会自动处理数字不重复的逻辑。
Q: 如何自定义卡片样式?
A: 修改 LotteryCardWidget 中的颜色和样式配置。
MIT License - 详见 LICENSE 文件
欢迎提交Issue和Pull Request!
祝您使用愉快!🎉