Skip to content

OmniSIM 1.1.0

Choose a tag to compare

@github-actions github-actions released this 09 Aug 06:33
· 4 commits to main since this release

OmniSIM 1.1.0

OmniSIM 1.1.0 是一次功能与稳定性更新,重点补全 SIM 数据录入、固定月付续费规则、
使用成本视图和应用内更新体验,并修复页面切换与提醒状态的一致性问题。

本次更新

SIM 与续费规则

  • 底部导航扩展为首页、SIM、使用情况、设置四个入口。
  • 新增/编辑 SIM 表单完整支持名称、运营商、国家/地区、号码、SIM 类型、套餐、
    上次/下次续费日期、续费规则、金额、币种、续费网址和备注。
  • 新增“每月固定日期”规则,可选择每月 1–31 日;当某个月没有该日期时,自动使用
    当月最后一天。
  • 固定天数、每月固定日期和手动日期互斥校验,续费后始终从实际续费日计算下一日期。
  • 备份格式升级为 v2,并兼容恢复旧版 v1 备份。

使用情况与成本

  • 新增使用情况页面,汇总 SIM 保号成本和续费历史。
  • 支持固定天数及月付 SIM 的成本估算,并使用欧洲中央银行公开参考汇率统一换算币种。

更新与界面体验

  • 新增应用内更新检查:冷启动静默检查一次,发现新版本时显示版本号和更新内容。
  • 设置页可手动检查更新;下载按钮直接打开 GitHub 上的正式签名 APK。
  • 修复底部页面切换时标题短暂上移,以及状态栏与页面背景颜色不同步的问题。
  • 改进深色主题标题对比度、窄屏设置布局、表单与开关的 TalkBack 语义。
  • 移除应用强制 120 Hz 的行为,由 Android 根据设备和系统策略管理刷新率。

稳定性

  • 编辑下一续费日期时会清理旧周期提醒去重状态,避免新日期漏发提醒;仅修改备注不会
    误删提醒状态。
  • 应用跨过午夜或从后台恢复时会刷新“剩余天数”和到期状态。
  • 增加 Room v1→v2 迁移测试、提醒状态测试、更新解析与版本比较测试,以及常规 CI。

隐私与网络

SIM 信息、手机号码、续费日期、价格和备注仍仅保存在设备本地。OmniSIM 不需要账号,
不包含分析、遥测、广告、崩溃上报或远程日志。

网络仅用于获取欧洲中央银行公开汇率、从 GitHub 读取 OmniSIM 正式版本信息,以及在用户
确认后通过外部浏览器下载更新或打开续费网站。更新检查不会上传 SIM 数据、手机号码、
价格或续费日期。

安装与升级

  1. 下载 OmniSIM-1.1.0-release.apk
  2. 使用同目录下的 .sha256 文件校验下载完整性。
  3. Android 首次从 GitHub 安装时,可能要求允许浏览器或文件管理器“安装未知应用”。

已安装 GitHub 正式版 1.0.0 的用户可直接覆盖安装,Room 会自动迁移数据库并保留数据。
1.0.0 尚未包含应用内更新功能,因此本次需要从 GitHub 手动下载;安装 1.1.0 后,后续
正式版本可由应用内检查并进入下载流程。

若设备上安装的是 Debug 或其他证书签名的测试包,Android 不允许直接覆盖。请先在应用内
导出备份,卸载旧包,安装正式版后再恢复备份。最低系统版本为 Android 6.0(API 23)。

构建与签名

GitHub Actions 会执行单元测试、Android Lint、R8 Release 构建和 APK 验签,并同时发布
APK 与 SHA-256 校验文件。正式证书 SHA-256:

58146fc8f47be9fc5729f9c149dc8f17877a646692bb23c4f8130a2232d441cb

English

OmniSIM 1.1.0 completes SIM profile editing, adds fixed monthly renewal dates and
the Usage view, improves navigation and accessibility, and introduces an in-app
update flow.

Highlights

  • Four bottom destinations: Home, SIMs, Usage, and Settings.
  • Complete add/edit fields for identity, carrier, country, number, SIM type,
    plan, dates, renewal schedule, price, currency, renewal URL, and notes.
  • Fixed monthly renewal days from 1 through 31; short months use their final day.
  • Usage and cost summaries for day-cycle and monthly SIMs, with public ECB
    reference rates for currency conversion.
  • A silent update check once per cold start, a manual check in Settings, in-app
    release notes, and a direct action for the officially signed GitHub APK.
  • Synchronized page and system-bar transitions, improved dark-mode contrast,
    narrow-screen layouts, and TalkBack semantics.
  • Correct reminder-state invalidation when a renewal date changes and automatic
    date/status refresh after midnight or foreground resume.
  • Room v1-to-v2 migration tests, reminder persistence tests, update parser and
    version comparison tests, and a regular CI workflow.

SIM data remains local. Network access is limited to public ECB rates, official
GitHub release metadata, user-confirmed update downloads, and renewal websites
opened by the user. Update checks never upload SIM records, phone numbers,
prices, or renewal dates.

Install and upgrade

Download OmniSIM-1.1.0-release.apk and verify it with the accompanying SHA-256
file. Official GitHub version 1.0.0 can be upgraded in place; the Room migration
preserves existing data. Version 1.0.0 does not yet include the in-app updater,
so this upgrade must be downloaded manually from GitHub.

Debug or differently signed builds cannot be upgraded in place. Export a backup,
uninstall the old build, install the official APK, and then restore the backup.
Android 6.0 (API 23) or newer is required. Android may ask the browser or file
manager for permission to install unknown apps when sideloading from GitHub.

The release workflow runs unit tests, Android Lint, an R8 release build, signature
verification, and publishes both the APK and its SHA-256 checksum.