Obtainium

ProductivityAndroid

Install and update Android apps straight from their source releases.

Latest v1.6.11 · · Androidby Imran RemtullaWebsiteImranR98/Obtainium

Release activity

Release activity — 10 releases across 8 days since Jul 9, 2026. Each cell is one day; darker means more releases that day. Nothing is recorded before Jul 9, 2026. Older weeks are hidden at this screen width.
MayJunJulAug
Sunday1 release on Jul 12, 20261 release on Jul 19, 2026No releases on Jul 26, 2026No releases on Aug 2, 2026No releases on Aug 9, 2026
Monday1 release on Jul 13, 2026No releases on Jul 20, 2026No releases on Jul 27, 2026No releases on Aug 3, 2026No releases on Aug 10, 2026
Tuesday1 release on Jul 14, 2026No releases on Jul 21, 2026No releases on Jul 28, 2026No releases on Aug 4, 2026No releases on Aug 11, 2026
Wednesday3 releases on Jul 15, 2026No releases on Jul 22, 2026No releases on Jul 29, 2026No releases on Aug 5, 2026
Thursday1 release on Jul 9, 20261 release on Jul 16, 2026No releases on Jul 23, 2026No releases on Jul 30, 2026No releases on Aug 6, 2026
FridayNo releases on Jul 10, 2026No releases on Jul 17, 2026No releases on Jul 24, 2026No releases on Jul 31, 20261 release on Aug 7, 2026
SaturdayNo releases on Jul 11, 2026No releases on Jul 18, 2026No releases on Jul 25, 2026No releases on Aug 1, 2026No releases on Aug 8, 2026

10 releases since Jul 9, 2026, busiest day 3

Changelog

v1.6.11

Added 3
  • Add obtainium://refresh deep link action for triggering update checks
  • Add inline TV add-app button and fix settings bottom padding on TV
  • Add export installed-only filter
Changed 11
  • Improve French translation
  • Update Arabic translation
  • Update Korean translation
  • Update Chinese translation
  • Update Polish translation
  • Update Japanese translation
Fixed 6
  • Fix vivo app store
  • Prevent downgrades in update check when showAppDowngradeError is enabled and versions share a standard format
  • Persist in-memory install status corrections from loadApps to disk
  • Fix FGBG stream conflict and extend external installer polling to 30s
  • Fix double-decode in obtainium:// import causing unicode errors
  • Read import file via bytes fallback when path is null, fixing Samsung import
What's Changed
  • Improve french translation by @mgdx in https://github.com/ImranR98/Obtainium/pull/3165
  • Update ar.json by @jermanuts in https://github.com/ImranR98/Obtainium/pull/3156
  • Update ko.json by @justcontributor in https://github.com/ImranR98/Obtainium/pull/3135
  • Update zh.json translations by @Jursin in https://github.com/ImranR98/Obtainium/pull/3126
  • i18n: update pl.json by @krvstek in https://github.com/ImranR98/Obtainium/pull/3125
  • Update ja.json by @bluefly000 in https://github.com/ImranR98/Obtainium/pull/3120
  • Fix vivo app store by @iKirby in https://github.com/ImranR98/Obtainium/pull/3140
  • Begin app installation immediately after each download completes during batch updates by @Psychosoc1al in https://github.com/ImranR98/Obtainium/pull/3162
  • By @ImranR98 in https://github.com/ImranR98/Obtainium/pull/3173:
    • Include app name in duplicate-detection error messages (#3038)
    • Add obtainium://refresh deep link action for triggering update checks (#3050)
    • Separate background checks from silent installs: interval gates checks, toggle gates installs only (#3070)
    • Prevent downgrades in update check when showAppDowngradeError is enabled and versions share a standard format (#3078)
    • Persist in-memory install status corrections from loadApps to disk (#3090)
    • Use versionCode as version string in F-Droid sources when toggle is enabled (#3117)
    • Fix FGBG stream conflict and extend external installer polling to 30s (#3121, #3091)
    • Add inline TV add-app button and fix settings bottom padding on TV (#3124)
    • Fix double-decode in obtainium:// import causing unicode errors (#3127)
    • Reorganize settings into separate navigable sub-pages (#3134)
    • Read import file via bytes fallback when path is null, fixing Samsung import (#3142)
    • Add export installed-only filter (#3144)
    • Fix category chip alignment in narrow portrait layouts (#3147)
    • Force English locale for uptodown non-English URLs (#3158)
    • Increase pinned app background contrast using primaryContainer colour (#3160)
    • Defensive copy of additionalSettings values on save to prevent toggle persistence issues (#3161)
    • Fix uptodown files downloading without .apk extension (#3164)
    • Add haptic feedback across UI actions and download/install lifecycle
    • Convert filter dialog to bottom sheet
    • Don't cap RateLimitError retries and reduce HandshakeException retries from 5 to 2
    • Fix download size display and probe it regardless of update availability
    • Fix per-app empty string shadowing global GitHub token in getSourceConfigValues
    • Move app import into the renamed Import/export settings page
    • refactor: comprehensive code review — bugfixes, dead code removal, perf improvements, architectural cleanup
    • Set parallel downloads default to true; hide action banner when fewer than 2 pending updates/installs
New Contributors

Full Changelog: https://github.com/ImranR98/Obtainium/compare/v1.6.10...v1.6.11

View originalPermalink
How v1.6.11 went

v1.6.10

Added 1
  • 3-way action banner setting to show for all actions, updates only, or be hidden entirely, controlled from Settings → Appearance
Changed 6
  • Compact page headers to give more room to content on Apps, Settings, Add App and other pages
  • Update dialog now lists each app individually with checkboxes instead of all-or-nothing toggles
  • Settings reorganized into logical groups under Updates, Appearance, and Categories
  • Segmented buttons replaced with dropdown menus for install method, action banner, and group-by controls
  • Consistent form input styling applied across all text fields, dropdowns, and toggles with filled, borderless look and rounded corners
  • Download size now shown inside the update button as estimated APK size and only looked up when an update or install is available
Fixed 1
  • Wrong download size preview for sources like Uptodown
Removed 1
  • Unused page transition toggles removed from Settings
What's Changed
  • By @ImranR98 in https://github.com/ImranR98/Obtainium/pull/3114
    • Compact page headers — The "Apps", "Settings", "Add App" and other page titles now use smaller headers, giving more room to content (#3107).
    • Per-app checkboxes in the update dialog — Instead of all-or-nothing toggles, the dialog now lists each app individually with a checkbox, so you can choose exactly which apps to update or install (#3107).
    • 3-way action banner setting — The banner can now show for all actions, updates only, or be hidden entirely, controlled from Settings → Appearance (#3100).
    • Settings reorganization — Settings are now grouped logically under Updates, Appearance, and Categories. Unused "page transition" toggles have been removed.
    • Segmented buttons replaced with dropdowns — The install method, action banner, and group-by controls now use dropdown menus for a cleaner look.
    • Consistent form input styling — All text fields, dropdowns, and toggles across the entire app now share the same filled, borderless look with rounded corners, including the add-app page, import page, and category editor.
    • Download size shown inside the update button — The estimated APK size now appears directly in the Update or Install button text (e.g., "Update · 12 MB"), and is only looked up when an update or install is actually available.
  • Fix wrong download size preview for sources like Uptodown (#3104) By @ImranR98 in https://github.com/ImranR98/Obtainium/pull/3119
  • More UI tweaks

Full Changelog: https://github.com/ImranR98/Obtainium/compare/v1.6.9...v1.6.10

View originalPermalink
How v1.6.10 went

v1.6.9

Fixed 1
  • Fix RuStore 400 Error
What's Changed
New Contributors

Full Changelog: https://github.com/ImranR98/Obtainium/compare/v1.6.8...v1.6.9

View originalPermalink
How v1.6.9 went

v1.6.7

Added 1
  • Add install/update selected apps button to multi-select actions menu that reuses existing obtain dialog logic
Changed 1
  • Apply various UI tweaks
Fixed 2
  • Fix UI unresponsiveness during update checks
  • Fix keyboard closing on add-app additional settings fields
What's Changed

Full Changelog: https://github.com/ImranR98/Obtainium/compare/v1.6.6...v1.6.7

View originalPermalink
How v1.6.7 went

v1.6.6

Changed 4
  • Improved update check UI performance
  • Improved app list loading UI
  • Improve install result detection for external installers in foreground
  • Various visual tweaks
Fixed 1
  • Fix multiple tags gradient rendering where rightmost tag color incorrectly stretched across entire bubble
Removed 1
  • Removed tabbed UI
What's Changed
  • By @ImranR98 in https://github.com/ImranR98/Obtainium/pull/3087:
    • Fix multiple tags gradient rendering where rightmost tag color incorrectly stretched across entire bubble (#3086)
    • Removed tabbed UI (#3059, #3069)
    • Improved update check UI performance (#3043)
    • Improved app list loading UI (#2666)
    • Improve install result detection for external installers in foreground
    • Various visual tweaks

Full Changelog: https://github.com/ImranR98/Obtainium/compare/v1.6.5...v1.6.6

View originalPermalink
How v1.6.6 went

v1.6.5

Added 2
  • Add HandshakeException retry with staggered random delays for concurrent TLS failures during batch update checks
  • Add notification permission request on first non-TV launch and declare POST_NOTIFICATIONS in manifest
Changed 3
  • Place Traditional Chinese locale above generic Chinese locale for consistency
  • Make showActionBannerForUpdateOnly true by default
  • Return all install-capable activities per app for external installer selection
Fixed 3
  • Fix blank search query being blocked on add-app page, restoring ability to list all apps in F-Droid third-party repos
  • Fix download progress not updating on app list tiles because tileChild was computed outside ValueListenableBuilder
  • Prevent background retry tasks from spawning duplicate install tasks
What's Changed
  • By @ImranR98 in https://github.com/ImranR98/Obtainium/pull/3076:
    • Place TW zh above zh locale for consistency
    • Fix blank search query being blocked on add-app page, restoring ability to list all apps in F-Droid third-party repos (from #3000)
    • Add HandshakeException retry with staggered random delays for concurrent TLS failures during batch update checks (#3008)
    • Add notification permission request on first non-TV launch and declare POST_NOTIFICATIONS in manifest (#3070)
    • Fix download progress not updating on app list tiles because tileChild was computed outside ValueListenableBuilder
    • Make showActionBannerForUpdateOnly true by default by @ImranR98 in https://github.com/ImranR98/Obtainium/pull/3077
  • by @ImranR98 in https://github.com/ImranR98/Obtainium/pull/3081:
    • Prevent background retry tasks from spawning duplicate install tasks
    • Return all install-capable activities per app for external installer selection (#3067)

Full Changelog: https://github.com/ImranR98/Obtainium/compare/v1.6.4...v1.6.5

View originalPermalink
How v1.6.5 went

v1.6.4

Added 1
  • Add missing German translations
Changed 2
  • Updated pt-BR translation
  • Updated pl.json translation
Fixed 3
  • Use sourceIdentifier instead of name for overrideSource after search
  • Fix force-all update checks ignoring only-check-installed-or-track-only-apps setting
  • Fix pt-BR locale auto-detecting as pt-PT and reverting to pt-PT after app restart
What's Changed
New Contributors

Full Changelog: https://github.com/ImranR98/Obtainium/compare/v1.6.3...v1.6.4

View originalPermalink
How v1.6.4 went

v1.6.3

Added 1
  • Add disable-swipe setting and always-use-phone-layout option
Changed 1
  • Pin app-detail actions bar to bottom
Fixed 2
  • Fix settings scroll on wide/trackpad devices
  • Fix TV navigation regressions across all dialogs, text fields, search bar, radio picker, and app list checkboxes
What's Changed
New Contributors

Full Changelog: https://github.com/ImranR98/Obtainium/compare/v1.6.2...v1.6.3

View originalPermalink
How v1.6.3 went

v1.6.2

Changed 1
  • Localize app source names and supplement Chinese translations
Fixed 3
  • Guard onNewIntent against uninitialized plugin callResult
  • Fallback to internal storage on custom ROMs where external is read-only
  • Restore determinate progress bar during app list refresh
What's Changed
New Contributors

Full Changelog: https://github.com/ImranR98/Obtainium/compare/v1.6.1...v1.6.2

View originalPermalink
How v1.6.2 went
View all

Discussion