You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
lxm dc4baa05d3 fix(登录): 仅Android平台显示Google登录按钮 7 months ago
.gradle/wrapper/dists/gradle-8.11.1-all/2qik7nd48slq1ooc2496ixf4i fix(android): 进一步彻底移除自启动权限和接收器以符合隐私要求 9 months ago
.vercel 修改版定逻辑,待完善 1 year ago
SpeexKit.xcframework 加入ios通话翻译功能 1 year ago
android feat(android): 同步Flutter本地化字符串到原生前台服务通知 8 months ago
assets chore: 更新 Firebase 配置以使用新项目 8 months ago
doc style(doc): 优化文档页面的响应式布局和文本换行 10 months ago
ios chore(ios): 添加 ITSAppUsesNonExemptEncryption 配置项 9 months ago
lib fix(登录): 仅Android平台显示Google登录按钮 7 months ago
linux 上传paypal支付代码 11 months ago
local_plugins feat(qq_music): 添加自动暂停音乐方法以简化暂停逻辑 8 months ago
macos 上传经典蓝牙列表返回 正在使用状态确认当前设备 1 year ago
shaders add 1 year ago
test fix(meeting): 修复录音文件名生成与文件遍历问题 8 months ago
web add 2 years ago
windows 上传paypal支付代码 11 months ago
.gitignore feat(payment): 添加支付功能多语言支持并优化支付控制器 8 months ago
.mcp.json add 1 year ago
.metadata add 1 year ago
AUDIO_PLAYBACK_FIX.md fix(音频播放): 修复会议详情页音频播放按钮无响应问题 8 months ago
GoogleService-Info.plist DeapSound--->Voitrans 1 year ago
README.md 上传支付逻辑代码 11 months ago
analysis_options.yaml add 2 years ago
check_16kb.py feat: 添加检查AAB中so文件16KB对齐的脚本 9 months ago
clean_spm.sh add 1 year ago
devtools_options.yaml add 1 year ago
firebase.json chore: 更新 Firebase 配置以使用新项目 8 months ago
flutter_01.log 上传iOS的qq音乐代码 1 year ago
pubspec.yaml feat(share): 优化分享功能并增加分享位置支持 7 months ago
test.json add 1 year ago
test2.json add 1 year ago

README.md

Deep Voice

Flutter 应用程序,使用 GetX 状态管理和依赖注入。

项目目录结构

lib/
├─ core/
│  ├─ bindings/          # 全局或通用的 Bindings
│  ├─ constants/         # 常量、枚举、Key、全局配置等
│  ├─ errors/            # 异常/错误处理相关
│  ├─ themes/            # 主题(Color, TextStyle 等)
│  ├─ translations/      # 国际化、语言相关
│  ├─ utils/             # 通用工具类、Helper、扩展函数等
│  └─ widgets/           # 通用的无业务逻辑的Widgets
│
├─ data/
│  ├─ models/            # 数据模型(可与后端DTO对应)
│  ├─ repositories/      # 数据仓库(实际操作数据 CRUD, 远程或本地)
│  ├─ services/          # 第三方或原生平台封装,如网络请求、缓存、数据库等
│  └─ providers/         # 适配器层,比如把网络、数据库等转换为 Repository 可调用的接口
│
├─ modules/
│  ├─ login/
│  │  ├─ controllers/    # GetX Controller
│  │  ├─ views/          # 页面、Widget
│  │  ├─ bindings/       # 该模块的 Bindings
│  │  └─ ...             # 其他文件
│  ├─ home/
│  │  ├─ controllers/
│  │  ├─ views/
│  │  ├─ bindings/
│  │  └─ ...
│  └─ ...
│
├─ routes/
│  ├─ app_pages.dart     # 定义所有页面的 Route 列表
│  └─ app_routes.dart    # 定义路由常量或路由字符串
│
└─ main.dart             # 程序入口

本地调试内购(IAP)流程

不需要真实购买即可在本地跑通前端内购流程:

  • 在项目根目录的环境变量文件(如 .env)里添加:
APP_IAP_MOCK=1
  • 作用:在 PayService 中启用“本地内购模拟”,调用 processGooglePayment 或 processApplePayment 会:

    • 立即触发“已发起内购(本地模拟)”;
    • 短暂延时后触发“支付处理中…(本地模拟)”;
    • 再触发“支付成功(本地模拟)”。
  • 注意:该模式不依赖 Google Play / App Store 安装来源,也不会进行服务器收据校验,仅用于前端 UI 与状态机验证。

  • 关闭模拟:将 APP_IAP_MOCK 移除或设为 0/false,恢复真实内购流程。