技术 / 架构与实现

11 Seedream云端图片适配与费用保护

基于 Android 1.0.2 / 1.0.2-trial · 2026-10-10 · 完整正文

Android环境在SOURCES中移除Draw Things,AI来源仅Seedream;manual代表用户照片/网址,不是另一AI供应商。没有在某个来源失败后自动切换收费云端的逻辑。

固定配置

{
  "endpoint": "https://ark.cn-beijing.volces.com/api/v3/images/generations",
  "models": [
    "doubao-seedream-5-0-pro-260628",
    "doubao-seedream-5-0-flash-260915"
  ],
  "request": {
    "model": "doubao-seedream-5-0-pro-260628",
    "prompt": "用户填写的图片要求",
    "size": "2K",
    "response_format": "b64_json",
    "output_format": "png",
    "watermark": true
  }
}

这些模型ID和参数是APK固定配置,不表示本次文档编制执行过真实付费调用或确认所有账户都已开通。当前界面不提供size、水印、输出格式或数量的可调开关。

请求必须具备有效Key和payment_consent is True。Key可由JSON输入或运行环境ARK_API_KEY提供,代码拒绝空、换行或超过2048字符;APK不内置预设Key。HTTP请求使用Authorization Bearer,单次timeout180秒,读取响应最多48MiB。解析要求恰好一张图片、Base64文本≤44MiB、宽高至少64且像素≤1600万,重编码为RGB PNG,不依赖不可信临时下载URL。

已知失败与结果未知

分类 示例 应用处理
明确参数/权限/额度失败 400、401、403、404、部分429及官方code 转换中文原因,隐藏Key/Bearer/远程URL;不自动改账户限额
余额/模型状态 InsufficientBalance、Arrearage、SetLimitExceeded、NotOpen等 按官方code区分,要求用户处理控制台
SubmissionUnknown HTTP5xx、连接/超时、JSON异常、响应过大或不可用单图 保留可能已计费的未知状态,禁止自动重发

提交前保存submitting=true,返回正常图片后保存素材。用户在云请求途中取消时,已经提交的请求不能由手机撤回;若图片返回,仍尽量落盘,不继续视频制作。手动重试已知结果未知的Seedream任务要求confirm_resubmit,同时重新验证Key及费用同意。切换为手机照片不能证明之前云请求没有计费,风险标识继续保留。

Key仅在Control与运行内存中,不写job、草稿或日志;错误消息替换当前Key,取消且步骤结束清Key。代码没有安全零化所有内存副本的机制,故“只在内存”应理解为未持久写入,而不是绝对没有任何内存观察风险。

依据:seedream.py:11–94、app.py:501–528,216–225,777–804、image_sources.py:6–19。

把这些功能用到你的内容里。

免费试用、正式版优惠授权与招商合作:微信 wzqy2019。说明你需要配音、照片视频、PC或Android端,我们一起确定适合的使用方式。

合作从一次沟通开始

让你的内容制作,
找到合适的工作台。

免费试用、优惠授权、PC与Android版本、工作室及渠道合作意向,欢迎直接咨询。

打开微信,搜索 wzqy2019,添加时备注“听文合作”。具体授权、价格与合作政策以沟通为准;本站不收款。