github bikram-agarwal/ObtainX v2.22.0-Preview-291

pre-release3 hours ago

⚠️ Upstream v1.6.17 Sync (pre-release)

It brings ObtainX up to date by syncing with upstream Obtainium v1.6.17 (thanks to @ImranR98 et al), covering everything Obtainium released since the last sync (v1.6.10).

Caution

This is a pre-release beta. The merge touched a lot of code, so while the build passes my tests, there are very likely bugs I haven't found yet.

  • 📤 Export your data first (Backup → Export), and move the file to some other folder, just to be safe.
  • 🔁 If anything behaves differently than it used to, it's most likely a regression from the merge. Please report it.

✨ New from Obtainium

  • Root installer: installs updates silently through root (Settings → Integrations → Installer mode → Root). If root access is refused, your current mode stays.
  • Signing certificate check: before installing, ObtainX checks that an update is signed with the same certificate as the app on your phone, and asks before installing one that isn't. It's on by default (Settings → Warnings).
  • Expected signing certificate hashes: an optional per-app list, under the app's Additional options → Network, background & automation. An APK signed with any other certificate is never installed.
  • Certificate pinning: opt-in, for GitHub, GitLab, Codeberg and RuStore (Settings → Source-specific).
  • Minimum age for updates: holds back releases until they're a few days old (Settings → Updates, off by default). Each app can override it under Additional options → Tracking behavior.
  • Global APK filter regex: one APK filter for every app that doesn't have its own (Settings → Updates).
  • Skip update/install confirmation dialog: opt-in (Settings → Updates). Update all skips the update sheet and goes straight ahead with the apps the sheet would have selected.
  • Samsung Galaxy Store is a new source.
  • More stores in search: RuStore, Huawei AppGallery and Uptodown.

🛠 Improved and fixed in Obtainium

  • Uptodown downloads work again, using Uptodown's own app API.
  • RuStore no longer fails with error 419 or certificate errors, and apps it delivers as split APKs now install.
  • Huawei AppGallery details now come from its API, so versions are no longer timestamps, and .ru links work.
  • Third-party F-Droid repos that only publish index-v2.json now work.
  • Codeberg: you can save an access token in Settings → Source-specific. It's only ever sent to codeberg.org.
  • GitHub: if an organization's policy blocks your token on one of its repos, update/install now retries without the token. Token errors also show GitHub's real message instead of "rate limited".
  • Safer downloads: tokens aren't passed along when a download redirects to another site, and HTTPS-to-HTTP redirects are refused unless the app allows insecure requests.
  • Sturdier downloads: a download now also retries when the server is busy or rate-limiting, or when the file arrives cut short.
  • Notifications: tapping a single-app update notification opens that app.
  • Backup: auto-exports can now keep a fixed file name (set it under "Automatically export on changes"). Leave it blank to keep the usual timestamped names. Manual exports are unchanged, and exporting "With secrets" now warns first.
  • Plus many smaller fixes (categories, sorting, folder refresh, icons, notifications) and updated translations.

🐛 Fixed in ObtainX

Found and fixed during the sync:

  • Apps tracked from two stores now update the right listing in the background.
  • Shared app links no longer include per-app tokens.
  • 135 translations that earlier syncs had replaced with English are back.

Left out on purpose, because ObtainX already has its own take:

  • settings sub-pages;
  • app list density;
  • collapse groups on startup;
  • hide downgrades.

🧪 What to test

These saw the heaviest changes and are the likeliest spots for regressions:

  1. Updating over your current ObtainX: all your apps should still be there, with the same updates pending as before, and no updates appearing out of nowhere.
  2. Installing updates: run Update all in whatever installer mode you use. Every app should install with no unexpected "Signing certificate mismatch" warning, and third-party installers should stay on their own Open/Done screen.
  3. Background updates: let a background check run, or use Settings → Updates → "Run background update now". You should get notifications, and tapping one should open that app.
  4. Backup and restore: export, then import or restore. Your apps, folders and settings should come back as they were.
  5. The new stuff: if you use root, RuStore, Uptodown, Huawei AppGallery or Samsung Galaxy Store, try installing an app from it.

🐞 Reporting regressions

If you hit something, please open an issue with:

  • What you did, what happened, and what you expected instead
  • The app and its source
  • Logs from the settings page

Thanks for helping shake out the bugs before the stable release! 🙏


Note on attribution: @ImranR98 is tagged above to credit upstream Obtainium development. Tagging him here does not imply direct contribution to or endorsement of ObtainX on his part.

Don't miss a new ObtainX release

NewReleases is sending notifications on new releases.