Skip to content

Releases: yuelangmanle/Apilot

🚀 Apilot v1.21.0

Choose a tag to compare

@github-actions github-actions released this 27 Jul 15:16

v1.21.0 (2026-07-27)

新功能与修复

  • 智能粘贴识别 API 连接 - 添加方案时可从任意长度的混合文本中识别 URL 与 Key,覆盖独立或转义 JSON、JavaScript/YAML/ENV 键值、Markdown 表格、中文标签、箭头分隔、cURL 请求头、行尾注释和常见 URL 书写错误。解析会优先关联同一段中可信度更高、位置更接近的地址与 Key,避免长文本里的文档链接覆盖实际配置;名称、模型和分组仍由用户确认。
  • 真实 BLE 配置传输 - 蓝牙模式现在通过 GATT 直接传输配置,不再借用 WiFi HTTP。协议具备长度帧、BLE 分片、1 MiB 上限和 SHA-256 完整性校验,发送、接收和双向同步都需要接收方确认。
  • 蓝牙稳定性修复 - 广播会等待插件完成蓝牙状态初始化;单次 GATT 写入只返回一次 ATT 响应,业务帧失败会通过独立错误帧反馈,避免设备端协议中断。
  • Android 相机扫码链路重建 - 主 Activity 改用 AndroidX Activity Result API 管理权限和扫码结果,并显式启动内置 ZXing 扫码 Activity,避免旧回调与 Flutter Activity 结果分发冲突。

文案与工程

  • 同步语义统一 - 设置页和同步页明确蓝牙为“直接传输”,不再提示“发现后走局域网”。
  • 版本号同步 - 应用版本更新为 1.21.0+26

🚀 Apilot v1.20.0

Choose a tag to compare

@github-actions github-actions released this 27 Jul 07:44

v1.20.0 (2026-07-27)

修复与优化

  • 相机扫码链路重建 - Android 现在先请求相机权限,再直接打开内置 ZXing 扫码器;普通拒绝可再次请求,永久拒绝可直达系统设置,失败时仍可手动输入 IP。
  • 同步业务级去重 - 局域网接收配置会按规范化地址、API Key 和默认模型识别相同方案;同 ID 更新,业务等价的不同 ID 不再重复新增,接口会返回实际新增数量。
  • 分组管理真正生效 - API 表单和筛选同时使用已管理分组;重命名会同步关联方案,删除仅清空归属;同名分组会被阻止,避免误关联。
  • 备份恢复可用 - 备份包含 API、分组和快照时间,保存与恢复都通过系统文件选择器自由选择路径;恢复前可选择合并或清空后恢复。

工程与文档

  • 发布质量门禁 - PR 和 main 推送会执行静态分析与全量测试;Android、macOS、Windows 安装包仅在 v* 标签发布时构建。
  • 第三方调用示例 - 新增可构建的 Android V2 示例项目,演示导入到 Apilot、从 Apilot 授权选择、JSON extra 与 content:// 回传处理,并避免记录 API Key。
  • 版本号同步 - 应用版本更新为 1.20.0+25

🚀 Apilot v1.19.0

Choose a tag to compare

@github-actions github-actions released this 27 Jul 04:28

v1.19.0 (2026-07-27)

新功能

  • V2 API Profile 双向互操作 - Android 第三方 App 现可用语义化 apiProfiles 导入 Apilot,也可请求用户从 Apilot 授权一条已保存方案;V1 接口继续兼容。
  • 服务商与协议识别 - 保存并传递 provider.idprotocol.id,官方 DeepSeek 地址或明确标识会保留为 DeepSeek,未知服务回退为自定义 OpenAI 兼容方案。
  • 最小授权与安全回传 - V2 默认只交付连接和默认模型;完整模型目录、API Key 分别需要用户明确勾选。大结果可通过一次性 content:// URI 回传。
  • 模型目录语义 - 支持独立记录默认模型、目录状态、目录来源与刷新时间;没有模型目录的 V2 方案也可导入。
  • 第三方交互记录 - 设置中可查看和清除本地导入/授权记录,记录来源、服务商、模型和授权范围,不保存 API Key 或 payload。

修复与优化

  • 模型刷新状态完整同步 - 刷新远端模型后会写入目录来源和刷新时间;被下架的默认模型会切换至首个可用模型,列表为空时会清除默认模型。
  • 数据库迁移增强 - API 配置数据库升级到 v3,旧记录保持可读,metadata 改为 JSON 持久化并保留历史不可解析值。

文档与验证

  • 双份接入文档同步 - App 内和 GitHub 同时覆盖 V1/V2 schema、Kotlin 示例、scope、URI、安全、取消与兼容规则。
  • 版本号同步 - 应用版本更新为 1.19.0+24。

🚀 Apilot v1.18.1

Choose a tag to compare

@github-actions github-actions released this 27 Jul 02:25

v1.18.1 (2026-07-27)

新功能

  • 第三方读取已保存方案 - 新增 com.apilot.intent.action.PICK_API_CONFIG,第三方 Android App 可唤起 Apilot,由用户选择并确认授权一条已保存的 API 方案。
  • 两种模型回传模式 - all 会回传完整模型列表并将第一个模型写入 selectedModeldefault_only 只回传第一个默认模型,供调用方自行在线刷新模型。
  • 客户端完整更新日志 - 设置页新增“更新日志”,可查看 GitHub 上所有已发布版本的说明,不再依赖发现新版本时才能查看。

Bug修复

  • 修复刷新模型列表不生效 - 成功获取远端模型后会完整替换本地模型列表、写入数据库并立即刷新详情页,下架模型会移除,新模型会出现。
  • 修复 Android 扫码崩溃 - 移除会触发原生空指针的 mobile_scanner,优先使用 Google Play 服务 Code Scanner;不可用时自动切换内置 ZXing 扫码页,并保留手动 IP 输入。

文档与验证

  • 扩展第三方接入文档 - App 内和 GitHub 文档同时说明双向接口、Activity Result 回传格式、模型模式和密钥安全边界。
  • 版本号同步 - 应用版本更新为 1.18.1+23。

🚀 Apilot v1.18.0

Choose a tag to compare

@github-actions github-actions released this 27 Jul 00:42

v1.18.0 (2026-07-27)

新功能

  • 新增Android第三方导入接口 - 任意第三方Android App可通过公开Intent唤起Apilot导入API配置,支持content URI主方案和JSON extra备用方案。
  • 新增两步导入确认流程 - 第三方导入先展示来源说明页,再展示配置确认页,导入前提示来源、配置数量、是否包含API Key和重复处理策略。
  • 支持带Key/不带Key两种导入 - payload可包含完整API Key,也可只导入非敏感配置,缺失Key时保存为待补Key配置。
  • 重复配置保留两份 - 第三方导入永远生成新ID并追加导入时间后缀,不覆盖用户现有配置。
  • 新增开发者接入文档 - 设置页新增“第三方导入接入文档”,GitHub新增 docs/android-third-party-import.md 完整接入说明。

工程与验证

  • 新增第三方导入解析测试 - 覆盖schema解析、密钥检测、缺字段校验、忽略外部ID和版本不兼容。
  • 版本号同步 - 应用版本更新为 1.18.0+22。

验证

  • dart analyze lib test
  • flutter test
  • flutter build apk --debug

🚀 Apilot v1.17.2

Choose a tag to compare

@github-actions github-actions released this 08 Jun 11:00

v1.17.2 (2026-06-08)

Bug修复

  • 修复macOS更新包选择错误 - 检查更新严格按当前平台匹配发布资产,macOS 只选择 .dmg,避免下载到 Android APK。
  • 修复同步设备重复显示 - 继续按设备ID和IP去重,并覆盖同一设备IP变化场景,减少macOS发现列表重复设备。
  • 修复蓝牙模式混入WiFi发现结果 - WiFi UDP发现和蓝牙近场发现分离,切换到蓝牙模式时停止并清空WiFi发现列表。
  • 修复Android蓝牙权限请求 - Android 12+ 主动申请 Nearby Devices 蓝牙扫描/连接/广播权限,旧版Android保留定位权限用于BLE发现。
  • 修复手机扫码连接 - 扫码前主动请求相机权限,二维码解析支持旧格式、URL和JSON格式,并保留手动输入兜底。
  • 修复蓝牙界面误导文案 - 蓝牙发现页面不再提示同一WiFi/热点,避免和蓝牙近场发现模式混淆。
  • 修复macOS更新后数据看似消失 - macOS bundle id 恢复为历史值 com.example.apiManager,继续使用原沙盒容器中的数据库。

验证

  • flutter test
  • flutter analyze
  • flutter build apk --debug
  • flutter build macos --debug

🚀 Apilot v1.17.1

Choose a tag to compare

@github-actions github-actions released this 07 Jun 17:27

v1.17.1 (2026-06-08)

发布修复

  • 修复Windows安装器CI - 移除 Inno Setup 环境中不存在的中文语言文件引用,确保 .exe 安装包可以在 GitHub Actions 上生成。
  • 版本号同步 - 应用版本更新为 1.17.1+20,用于替代安装器生成失败的 v1.17.0 标签构建。

🚀 Apilot v1.16.0

Choose a tag to compare

@yuelangmanle yuelangmanle released this 30 May 07:26

更新日志

v1.16.0 (2026-05-30)

新功能

  • 蓝牙同步 - 新增蓝牙近场同步模式,与WiFi同步并列可选
  • 同步UI反馈 - 同步操作完成后显示SnackBar通知,自动刷新API列表
  • 连接设备界面 - 全新的IP手动输入界面,带格式验证和使用提示

Bug修复

  • 修复同步设备重复 - 使用稳定设备标识,按IP地址去重
  • 修复卡片复制Key - 确保所有复制按钮传递正确的copyText参数
  • 修复手机端扫码 - 移除不稳定的mobile_scanner,改为可靠的手动输入

优化

  • 同步页面新增WiFi/蓝牙模式切换
  • 移除mobile_scanner依赖,减小APK体积
  • 添加蓝牙相关权限配置

v1.15.0 (2026-05-30)

Bug修复

  • 修复API卡片复制Key - 复制按钮现在复制真正的API Key而非掩码值
  • 修复数据库引用计数 - 重写引用计数逻辑,数据库正确关闭不再泄漏
  • 修复导出文件名 - 文件名时间戳变量正确展开
  • 导入支持文件选择器 - 恢复数据时弹出文件选择器,不再硬编码文件名
  • 修复同步设备自我检测 - 异步IP检测,不再误添加自己为设备
  • 蓝牙同步提示 - 未实现的功能显示"敬请期待"而非空白开关
  • 新增QR扫码 - 同步页面新增扫码按钮,使用摄像头扫描二维码连接设备
  • 历史搜索增强 - 搜索范围扩展到请求体和响应体

体验优化

  • 全新空状态引导 - 首次使用时显示引导卡片,推荐从模板开始
  • 列表排序 - 支持按名称/创建时间/更新时间排序
  • 收藏反馈 - 收藏/取消收藏时显示Toast提示
  • 刷新模型列表 - 详情页新增"刷新模型列表"按钮
  • 标签筛选 - 筛选栏新增标签快速筛选
  • 历史关联API名 - 请求历史显示对应的API名称
  • FAB桌面适配 - 桌面端FAB不再与NavigationRail重叠
  • 术语优化 - 导出/导入改为备份/恢复,更易理解
  • 搜索增强 - API搜索范围扩展到API Key

v1.14.0 (2026-05-30)

重大改进

  • 测试页支持切换API - 顶栏新增切换按钮,不用返回就能测试不同API
  • 测试页显示响应头 - 可查看rate-limit、content-type等headers
  • 错误信息友好化 - SocketException等技术错误转为中文提示
  • 卡片滑动操作 - 左滑收藏、右滑删除(带确认)
  • 卡片暗黑模式适配 - 文字颜色跟随主题
  • 分组下拉选择 - 表单中分组字段改为从已有分组中选择
  • 重复检测 - 添加相同URL+Key的配置时弹出确认提示
  • 模板标记已添加 - 已配置过的模板显示绿色勾和"已添加"标签
  • 历史搜索 - 历史记录页面支持按端点和模型名搜索
  • 导出文件名带时间戳 - 不再覆盖之前的导出文件

v1.13.1 (2026-05-29)

修复

  • 检查更新macOS找.dmg
  • 导入配置类型错误
  • 删除mock代码
  • 零警告通过

v1.0.0 - v1.13.0

  • 初始版本及基础功能迭代

🚀 Apilot v1.15.0

Choose a tag to compare

@yuelangmanle yuelangmanle released this 29 May 17:56

更新日志

v1.15.0 (2026-05-30)

Bug修复

  • 修复API卡片复制Key - 复制按钮现在复制真正的API Key而非掩码值
  • 修复数据库引用计数 - 重写引用计数逻辑,数据库正确关闭不再泄漏
  • 修复导出文件名 - 文件名时间戳变量正确展开
  • 导入支持文件选择器 - 恢复数据时弹出文件选择器,不再硬编码文件名
  • 修复同步设备自我检测 - 异步IP检测,不再误添加自己为设备
  • 蓝牙同步提示 - 未实现的功能显示"敬请期待"而非空白开关
  • 新增QR扫码 - 同步页面新增扫码按钮,使用摄像头扫描二维码连接设备
  • 历史搜索增强 - 搜索范围扩展到请求体和响应体

体验优化

  • 全新空状态引导 - 首次使用时显示引导卡片,推荐从模板开始
  • 列表排序 - 支持按名称/创建时间/更新时间排序
  • 收藏反馈 - 收藏/取消收藏时显示Toast提示
  • 刷新模型列表 - 详情页新增"刷新模型列表"按钮
  • 标签筛选 - 筛选栏新增标签快速筛选
  • 历史关联API名 - 请求历史显示对应的API名称
  • FAB桌面适配 - 桌面端FAB不再与NavigationRail重叠
  • 术语优化 - 导出/导入改为备份/恢复,更易理解
  • 搜索增强 - API搜索范围扩展到API Key

v1.14.0 (2026-05-30)

重大改进

  • 测试页支持切换API - 顶栏新增切换按钮,不用返回就能测试不同API
  • 测试页显示响应头 - 可查看rate-limit、content-type等headers
  • 错误信息友好化 - SocketException等技术错误转为中文提示
  • 卡片滑动操作 - 左滑收藏、右滑删除(带确认)
  • 卡片暗黑模式适配 - 文字颜色跟随主题
  • 分组下拉选择 - 表单中分组字段改为从已有分组中选择
  • 重复检测 - 添加相同URL+Key的配置时弹出确认提示
  • 模板标记已添加 - 已配置过的模板显示绿色勾和"已添加"标签
  • 历史搜索 - 历史记录页面支持按端点和模型名搜索
  • 导出文件名带时间戳 - 不再覆盖之前的导出文件

v1.13.1 (2026-05-29)

修复

  • 检查更新macOS找.dmg
  • 导入配置类型错误
  • 删除mock代码
  • 零警告通过

v1.0.0 - v1.13.0

  • 初始版本及基础功能迭代

🚀 Apilot v1.14.0

Choose a tag to compare

@github-actions github-actions released this 29 May 16:56

更新日志

v1.14.0 (2026-05-30)

重大改进

  • 测试页支持切换API - 顶栏新增切换按钮,不用返回就能测试不同API
  • 测试页显示响应头 - 可查看rate-limit、content-type等headers
  • 错误信息友好化 - SocketException等技术错误转为中文提示
  • 卡片滑动操作 - 左滑收藏、右滑删除(带确认)
  • 卡片暗黑模式适配 - 文字颜色跟随主题
  • 分组下拉选择 - 表单中分组字段改为从已有分组中选择
  • 重复检测 - 添加相同URL+Key的配置时弹出确认提示
  • 模板标记已添加 - 已配置过的模板显示绿色勾和"已添加"标签
  • 历史搜索 - 历史记录页面支持按端点和模型名搜索
  • 导出文件名带时间戳 - 不再覆盖之前的导出文件

v1.13.1 (2026-05-29)

修复

  • 检查更新macOS找.dmg
  • 导入配置类型错误
  • 删除mock代码
  • 零警告通过

v1.0.0 - v1.13.0

  • 初始版本及基础功能迭代