Skip to content

Open EOS Control 0.10.0 Development Preview

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 08 Sep 03:00
· 33 commits to main since this release
1164d36

Open EOS Control v0.10.0 Development Preview

繁體中文 | English

繁體中文

0.10.0 新增 Android 直接下載至系統相簿的操作,因此採 minor 版號。仍是 Development Preview,不是穩定版;本輪只推進 Android,不代表所有相機功能已完成。

Android 變更

  • Android 10 以上,系統認識的照片/影片原檔預設存到 Pictures/<相機型號>/。在 HTC 上查證 Camera Connect 的 JPEG/MP4 路徑為 Pictures/Canon EOS R6 Mark III/,本版依此對齊;不代表所有手機或 Camera Connect 版本皆相同。
  • 單張與多選使用循序、可取消的下載流程,完成後顯示位置。待完成檔案先隱藏,串流及長度驗證成功才公開;失敗/取消清除該次暫存,重名不覆蓋既有照片。保留原始位元組與內嵌 metadata,不轉碼或偽造拍攝時間。
  • 「另存至其他資料夾」仍可使用。系統不接受的格式(HTC API 34 包含 CR3)及 Android 8/9 使用系統檔案選擇器;混合選取包含未支援格式時,整批使用同一個自選資料夾。
  • 最近項目的日期每 8 筆漸進更新,全卡片模式保留已知日期。離開格子的縮圖請求取消;下載時暫停未完成的卡片遍歷與縮圖,減少競爭。大量同日/未知日期項目改用線性分組,排序預先解析日期。

驗證與限制

  • 功能 PR #192 通過 exact-head CI 與 main acceptance,包括 Android unit/lint/build 與 API 34/36 UI 測試。
  • 本地 513 項 Android 單元測試、lint(0 errors)與 App/測試 APK 建包通過。HTC API 34 通過 10 項新增儲存/相簿測試及 114 項既有畫面回歸,共 124 項,使用隔離 .debug App、合成媒體與本機 MockWebServer。原檔 JPEG 串流、含時區 EXIF 索引、重名、取消、截斷與重試均有測試。
  • 相機未連線,本輪未發送實體相機命令。 R6 Mark III 大卡片、弱網傳輸及實拍對焦仍待真機確認。合成 MP4/CR2 僅驗證原樣儲存,不代表解碼驗收。
  • 不保證第三方相簿可解碼所有 RAW;未知日期不假定為最近,缺少時區/metadata 的系統相簿日期由 Android 決定。長度一致不等於來源 checksum 已驗證。
  • 未新增跨程序可恢復下載佇列;程序強殺後未公開檔案由 Android pending 到期機制處理,不宣稱立即清理。不自動刪除相機原檔。
  • PC/iOS 只對齊版本,未同步此 Android 相簿行為。Camera Import artifact 1.1.0/wire 1.0 及 Serein 契約不變。

完整依據:Android 相簿與下載位置。

安裝與發行檔

  • Android:open-eos-control-android-0.10.0-debug.apk,versionCode=26。沿用固定開發簽章及 Preview package,可更新同簽章舊 Preview,不覆蓋隔離 .debug 測試 App。
  • PC:版本對齊的 Windows x64 Bridge executable、Python wheel 與 source distribution;沒有新增 Android 相簿行為。
  • iOS:原始碼與 iPhone Simulator CI,沒有可直接安裝的已簽署 IPA。
  • 另附 Camera Import ZIP/Kotlin JAR、BUILD-PROVENANCE.json 與 SHA256SUMS.txt。專用 Actions workflow 發布 exact-main immutable candidate,不手動重建替換資產。

English

0.10.0 adds a direct Android system-gallery download flow, warranting a minor version. It remains a Development Preview, not a stable release or a claim that all camera features are complete. Product changes are Android-only.

Android Changes

  • On Android 10+, system-recognized photo/video originals default to Pictures/<camera model>/. Camera Connect JPEG/MP4 entries on the tested HTC use Pictures/Canon EOS R6 Mark III/; this release matches that observed path, not a universal promise across phones or Camera Connect versions.
  • Single and multi-select downloads run sequentially, support cancellation, and show their destination. Pending items stay hidden until streaming and length checks succeed. Failure/cancellation removes this attempt's item; duplicate names never overwrite existing photos. Original bytes and embedded metadata are preserved without transcoding or fabricated capture dates.
  • Save to another folder remains available. Unsupported formats (including CR3 on the tested HTC API 34) and Android 8/9 use the system file picker. Mixed selections containing unsupported formats use one chosen folder for the entire batch.
  • Recent metadata appears in batches of eight, and full-card browsing retains known dates. Off-screen thumbnail requests are cancelled; downloads pause incomplete card traversal and thumbnail work. Large same-date/unknown-date groups use linear accumulation, and sorting parses dates once per item.

Evidence And Limitations

  • Feature PR #192 passed exact-head CI and main acceptance, including Android unit/lint/build and API 34/36 UI tests.
  • Local validation passed 513 Android unit tests, lint with zero errors, and App/test APK builds. HTC API 34 passed 10 new storage/gallery tests plus 114 existing screen tests: 124 unique tests using an isolated .debug App, synthetic media, and local MockWebServer. Coverage includes original JPEG streaming, timezone-aware EXIF indexing, duplicate names, cancellation, truncation, and retry.
  • No physical camera was connected or commanded. R6 Mark III large-card, weak-network transfer, and optical focus validation remain pending. Synthetic MP4/CR2 tests demonstrate unchanged storage bytes, not decoding support.
  • Third-party RAW decoding is not guaranteed. Unknown dates are not assumed recent; Android determines gallery dates for files lacking timezone/metadata. Matching lengths do not constitute a verified source checksum.
  • No process-resumable download queue is added. Android expires unpublished pending items after process death; immediate cleanup is not claimed. Camera originals are never automatically deleted.
  • PC/iOS versions are aligned without this Android gallery behavior. Camera Import artifact 1.1.0 / wire 1.0 and the Serein contract remain unchanged.

See Android gallery/download evidence.

Distribution

  • open-eos-control-android-0.10.0-debug.apk, versionCode=26, retains the persistent development signer and Preview package for matching older Preview upgrades, separate from the isolated .debug test App.
  • Version-aligned PC assets include the Windows x64 Bridge executable, wheel, and source distribution, without Android gallery parity. iOS remains source plus Simulator CI, without an installable signed IPA.
  • Camera Import ZIP/Kotlin JAR, provenance, and checksums accompany the release. The dedicated Actions workflow promotes the exact-main immutable candidate; assets are not manually rebuilt or substituted.