Orbot
org.torproject.android
Zapstore _@zapstore.dev Republished from GitHub / F-Droid by the Zapstore main account.
Orbot is a free VPN and proxy app that empowers other apps to use the internet more securely. Orbot uses Tor to encrypt your Internet traffic and then hides it by bouncing through a series of computers around the world. Tor is free software and an open network that helps you defend against a form of network surveillance that threatens personal freedom and privacy, confidential business activities and relationships, and state security known as traffic analysis. Orbot is the only app that creates a truly private internet connection. As the New York Times writes, “when a communication arrives from Tor, you can never know where or whom it’s from.” Tor won the 2012 Electronic Frontier Foundation (EFF) Pioneer Award. ★ ACCEPT NO SUBSTITUTES: Orbot is the safest way to use the Internet on Android. Period. Orbot bounces your encrypted traffic several times through computers around the world, instead of connecting you directly like other VPNs and proxies. This process takes a little longer, but the strongest privacy and identity protection available is worth the wait. ★ PRIVACY FOR APPS: Any app can be routed over Tor via the Orbot VPN feature ★ PRIVACY FOR EVERYONE: Orbot prevents someone watching your connection from knowing what apps you are using or websites you visit. All anyone monitoring your network traffic can see is that you're using Tor. ***We Love Feedback*** ★ LEARN MORE: Learn more about Orbot and get involved at https://orbot.app ★ ABOUT US: Guardian Project is a group of developers that make secure mobile apps and open-source code for a better tomorrow. ★ OPEN-SOURCE: Orbot is free software. Take a look at our source code, or join the community to make it better: https://github.com/guardianproject/orbot ★ MESSAGE US: Are we missing your favorite feature? Found an annoying bug? We’d love to hear from you! Send us an email: support@guardianproject.info ***Disclaimer*** Guardian Project makes apps that are designed to protect your security and anonymity. The protocols that we use are widely regarded as the state of the art in security technology. While we are constantly upgrading our software to combat the latest threats and eliminate bugs, no technology is 100% foolproof. For maximum security and anonymity users must utilize best practices to keep themselves safe. You can find a good introductory guide to these topics at https://securityinabox.org
First release: Jul 16, 2024, 21 total releases.
Most recent release: Sep 18, 2026.
Appears in 16 app stacks.
500 sats / 1 zaps received in the past year.
Sats Received
Underlying data available via MCP: app_zaps, app_releases.
Zap Count
Underlying data available via MCP: app_zaps, app_releases.
Releases
- Sep 18, 2026 17.9.6-BETA-1-tor-0.4.9.12-2-g7b2bb2571Top 10 changes since 17.9.5 1. Security audit fixes (ORB-02 series) from bitmold. These close the findings from the recent audit: - High: Tor/VPN could be disabled because cleanup was incomplete (ORB-02-011). - Medium: Kindness Mode restart could bypass consent (ORB-02-004). - Medium: Android network hardening (ORB-02-005). - Low: missing path traversal protection (ORB-02-008). - Hardcoded AWS SQS credentials removed (ORB-02-014). - Power receiver hardened (ORB-02-002). - Camo mode now respects Kindness Mode notifications (ORB-02-010).
More…
2. Other apps can no longer start Orbot from bitmold. External start was first turned off by default (ORB-02-013), then StartTorReceiver was deleted entirely. On Android 14+ that path would have thrown a SecurityException anyway. 3. Kindness Mode onboarding redesign from Benjamin Erhart. The initial, testing, approved and declined screens were reworked, new explainer and warning screens were added, and landscape layout got better. bitmold then split the testing dialog into three dialogs and fixed UI bugs. 4. Kindness Mode reliability from munzzyy (Cole Munz): - Kindness Mode now comes back when the system shuts it down (#1799, #1783). - The watchdog moved from WorkManager to JobScheduler. - Snowflake proxy start/stop races are fixed, and UPnP mappings survive restarts (#1183, #1795). - The network callback now follows the Wi-Fi setting. Follow-ups: - bitmold fixed the multiple-constraints bug and separated start/stop from the UI toggle. - vbrekher fixed the Kindness preference listener (#1808). - meenbeese (Kuzey Bilgin) made the weekly Snowflake count reset lazily by week. 5. Bridge parsing fixes and tests from munzzyy: - Transport lines with no fingerprint now parse. - The Bridge.doh getter was reading the dot parameter by mistake. - Unicode spaces in custom bridge input are now normalized (#1695). - New unit tests cover bridge line parsing. 6. Tor core and network data from n8fr8 and bitmold: - Moved to the new tor-android release (tagged 17.9.6-BETA-1-tor-0.4.9.12). - SSL libraries updated. - Built-in bridges refreshed several times. - GeoIP data updated to the IPFire location DB (2026/09/08). 7. Proxy, port and preference fixes: - vbrekher: proxy ports are shown independently (#1134), and a PreferenceProvider crash is fixed (#1760). - munzzyy: the IPv6 preference now applies to HTTPTunnelPort (#1420), and duplicated log lines are fixed. - bitmold: regressions in app-based routing are fixed. 8. Toolchain and dependency upgrades from bitmold: - AGP 9.3.0 → 9.4.0, Gradle 9.7.1, Kotlin 2.4.x. - Compiles against API 37.1. - NDK 30 LTS. - AppCompat 1.8.0 and androidx navigation 2.10.1. - hev-socks5-tunnel moved back and forth between 2.15, 2.16 and 2.17.1, with a native interface fix from n8fr8. 9. Code cleanup and lint mostly from bitmold: - Many lint warnings fixed in OrbotService, including nullability annotations and replacing deprecated APIs. - Legacy activity-result file I/O removed (inspired by meenbeese, #1800). - Duplicate and unused strings and assets removed. - All AlertDialogs now use AppCompat and the Orbot theme. - meenbeese removed a dead handler callback interface. - Private DNS status now shows under the connect button. 10. CI, UX polish and translations: - meenbeese removed Bitrise CI and made unit tests run in GitHub Actions. - syphyr switched the status bar to white icons. - xhon-pelushi made the Kindness test dialog reachable at large font sizes. - bitmold added Ukraine to the exit node list (#1764) and fixed the UK exit node and the Uzbekistan DNSTT config. - Weblate translations came in for about 18 languages, including new Swahili. Contributors include Aindriú Mac Giolla Eoin, Sketch6580, Ecron, Random, jonnysemon, Akhil Raj and others. Commit counts (merges excluded): bitmold 108, munzzyy/Cole Munz 10, Benjamin Erhart 9, n8fr8 8, meenbeese/Kuzey Bilgin 5, vbrekher 3, syphyr 1, xhon-pelushi 1, plus about 25 translators and dependabot. *** 7b2bb2571 (HEAD -> master, origin/master, origin/HEAD) update bridges b3259f357 update ssl libs 158223e54 (tag: 17.9.6-BETA-1-tor-0.4.9.12) update to tor-android 0.4.8.12 bfda8fbe9 Merge branch 'master' of github.com:guardianproject/orbot 0397c9b17 update versioncode d89c41dcf Merge pull request #1823 from weblate/weblate-guardianproject-orbot 668e5eada Added translation using Weblate (Swahili) 809c4eaea use constants defined in TorControlCommand.java from jtorctl c063f132f use latest LTS NDK toolchain in app/build.gradle.kts NDK Version 29.0.14206865 -> 30.0.16248370 6720b85c7 Ran ./gradlew updateBuiltinBridges to prepare for a new Orbot release 7857fb5fb formatted libs.versions.toml with ./gradlew versionCatalogFormat 8b1685053 Update geoip files to match ipfire location db, 2026/09/08. https://gitlab.torproject.org/tpo/core/tor/-/commit/cace84c1d65dbf493053c3ad33ed53d34e28d46b c799fb475 Merge pull request #1821 from weblate/weblate-guardianproject-orbot 206a0a28e Translated using Weblate (French) 831d8bf4e removed more - unused java pathways 74a5d9833 clean up manifest, and remove empty,text-less string resource from Mali (linter catch!) 3ae39bc55 (origin/no-background-starts) Remove StartTorReceiver and the vestigial way of having other app's start Orbot - Deletes StartTorReceiver, Various String Resources - Starting with Android 14, Orbot would either have had to be the primary VPN app OR have obtained the SCHEDULE_EXACT_ALARMS permission from the user at runtime - if neither of these things are true, then Orbot would throw a SecurityException for starting a ForegroundService - Relates to ORB-02-013 WP3, wherein this feature was turned on by default. This was removed in e2a935547c6ae78d35dd59d7de11f5d43c5addda, however at this point it makes more sense to just get rid of the whole thing d3abb7c07 native interface needs to be fixed for hev-socks5-tunnel 2.17.1 f3b79e3ce bump hev-socks5-tunnel to 2.17.1 f3b7c647a fixed remaining regressions (see last commit) 96ebd6f45 Fixed regression introduced after last build with app based routing 436c2c411 - Fixed issue with multiple kindness mode constraints - Decoupled start/stop from the UI toggle f82ca6f8a Merge branch 'kindness-stays-on' 3afb29a13 - added even more logs - remove unhelpful and cluttering log from recent work in PreferenceProvider.kt c54260643 Re: #1805, the logic for sonwflake prefernce change doesnt need to exist in its own file 2fa7b4e58 Cleanups on #1807 PR regaridng stuck kindness mode 120c6c506 add Ukraine {UA} to exit node dropdown, closes #1764 2c731e58b cleanups/linting for #1807 d5b58765e Merge branch 'master' into kindness-stays-on 1150ec3c9 add annotations to OrbotVpnManager.java to satisfy linker after reviewing and merging #1814 da8810ad5 Merge remote-tracking branch 'meenbeese/handler' ae5b0cf67 Merge pull request #1820 from weblate/weblate-guardianproject-orbot 6cd8464fc Translated using Weblate (French) 57793b053 Merge remote-tracking branch 'weblategithub/weblate-guardianproject-orbot' dde6f35aa Translated using Weblate (French) 0380e343b Merge pull request #1818 from weblate/weblate-guardianproject-orbot 943a5ee0e Translated using Weblate (French) a9fb84482 weblate git trouble f800ca158 Merge remote-tracking branch 'weblate/master' d04d6cb41 Translated using Weblate (French) 790b5f361 Merge pull request #1816 from weblate/weblate-guardianproject-orbot 4f7f11a6d fixed casing 4578d31e9 Translated using Weblate (Afrikaans) 85bd38fc9 Translated using Weblate (French) fce2348be Remove dead handler callback interface b33440e0e Use hev-socks-tunnel from master c27d1c806 Merge branch 'master' into HEAD 71398bfb7 Cleanups in kindness mode notificaiton logic made when testing #1805 fb32f79b6 Merge remote-tracking branch 'munzzyy/kindness-callback-respects-wifi-pref' 54d938216 Some cleanups to #1802 - the PR where the weekly snowflakes served worker is removed... a9178f3e7 Merge remote-tracking branch 'meenbeese/work' a1d0c1f59 add comments to SnowflakeProxyServiceTest for tests pertaining to #1808 and #1810 ed6300833 Merge remote-tracking branch 'vbrekher/fix/1808-kindness-preference-listener' 8b97e6d53 Dealt with many Java lint warnings in OrbotService - explicitly use @NonNull @Nullable when trivial to do so, for cleaner kotlin interop + just makes things more sane - removed synthetic accessors generated by compiler for OrbotService's many inner classes - replaced two deprecated android methods (stopForeground() and a method used to update notification locale changes) with the correct, non-deprecated alternative c2538f148 verified that #1809 fixes #1404, added comment e31011b1b comments tidying up recently merged #1809 bfe9edf4b Merge remote-tracking branch 'munzzyy/fix-log-duplication' 060ccab41 Additional small cleanups re #1812 - use constant for the -1 when HTTP/SOCKS/etc ports aren't set, instead of a lot of magic nums in OrbotActivity/MoreFragment ad313a655 Cleanup around #1812 4e7f03e1b Merge remote-tracking branch 'vbrekher/fix/1134-independent-proxy-ports' 8d0ecefbf use correct gradlew for running unit tests in github actions, re: #1813 15ad3a0c7 Merge remote-tracking branch 'meenbeese/workflow' d35a6e6e4 mistakenly committed something re #1811 a7ee6e68e mistakenly committed something re #1811 b6616d3e7 log for failure case of #1811 82fc287ec removed unneeded type arguement in #1811 preference provider crash fix 07e87b1d8 runtests.sh shortcut 48c650309 Merge remote-tracking branch 'vbrekher/fix/1760-preference-provider-crash' 95807ff1e Revert "native interface needs to be fixed for hev-socks5-tunnel 2.17.1" a32f98d17 --service flag for view_logs_tmux.sh a77f41331 revert hev-socks5-tunnel to 2.16.0 9ea7e1628 update builtin bridges from torproject 54a302aa3 androidx.navigation:navigation-fragment-ktx:2.10.0 (androidx-navigation-fragment-ktx) -> 2.10.1 ee8092878 Run units tests from actions 40dfb729c Show configured proxy ports independently 8fa6457c4 fix preference provider crash 516db21a6 fix kindness preference listener b081bb997 Fix log lines being stored in duplicate 76dc4c958 use serialization kotlin plugin for v 2.4.20 of language fea59ea75 use geoip and geoip6 from tor-0.4.9.12 580950d76 Merge pull request #1804 from syphyr/white_icon 2a074f9fc Merge pull request #1806 from weblate/weblate-guardianproject-orbot 2cc1be656 kindness: run the watchdog on JobScheduler instead of WorkManager d6f7ecc82 bring kindness mode back when the system takes it down #1799 #1783 c6274e13b fix snowflake proxy start/stop races and remember UPnP mappings across restarts #1183 #1795 bfc3d406f Translated using Weblate (Persian) 72de1337e Register the kindness network callback per the Wi-Fi pref 34502c753 Use white icons in the status bar 9ad81f2b0 Merge pull request #1803 from weblate/weblate-guardianproject-orbot a5a888cbf Translated using Weblate (Ukrainian) 74f2788ba Reset weekly snowflake count lazily by week 7a6c43fc7 Remove start activity result methods for restoring backups in client auth and onion service activities. Removes now unused DiskUtils.createReadFileIntent Inspired by #1800 9f25f8d21 Remove legacy write file via activity result API. Inspired by @meenbeese work in #1800. Also removes the need for hte method DiskUtils.createWriteFileIntent 9b54e25f8 Clenaups related to #1800 - Fragment code for client auth activity result isn't necessary, removed. - Changed visibility of some fields from private to pkg private, linter said the compiler was creating a synthetic accessor... (fields are only used in an internal class) a3e97c96e fix typo in unused SQL edge case for updating the local SQL that says if client authorizaiton for an onion service is enabled/disabled (credit to @meenbeese re #1800) a519c5c49 Fix ORB-02-004 WP1: Consent Bypass via Kindness Mode Restart (Medium) 551cdd429 Fix ORB-02-008 WP3: Lack of Path Traversal Protection (Low) 313539d37 ORB-02-005 WP3: Android Network Hardening Recommendations (Medium) e2a935547 Fix ORB-02-013 WP3: External Tor Activation Enabled by Default (Low) Disable default behavior of allowing other apps to send Orobt a start intent 69d2f1a39 Fix ORB-02-011 WP1/3: Tor/VPN Disablement via Incomplete Cleanup (High) 326c48c2e Use AGP 9.4.0 (for android application plugin) 952af9dc2 Fix: ORB-02-014 WP3: Hardcoded AWS SQS Credentials f65a9e5a7 Hardened Snowflake Kindness Mode Power (Dis)Connected Receiver ORB-02-002 The receiver has an intent filter for the two system power connected events, but explicitly check the action in the receiver implementation f51120b56 Camo mode also respects kindness mode notifications, ORB-02-010 2db8e8520 - Correctly use UK exit node in exit node dialog - Uzbekistan's DNSTT config is correctly loaded 98a0cf3ea - Fixes Wi-Fi option being ignored off by default (#1798) - Kindness Mode's network receiver only needs to subscribe to Wi-Fi events, fixes edge case where wifi is ignored when tor's vpn is active...) 07f6a40cb Merge pull request #1792 from munzzyy/fix/httptunnelport-ipv6pref 31f7e54fc Add comments with URL for torproject DNSTT email paste bug issue (#1695) 7d8ce05bb Merge pull request #1791 from munzzyy/fix/bridge-unicode-spaces 17d0ba8fa Merge pull request #1793 from weblate/weblate-guardianproject-orbot e264f4fe7 Translated using Weblate (Malayalam) 7111dbdb4 Translated using Weblate (Catalan) 862a0ffe7 normalize unicode spaces in custom bridge input #1695 8187d62c7 add ipv6Pref to HTTPTunnelPort in torrc #1420 f491597ca bump androidx navigation to 2.10.0: - androidx.navigation:navigation-fragment-ktx:2.9.8 (androidx-navigation-fragment-ktx) -> 2.10.0 - androidx.navigation:navigation-ui-ktx:2.9.8 (androidx-navigation-ui-ktx) -> 2.10.0 11967d2af Merge pull request #1790 from weblate/weblate-guardianproject-orbot 957a1bc58 Translated using Weblate (Malayalam) c0ed1b21b add note about bridge parsing unit tests to README.md 88b1044be Merge pull request #1789 from munzzyy/add-bridge-parsing-tests d40d65b49 kotlin 2.4.10 lint 113674aca bump application and library plugins to 9.3.2 91f5e1b86 add unit tests for bridge line parsing 629221f32 Merge pull request #1786 from munzzyy/fix-bridge-transport-parsing-no-fingerprint d88b75ea8 linting bf0448814 use gradle 9.7.1 0ede9a825 Merge pull request #1785 from meenbeese/bitrise e65d92130 Merge pull request #1787 from xhon-pelushi/fix/1779-kindness-testing-dialog-scroll 14a87da25 Merge pull request #1788 from weblate/weblate-guardianproject-orbot b57002e3a Translated using Weblate (Catalan) 9e0ed8983 native interface needs to be fixed for hev-socks5-tunnel 2.17.1 25218d2d8 bump hev socks 5 tunnel 2.17.1 b00bd9a6a bump app compat 1.7.1 -> 1.8.0 3aa73fe0e Fix Kindness Mode connection-test dialog being unreachable at large font sizes 032cac6be Fix Bridge parsing for transport lines with no fingerprint 7bc970ce5 Remove the now-unused Bitrise CI 521d18aa3 Merge pull request #1784 from weblate/weblate-guardianproject-orbot 0fb5181dc Translated using Weblate (Arabic) 437ed9871 update built in bridges from torproject ee9393994 Merge pull request #1780 from munzzyy/fix/bridge-doh-getter db3058530 Merge pull request #1782 from weblate/weblate-guardianproject-orbot 94caade10 Translated using Weblate (Indonesian) d3a7af8c1 fix Bridge.doh getter reading the dot parameter 5a498eebb bump to version catalog updater that is configuration cache compatible/AGP10 compatible 5123cf7c1 Merge pull request #1775 from weblate/weblate-guardianproject-orbot 2f4b0ee38 Translated using Weblate (Italian) 18ecb5650 update latest geoip from torproject c7133fa8d Merge pull request #1770 from weblate/weblate-guardianproject-orbot 4ea5bcd54 bump android gradle plugin 9.3.1 1b30cc68d Translated using Weblate (English (United Kingdom)) 9143cbf8b Translated using Weblate (Irish) 8c0faaa87 Translated using Weblate (Chinese (Simplified Han script)) 48005a659 Translated using Weblate (Japanese) 0f8361d10 Translated using Weblate (Japanese) 2f420fa7d Merge pull request #1769 from weblate/weblate-guardianproject-orbot caa74fc9f Translated using Weblate (Italian) 3f61bc788 Translated using Weblate (Italian) 5fdb44c01 Update strings.xml 7e88a9b92 Merge pull request #1766 from weblate/weblate-guardianproject-orbot 49f6d0030 Translated using Weblate (Catalan) a9fbf2388 Merge pull request #1765 from weblate/weblate-guardianproject-orbot de066268f Translated using Weblate (Hebrew) e1b423e38 Translated using Weblate (Irish) 1d8e3b275 Translated using Weblate (French) 08e51693a Translated using Weblate (Hebrew) f0071a243 Translated using Weblate (Arabic) 0f87a1a91 Translated using Weblate (Chinese (Simplified Han script)) 8ad2684b6 compile against newly released API 37.1 instead of 37.0 70d2b2e97 bump hev-socks5-tunnel to 2.16.0 acc36e815 Merge pull request #1763 from weblate/weblate-guardianproject-orbot be8555705 Translated using Weblate (Irish) 6faa9be4b lint warning in client auth dialog, fixed by inflating view the correct way the hosted services idalog does e923ff583 remove unused drawable resouce ic_launcher_monochrome.xml, the real monochrome alt icon is a mipmap 673ec3cef Removed unused string "an app wants to open a hidden service on port X..." from old netcipher integration 6e77a2844 Remove unused assets introduced in PR #1676, keep the graphical changes for the bottom selector 983c72868 String "I Understand, Start Test" aka R.string.test_risk_consent is now unused after merging in PR #1742, deleting it and its trnaslations fb831eb29 Merge branch 'master' into impr/kindness_mode_ux 8cefdb8a4 Merge pull request #1761 from weblate/weblate-guardianproject-orbot d5e97badb Improved landscape usability for fragment_testing_initial.xml and fragment_testing_confirm.xml. 0640a19ea Merge branch 'master' into impr/kindness_mode_ux 7daf41958 Fixed minor linter warning. 94bb04884 Translated using Weblate (Chinese (Simplified Han script)) a6d54a0b9 Translated using Weblate (Italian) 8ad08e2cd uise kotlin 2.4, clean gradle.properties. last bit of house keeping 2da3a68b0 removed more deprecation warnings b31c0c2e7 removed values-21 directory, it gets merged in always since min api is 24, and it has nothign 86a9e8cec bump kotlin serialization to use kotlin 2.4.10 794d54c15 Removed now deprecated lint config from build.gradle.kts, addressed a few lint issues 14603793d The string hide_apps and secure_your_connection_subtitle had the SAME EXACT string, one was used in XML, the other programmatically d37c2cf5d The string "Choose apps" was included twice, once with a lowercase a, and another as "Choose Apps" I deleted the title string, removing an identical string resources. There is kotlin that capitalizes "Apps" based off locale. Plus, I reused the translation for many locales that had one but not the other, actually localizing the app a fair bit 3d3d1522d ran android lint with stricter settings 98f1c6967 bump android gradle plugin from 9.2.1->9.3.0, for android-application plugin 2846caabc Prefs changes from another branch: 4fd885932 touchup before merging 3de5bfb25 Merge branch 'master' into private-dns 66669ab27 remove translations for strings that were removed in this PR 59b461839 - Fix various UI bugs in snowflake proxy ux improvements - breakout testing dialog into 3 dialogs, the testing dialog strictly handles testing 22a983d05 use proper ... char ef68a910a WiFi -> Wi-Fi ddbdcc138 Removed accidentally checked-in code just used for development. 7c1972d5c Kindness Mode: Reworked declined scene. b77aa08a9 Kindness Mode: Reworked approved scene. cfa659354 Kindness Mode: Reworked testing scene. 66673735b Kindness Mode: Added warning scene. 8f8377f9e Kindness Mode: Added explainer scene. 42f1ab364 Kindness Mode: Reworked initial scene as per design. c7d9cafca Merge pull request #1756 from guardianproject/dependabot/bundler/excon-1.5.0 8ebf6d590 Bump excon from 0.112.0 to 1.5.0 c8586210f Merge pull request #1754 from weblate/weblate-guardianproject-orbot eab711d12 Translated using Weblate (Irish) 51cd0074b Translated using Weblate (Chinese (Simplified Han script)) 2f6944697 Translated using Weblate (Spanish) 0f9347800 set hev-socks5-tunnel to 2.15.0 46cec36b2 Merge pull request #1751 from weblate/weblate-guardianproject-orbot 37d48649f Merge pull request #1750 from meenbeese/warning 1bd764563 Translated using Weblate (Irish) 46703f17e Translated using Weblate (Spanish) ac1c8a40f Fix small warning with unused `i` c7ca12899 fix snowflake proxy issue with region locked areas @n8fr8 identified on scrum b6b7f1a71 properly deal with action status and progress bar 703526ba7 - Consistently style all AlertDialogs with Orbot theme - Required some changes to legacy java activities beyond normal XML tweaks - All AlertDialogs will be subsequently styled by default! 1da897cca Use androidx.appcompat.app.AlertDialog which we should have been using in place of android.app.AlertDialog for some time 1ce728eed add release info for 17.9.5 - May 26, 2026 17.9.4-BETA-2-tor-0.4.9.8-2-g57efded50Orbot 17.9.4 (2.7.0) — Android This release upgrades the core Tor engine, expands proxy and bridge options, and fixes a few connection bugs. Updated Tor - Upgraded to Tor 0.4.9.8, with a refreshed GeoIP database for more accurate country and exit-node selection. Shadowsocks proxy support
More…
- Added a built-in Shadowsocks (Rust) client, so you can route Tor through a Shadowsocks proxy directly from Orbot. - Shadowsocks now works alongside the Meek, obfs4, and WebTunnel pluggable transports. - New "No Proxy" option lets you switch off an outbound proxy without having to clear your saved host or Shadowsocks URL. - Cleaner proxy setup: the configuration field now expects a Shadowsocks Configuration URL, uses the right keyboard for URLs, and drops redundant entries from the proxy-type list. Bridges & circumvention - Refreshed the bundled bridge lines. - Updated IPtProxy to 5.4.2, including a new DNSTT release for better censorship circumvention. - Reorganized the exit-node and DNSTT-supported country lists so it's clear which regions are available. Fixes - Fixed a connection regression when using obfs4 without an outbound proxy. - Entry Nodes are now ignored when a pluggable transport is active, avoiding an invalid Tor configuration. - Orbot now reports itself as active only when Tor is actually running. Translations - Updated translations for Arabic, Albanian, Bulgarian, Catalan, Chinese (Simplified), Greek, Irish, Italian, Japanese, Spanish (incl. Mexico), Tamil, and UK English. Under the hood - Disabled Shadowsocks on x86 devices (unsupported) with a more robust build script. - Bumped hev-socks5-tunnel to 2.15.0. - Build/toolchain updates: Gradle 9.5.1, Android Gradle Plugin 9.2.1, Kotlin Coroutines 1.11.0, and Fastlane. - Improved reproducibility of the GeoIP build. - May 5, 2026 17.9.4-BETA-1-tor-0.4.9.6.2-1-g84015e0a4Release - Tagged 17.9.4 BETA 1 (fd485d625) - Updated to tor-android 0.4.9.6.2 (tor 0.4.9.6) with compileSdk bump (fd02d911e, f54c3d17a) - Updated bridges (84015e0a4, 98e984f76) Build / tooling - Bumped to Gradle 9.5.0 and Android Gradle Plugin 9.2.0 (earlier 9.1.0 → 9.1.1) (3cc66c8f6, 57e0d1dbb, 12d757f3f) - Latest Kotlin + navigation-fragment-ktx patch (5d17726d6) - Fastlane gem updated to 2.233.0; Screengrab tweaks for new AGP test APK path (473f83aa3, b870ce3fc) - Reproducible geoip.jar via Python's zipfile so the artifact only changes when tor's geoip data does (6decfeb50), plus a regression fix on it (6bdc09889)
More…
- Re-enabled versionCode auto-increment for releases (a3678ca47) - Dropped unused deps (Volley, junit.jupiter, leftover gradle deps); Orbot now an application module only, not an android library (32634ffeb, dcb375150, 9c6a70643) Features / fixes - IPv6 bridge regex fix — allows [ and ] so webtunnel addr= works (#1672, 6f0818916) - Listens to STATUS_CLIENT tor events for the new bootstrap fix (b84d0907a) - IPtProxy 5.4.1 with natTypeUpdated event for Kindness mode (2db4fa422, b070bf1bb) - Kindness UI redesign with simpler layouts (044c520e8) - AndroidManifest cleanup — suppress foreground/VPN service policy warnings, data-extraction config for Play (a70aa5ad1) - Restored accidentally removed LocalBroadcastManager dep (0e82e1d18) Suggested apps - Added Accrescent app store, Molly (hardened Signal fork), and Vanadium (GrapheneOS browser); fixed Vanadium app ID (a3da57e04, f227f4bbb) Localization - Lots of Weblate updates: Tamil, Catalan, Albanian, Chinese (Trad/Simp), Polish, Turkish, Italian, Portuguese (BR), Korean, Irish, Japanese, Arabic, Indonesian, English (UK) - Japanese fastlane locale moved to plain ja for website integration (179395039) - Apr 10, 2026 17.9.3-RC-1-tor-0.4.9.6-1-g98e984f7698e984f76 (HEAD -> master) update bridges c793046db (tag: 17.9.3-RC-1-tor-0.4.9.6) update to 1793300100 e66d513e6 (origin/master, origin/HEAD) upgrade tor android to 0.4.9.6 4820e41ba bump IPtProxy to support snowflake 2.13.1, also bump serialization gradle dep to minor relesae c085624b8 Merge pull request #1659 from 0nF1REy/fix-pt-br-translations 82e09bae5 Merge pull request #1660 from guardianproject/dependabot/bundler/addressable-2.9.0 8964252d7 Bump addressable from 2.8.8 to 2.9.0 24a0c17ca fix: correct spelling, grammar and regional consistency in Portuguese (PT-BR) strings fa39ac73f Merge pull request #1655 from guardianproject/agp10-config-cache 1f48c618b Merge pull request #1648 from guardianproject/battery-opt-disable
More…
7ec8d0260 fix typo from PR fd411668e Update battery optimization dialog to give power users an option to silence it a2a294add Merge branch 'master' into battery-opt-disable 43a0a4d5d turn on configuration cache, it works and builds are MUCH faster. closes #1617 8b23c2908 Make the APK renaming and the download bridge @ relesae time gradle tasks compatible with the configuration cache, which is mandatory for the upcoming AGP 10 67296442e importing java.util.* in app/build.gradle coerced a kotlin list in gradle DSL into old school Java list, just explicitly import the two classes 024e4f6cd stop using deprecated and typeunsafe bundleOf in camo dialog 8d678826f build orbot with NDK 29.0.14206865 4b5dcb448 update geoip for tor 0.4.9.6 1605f4756 fix small UI bug around power user schedule exact alarm dialog 387851d1e bump android work dependency 6cfb1fd45 Merge remote-tracking branch 'deltadroid/fix_navbar' a707b9204 Merge pull request #1649 from weblate/weblate-guardianproject-orbot 3d0c786db Fix rounded corner clipping in floating navbar 3bb1223f3 Translated using Weblate (Italian) 67fad7e2c Translated using Weblate (Turkish) db4f6f24b Dialog to disable battery optimizations when using power user mode, fixed bug where failing to setup power user mode kept connect switch set to true 1791f6d88 logic to disable battery optimizations from the settings 72fdd40f2 rename java package 96434a19a Closes #1624, adds a qucik settings tile to send newnym signal cc01a6515 Remove deprecated code from tile service, refactor package dac9f5d15 android lint 8a89799fa bump gradle 9.4.0->9.4.1 f12e50ab9 update kotlin, androidx and rootbeer deps 1fdc3a08c Merge pull request #1644 from weblate/weblate-guardianproject-orbot eaa42eb11 Merge pull request #1645 from guardianproject/dependabot/bundler/json-2.19.2 0ed29e61e Bump json from 2.18.1 to 2.19.2 746b13162 Translated using Weblate (English (United Kingdom)) fe42debb0 Translated using Weblate (Chinese (Simplified Han script)) edc7a2255 Translated using Weblate (Irish) 4e7730756 Translated using Weblate (Spanish) 07b868112 Translated using Weblate (Spanish) 5efd657a1 update built in bridges - Mar 17, 2026 17.9.2-RC-1-tor-0.4.9.5.1-1-g5efd657a1## What's Changed * Translations update from Hosted Weblate by @weblate in https://github.com/guardianproject/orbot-android/pull/1643 5efd657a1 (HEAD -> master, origin/master, origin/HEAD) update built in bridges bca7647aa (tag: 17.9.2-RC-1-tor-0.4.9.5.1) update to 1792300100 bf7997448 Merge pull request #1643 from weblate/weblate-guardianproject-orbot 50ceb9243 Translated using Weblate (Chinese (Simplified Han script)) 5e49d0e5d Translated using Weblate (Persian) 3774db597 update geoip for upcomig RC 1ab2c503f Flow for user to prove they can connect directly to tor before using kindness mode
More…
228cebcf9 Error cases for kindness mode, dont use at all if in certain censored countries, dont use if connected to tor but using a bridge anywhere. hooks into UI. 640276f7a add button to wipe set country, as its actually very hard to clear without setting another coutnry faa5817db disclaimer about bridges on kindness mode screen 897209997 more kindness ui touchups 94277ead9 Custom bridge connect btn doesnt get cut off with LARGE fonts, closes #1638 734efac59 Prevent safe warning in new IgnoreAccentsArrayAdapter from appearing in gralde builds, add top level gradle config to explicitly log all deprecated and unchecked operations when assembling 2dafe41de Fixes for the upcoming AGP 10 b0452d5bb bump to new iptproxy with dsntt fixes 064b225f3 Fix abi specific versionCode generator logic 55091cd6b update built in bridges **Full Changelog**: https://github.com/guardianproject/orbot-android/compare/17.9.2-BETA-1-tor-0.4.9.5.1...17.9.2-RC-1-tor-0.4.9.5.1 - Mar 10, 2026 17.9.2-BETA-1-tor-0.4.9.5.1-2-g064b225f3## What's Changed * Updated AGP and IPtProxy by @tladesignz in https://github.com/guardianproject/orbot-android/pull/1628 * Improved DNSTT support for challenged countries. by @tladesignz in https://github.com/guardianproject/orbot-android/pull/1629 **Full Changelog**: https://github.com/guardianproject/orbot-android/compare/17.9.1-RC-1-tor-0.4.9.5...17.9.2-BETA-1-tor-0.4.9.5.1
- Feb 16, 2026 17.9.1-BETA-1-tor-0.4.9.5-1-gfa87282a4fa87282a4 (HEAD -> master) update bridges 357f7486e (tag: 17.9.1-BETA-1-tor-0.4.9.5, origin/master, origin/HEAD) update tor-android to 0.4.9.5 (dev/bitmold fork version for now) 39c977c9c Merge branch 'master' of github.com:guardianproject/orbot 05c4b905d update geoip for tor 0.4.9.5 52020a1c4 ran android lint for new release 7660776cf bump androidx-activity dep to minor release 1.12.4 7b8400f82 Merge pull request #1574 from weblate/weblate-guardianproject-orbot 16e2cad8a updated fastlane after merging in dependabot PR for faraday ruby dependency in fastlane. Github would complain that there was a CVE in the project when committing. Now it shouldnt 8426a5b9b Merge pull request #1599 from guardianproject/dependabot/bundler/faraday-1.10.5 f647d56cc Translated using Weblate (Portuguese (Brazil))
More…
cc36947c6 Translated using Weblate (English (United Kingdom)) cf42c5136 Translated using Weblate (Russian) 17357a613 Translated using Weblate (Russian) c77fd3517 Translated using Weblate (Russian) 1933e3e82 Translated using Weblate (Russian) aa30f33a4 Translated using Weblate (Russian) 831fddb9c Translated using Weblate (Tamil) 54cf206cc Translated using Weblate (German) 328d4f38b Translated using Weblate (German) 743778fa9 Translated using Weblate (German) 137e62118 Translated using Weblate (German) 5d9fb9819 Translated using Weblate (Chinese (Simplified Han script)) c798ddde9 Translated using Weblate (Japanese) 1e57378a2 Translated using Weblate (Italian) a112ec3b8 Translated using Weblate (Bulgarian) 763e2ab92 Translated using Weblate (Persian) 178d929e3 Translated using Weblate (Irish) 53131b385 Translated using Weblate (Turkish) 320876237 Bump faraday from 1.10.4 to 1.10.5 9c51fe2fe bump kotlin, kotlin serialization from 2.3.0->2.3.10 77adba5d1 Merge remote-tracking branch 'tla/master' a7289cc78 Merge pull request #1589 from guardianproject/always-on-fix 88d9b09a5 Issue #1506: Remove custom front domain. 763e9442d Merge remote-tracking branch 'upstream/master' 1c78b4738 update fastlane to latest gem 7ec7fceae bump fastlane gem 0ce88bc91 convert hev-socks5-tunnel JNI wrapper class to kotlin 4003600c7 added comment explaining onRevoke() changes per tla's suggestion 3339e0074 correctly handle vpnService's onRevoke method(), which fires off when another VPN app takes the stage a92ce9268 Touchups after testing 4010dbe77 added a dialog explaining the error, with options to open VPN settings eb4811653 Logic for detecting if there's an always-on VPN, be it the legacy Android system VPN, or another VPNService, that is preventing Orbot VPN from starting. Needs UI work... 5f6b31e4a Merge pull request #1587 from guardianproject/qr-scanning fcaac101a Merge remote-tracking branch 'upstream/master' 8e5c9afe3 Found a better home for the "builtin" constant. 1eb69ac22 Found a better home for the "builtin" constant. 5fcd943aa update ABI version code logic to new gradle variant API, the version name part of the build process will break in new summer 2026 tools 24b6faa9f Some more work to advance orbot to new gradle standards, cant rename android.applicationVariants which is still deprecated (in the new framework its easy to assign a custom verison number for each ABI, but VERY CUMBERSOME to rename the output APK, so keep this deprecated approach for now 67dcb5626 Didn't mean to commit this to master... 2c4691323 Logic for detecting if there's an always-on VPN, be it the legacy Android system VPN, or another VPNService, that is preventing Orbot VPN from starting. Needs UI work... 616402666 Small fix for #1572, DNSTT Confirmation Dialog would vanish on device rotation facc22cd1 Fix for unlikely race condition causing NPE in SnowflakeProxyWrapper, if it got killed right after starting, it might become null outside of the coroutine. Closes #1585 d375c1cf2 Remove outdated intentintegrator code 75275d31e update LICENSE for quickie 19b61bae6 First pass at quickie QR Code library for bridges 64f33faba remove multiple hardcoded Iran "IR" country codes, create list of countries which enables DNSTT UI flow 088bc9e47 kotlin format ConfigConnectionBottomSheet 3660574eb Merge branch 'master' into tla/gp_moat 6042a3481 House keeping define constant for API value thats hardcoded as a string literal in mulitple places, remove lambda from parens ebdc78542 update built-in bridges - Feb 6, 2026 17.9.0-BETA-3-tor-0.4.8.22-1-gebdc78542ebdc78542 (HEAD -> master) update built-in bridges a189b1432 (tag: 17.9.0-BETA-3-tor-0.4.8.22) update version code to 1790200300 54d7ee532 (origin/master, origin/HEAD) Merge branch 'master' of github.com:guardianproject/orbot 123ba3ded minor bug fixes from jan28 2026 release of jetpack androidx dependencies 377c154c4 Merge pull request #1580 from gitwormq/fix/client-auth-independent-of-hosting cf6d9191d Fix: v3 client auth not applied unless onion service hosting is enabled 78f14cad2 update built in bridges d9cca7260 update versioncode
- ebdc78542 (HEAD -> master) update built-in bridges a189b1432 (tag: 17.9.0-BETA-3-tor-0.4.8.22) update version code to 1790200300 54d7ee532 (origin/master, origin/HEAD) Merge branch 'master' of github.com:guardianproject/orbot 123ba3ded minor bug fixes from jan28 2026 release of jetpack androidx dependencies 377c154c4 Merge pull request #1580 from gitwormq/fix/client-auth-independent-of-hosting cf6d9191d Fix: v3 client auth not applied unless onion service hosting is enabled 78f14cad2 update built in bridges d9cca7260 update versioncode
- Mainlining DNSTT support and updating Tor... thanks @tladesignz and @bitmold for the quick work! 78f14cad2 (HEAD -> master) update built in bridges d9cca7260 update versioncode 20a41de81 (tag: 17.9.0-BETA-2-tor-0.4.8.22, origin/master, origin/HEAD) update version to 1790200200 d1310cf0e update DNSTT bridges 471c9afe7 Merge branch 'master' of github.com:guardianproject/orbot 6b327561b update tor-android to 0.4.8.22 c0f7848e5 Merge pull request #1577 from tladesignz/pt_sheet_cleanup c56d4ce61 remove translatable:false on DNSTunnel str
More…
8238ad848 Clean up margins/paddings on PT sheet. 94e974b47 update geoip edd634d87 Redid screenshots in English, Arabic, Farsi, and Spanish - fixed broken screenshots after some UI redesigns ce4fd6f49 use 2026 instead of 2025 in LICENSE 7b62a32d4 remove commented out var, use TorService.VERSION_NAME instead of redefinding it 353692742 Merge pull request #1572 from tladesignz/dnstt 6b6cfcd1d Restore original logic. 2193c2e38 Don't show country list on focus, because it can crash older Androids on rotation. Also, it's a UX disaster on older Androids, because it immediately opens the country list, hence covers the rest of the UI. cae61473e Align Not Sure? text with new country selector 940631ba3 Merge branch 'master' into dnstt 1f0488f32 Allow dnstt bridge lines for custom bridges. 1f9323281 update bridges - e1f991095 (tag: 17.8.0-RC-3-tor-0.4.8.21) update to 1780300300 b6bfc6c70 (origin/master, origin/HEAD) tor-android updated to 0.4.8.21.2 and related fixes implemented to use new ACTION_STOP public variable c8e3858bc Merge branch 'master' of github.com:guardianproject/orbot 5b0343372 added commented out play store in vpn suggestions apk 112f3fba2 put hev socks5 tunnel back to 2.14.3 a2cbf92a1 Merge pull request #1571 from weblate/weblate-guardianproject-orbot e2f580022 Translated using Weblate (Ukrainian) 462972721 Translated using Weblate (English (United Kingdom)) 6055ed5fe Translated using Weblate (Indonesian) bfc43bcdb update built-in bridges
More…
fd9fd3a74 (tag: 17.8.0-RC-2-tor-0.4.8.21) updated to 1780300200 24e3e497c adjust app icon display to be slightly bigger and with spacing - makes it easier to tap, for apps that support the right intent (browsers) 01ad3828c Merge branch 'master' of github.com:guardianproject/orbot 0a3b0464a Merge pull request #1570 from weblate/weblate-guardianproject-orbot ce1265cae Translated using Weblate (Chinese (Simplified Han script)) 5d149f1b2 Translated using Weblate (Tamil) 1729b4fe6 (tla/master) Revert "non-deprecated way to calculate bottom sheet height" bfb849b06 lint fa8ed444a Remove unused string resources from app + weblate. These stirngs stopped being used after the main UI was re-done in December - yesterday I removed dead code that was left in the app referencing them so they can safely go. aaefde25f remove uneeded @JvmStatics 145c2087b non-deprecated way to calculate bottom sheet height 7e55ed79b re #1563 limit length on port settings 489e96b4e Fixed LONGSTANDING bug on API33+ where locales with regions, ie Mexican Spanish wouldnt be respected, removes many invocations of deprecated java.util.Locale constructor 3cb1f272a polish earlier #1563 work 7ecb78180 Re #1563, when we switched to androidx Pref library, the inputtype flag became ignored from XML. add logic to AbstractPreferenceFragment to help sanitize values by restricting IME inputtype e9e0f2087 Remove lots of dead code from the UI rewrite of connect fragment that happened in December. Use a rounded drawable on the new switchcompat matching the older button f469fba7d Closes #1563 URI parsing crash when outbound proxy config invalid b7b3fc021 Use OrbotService instead of TorService in OrbotService logs, makes debugging confusing 1296d2c10 bump kotlin serialization lib 1.9.0->1.10.0 b6a8011ab Merge pull request #1566 from weblate/weblate-guardianproject-orbot 0d6c5b7d1 documented new logging changes in README per tla's suggestion eaee1177b Translated using Weblate (Dutch) c17b4f913 Translated using Weblate (English (United Kingdom)) b1a245a18 Translated using Weblate (Persian) 5552b4be1 remove -android.enableAppCompileTimeRClass=false after verifying we can still build our automated tests. this will break builds in AGP 10 41e759c6a can remove nonFinalResIds from gradle.properties, itll break builds on AGP 10... basically this means you cant use R.id.blablabla in a switch statement, but can in an if or when statement 714aeaae9 lint check 969a9ed96 for #1565 should only include 32 + 64 bit arm ABIs, no intel 5f9bf1719 Added extension function for fragments with IO/API threads to detect if theyve been detached. Closes crash on app selection screen #1564 06643eb96 added mouse scrolling to tmux script 4cc15f191 Added shell script to tmux logs from both app + tor processes via adb logcat 61e072105 add android.generateSyncIssueWhenLibraryConstraintsAreEnabled=false to gradle.properties 412ab33c2 should close #1557 in which bottom bar is sometimes off center on certain screen densities/in certain locales 9cb1cdfb6 remove more trivial ./gradlew assemble warnings 8470ce8ef realized locales with regions werent setting, remove deprecated locale constructor on regionless-locale for now... reduces flood of gradlew warnings 9f711303f remove useless elvis operator from AppManagerFragment d8707f4c1 upgrade to iptproxy 5.0.0 bb5d7a8e1 Use hardcoded tag in Transport exception logging, adb logcat gives weird kotlin reflection unavailable error on these exceptions 36affed47 Added comments in OrbotService.java for confusing Kotlin call into SmartConnect.handle... 28d7a2d30 Merge pull request #1561 from weblate/weblate-guardianproject-orbot 1215e811b Translated using Weblate (English (United Kingdom)) - fd9fd3a74 (tag: 17.8.0-RC-2-tor-0.4.8.21) updated to 1780300200 24e3e497c (origin/master, origin/HEAD) adjust app icon display to be slightly bigger and with spacing - makes it easier to tap, for apps that support the right intent (browsers) 01ad3828c Merge branch 'master' of github.com:guardianproject/orbot 0a3b0464a Merge pull request #1570 from weblate/weblate-guardianproject-orbot ce1265cae Translated using Weblate (Chinese (Simplified Han script)) 5d149f1b2 Translated using Weblate (Tamil) 1729b4fe6 Revert "non-deprecated way to calculate bottom sheet height" bfb849b06 lint fa8ed444a Remove unused string resources from app + weblate. These stirngs stopped being used after the main UI was re-done in December - yesterday I removed dead code that was left in the app referencing them so they can safely go. aaefde25f remove uneeded @JvmStatics
More…
145c2087b non-deprecated way to calculate bottom sheet height 7e55ed79b re #1563 limit length on port settings 489e96b4e Fixed LONGSTANDING bug on API33+ where locales with regions, ie Mexican Spanish wouldnt be respected, removes many invocations of deprecated java.util.Locale constructor 3cb1f272a polish earlier #1563 work 7ecb78180 Re #1563, when we switched to androidx Pref library, the inputtype flag became ignored from XML. add logic to AbstractPreferenceFragment to help sanitize values by restricting IME inputtype e9e0f2087 Remove lots of dead code from the UI rewrite of connect fragment that happened in December. Use a rounded drawable on the new switchcompat matching the older button f469fba7d Closes #1563 URI parsing crash when outbound proxy config invalid b7b3fc021 Use OrbotService instead of TorService in OrbotService logs, makes debugging confusing 1296d2c10 bump kotlin serialization lib 1.9.0->1.10.0 b6a8011ab Merge pull request #1566 from weblate/weblate-guardianproject-orbot 0d6c5b7d1 documented new logging changes in README per tla's suggestion eaee1177b Translated using Weblate (Dutch) c17b4f913 Translated using Weblate (English (United Kingdom)) b1a245a18 Translated using Weblate (Persian) 5552b4be1 remove -android.enableAppCompileTimeRClass=false after verifying we can still build our automated tests. this will break builds in AGP 10 41e759c6a can remove nonFinalResIds from gradle.properties, itll break builds on AGP 10... basically this means you cant use R.id.blablabla in a switch statement, but can in an if or when statement 714aeaae9 lint check 969a9ed96 for #1565 should only include 32 + 64 bit arm ABIs, no intel 5f9bf1719 Added extension function for fragments with IO/API threads to detect if theyve been detached. Closes crash on app selection screen #1564 06643eb96 added mouse scrolling to tmux script 4cc15f191 Added shell script to tmux logs from both app + tor processes via adb logcat 61e072105 add android.generateSyncIssueWhenLibraryConstraintsAreEnabled=false to gradle.properties 412ab33c2 should close #1557 in which bottom bar is sometimes off center on certain screen densities/in certain locales 9cb1cdfb6 remove more trivial ./gradlew assemble warnings 8470ce8ef realized locales with regions werent setting, remove deprecated locale constructor on regionless-locale for now... reduces flood of gradlew warnings 9f711303f remove useless elvis operator from AppManagerFragment d8707f4c1 upgrade to iptproxy 5.0.0 bb5d7a8e1 Use hardcoded tag in Transport exception logging, adb logcat gives weird kotlin reflection unavailable error on these exceptions 36affed47 Added comments in OrbotService.java for confusing Kotlin call into SmartConnect.handle... 28d7a2d30 Merge pull request #1561 from weblate/weblate-guardianproject-orbot 1215e811b Translated using Weblate (English (United Kingdom)) - 1e0a8095 (HEAD -> master, tag: 17.8.0-RC-1-tor-0.4.8.21) update to 1780300100 f29afef3 Merge branch 'master' of github.com:guardianproject/orbot 88a7407b (origin/master, origin/HEAD) improve rnedering of torified apps on small screens 7af4813b remove old debugging logs 50e8b4ad suggest duckduckgo apk bee00667 fix bridge update logic to use timestamps from git log 0295270a bump hev-socks5-tunnel to minor release 2.14.2 which contains andorid bug fixes https://github.com/heiher/hev-socks5-tunnel/releases/tag/2.14.2 c85edc3a remove toplevel jitpack repository from settings.gradle, as we no longer need it after rewrite in #1560 95829de7 safely remove soon to be deprecated assignments in gradle.properties of -android.sdk.defaultTargetSdkToCompileSdkIfUnset and android.usesSdkInManifest.disallowed cc1f7507 Rewrote Small app icon name changer library in kotlin against AndroidX, the github library we were using depended on the old android support libraries, which we cant support when we are mandated to eventually update to android gradle plugin v10 (on v9.2 right now...)
More…
8d3b3d96 update geoip, geoip6 files adb2df34 added libyaml dependency to fastlane screengrab instruction readme 0a6e4f1c remove redundant warning suppression from TorConfig.kt fdf5d6eb bump agp from 8.13.2 -> 9.0.0 4b42bf3e Merge pull request #1559 from weblate/weblate-guardianproject-orbot ab3ee53f Translated using Weblate (French) 6cf032cf Translated using Weblate (French) aabd6988 Translated using Weblate (French) 65a3f798 Merge pull request #1558 from weblate/weblate-guardianproject-orbot d6594b4b Translated using Weblate (Italian) f07be780 Translated using Weblate (Italian) f56ce681 Translated using Weblate (Bulgarian) e93ccf93 Translated using Weblate (French) 8a309ede mnaually update built in bridge json for now, have fix for gradle script coming soon 07d9d7a2 Merge pull request #1556 from weblate/weblate-guardianproject-orbot 2719be9d Translated using Weblate (German) 182daadb Merge pull request #1555 from weblate/weblate-guardianproject-orbot 49a0a65f Translated using Weblate (Japanese) 5d4a272b Translated using Weblate (Japanese) 90f33977 Translated using Weblate (Japanese) f6893bcd Translated using Weblate (Irish) 03fdc704 Translated using Weblate (Swedish) 8826e4d9 Merge pull request #1552 from weblate/weblate-guardianproject-orbot 7cf505ae Translated using Weblate (Ukrainian) 20cfc81b Translated using Weblate (Chinese (Simplified Han script)) ff2d29e5 Update copyright year to 2026 1f59bac6 Fix #1544 landscape on connect screen works good on phones and tablets again 20f694e0 remove wrong TODO comment about RTL strings - 0cd16dd9 (HEAD -> master, tag: 17.8.0-BETA-1-tor-0.4.8.21) update version to 1780200100 9b688801 (origin/master, origin/HEAD) fix alt icon rendering and Tetras bug for #1504 45b6254e Merge branch 'master' of github.com:guardianproject/orbot 4586a066 Merge pull request #1550 from weblate/weblate-guardianproject-orbot f7b51c8f Translated using Weblate (English (United Kingdom)) b775e9bf used IDE suggested proguard file, addresses warning in build.gradle.kts e5a5dae9 suppress VpnService IDE warning in OrbotService, just wants you to read the dos and donts 7885105e more unused resources gone db6bf1a4 fix UI bug in new throttle, the timer would restart when you swiped to another fragment and back d8932f2e remove no longer needed ports not set string after work in 971d10de8ab461ca495eb7c61f102fe6824ffc4e
More…
971d10de fix ae541ad615b199a73793ceb55194466a727b605e by adding support for right to left UIs, such as Farsi, add string resources 498bca58 Now that OrbotService and app are in one package, we dont need to redefine values in TorService 29c2f17f new 'Stop VPN'string was hardcoded, add it as a resource, remove large blocks of commented out code 27939d9c rework throttling UI, disable button visually immediately when its clicked not when you click it a seond time. put a loading msg there to communicate something is happening to the user 70cac09b Merge branch 'master' into deltadroid/limit_connect 24b67d9e Merge pull request #1549 from weblate/weblate-guardianproject-orbot b1b2ab60 bump junit-jupiter dep 9be98481 Translated using Weblate (Japanese) f8f20e98 Translated using Weblate (Japanese) f41953ed Translated using Weblate (Italian) c4d2a600 Translated using Weblate (Italian) 9b2210f3 Merge pull request #1546 from syphyr/bold_exit 1a1501d5 Use rate-limited connection toggle a3666bf6 Merge branch 'master' of github.com:guardianproject/orbot 69f08a69 Use bold text for exit button 985577b7 Merge pull request #1542 from weblate/weblate-guardianproject-orbot 2a001e7e Translated using Weblate (German) b299495c Translated using Weblate (Indonesian) - - some BIG ux change ideas to improve understanding of connection state, and make UI more stable/less dynamic - big improvements in stability of Orbot/TorService, less crashing and better recovery from crashes - updated IPtProxy 58998a38 (origin/master, origin/HEAD) make the font smaller to fit a bit more text 551ce8f2 add spanish and Farsi localizations for new status messages 65a45419 basic additional of set_transport string using machine translation 3a1787b0 make sure to restart tor if it is running when you change the transport config 390c91c5 tweak layout to work better for various display font sizes 0e8fd2f0 use new switch toggle to reduce issues with button state
More…
2a9dd6c6 improve logic for stop/destroying self to better recover from Tor issues 25705b24 switch to toggle instead of buttons to simplify connection 05a8ce03 Merge pull request #1525 from syphyr/set_layout bd085926 Merge pull request #1524 from syphyr/direct_string 7b924134 Set layout before sending intent 87385b6c Fix string for direct connection 4fd80c80 Merge branch 'master' of github.com:guardianproject/orbot 5dae965f (dev_feature_custom_status) add more status for bootstrapping e1771eda sometimes the transport port would be 0 which is not allowed ad7f940c add more status types 56a41040 Merge pull request #1521 from guardianproject/dependabot/bundler/aws-sdk-s3-1.208.0 d368bd68 Merge pull request #1522 from syphyr/stop_tor 7e68af48 Do not start Tor twice in power user mode 28ea4c84 Bump aws-sdk-s3 from 1.203.1 to 1.208.0 18c6e526 (origin/dev_feature_custom_status) parse log output and show custom strings that can be localized de70525a Merge pull request #1512 from syphyr/merge_tag 83757673 Merge branch 'tladesignz-feature/service_process' 947f7efc (tladesignz-feature/service_process) UX changes for improved access to log status and options 9c62e9ed update to tor 0.4.8.21.1 with latest workqueue tweaks 1eff073e Merge branch 'feature/service_process' of github.com:tladesignz/orbot into tladesignz-feature/service_process cb9fba50 Merge branch 'master' of github.com:guardianproject/orbot 4f011bfb Merge tag '17.7.1-RC-1-tor-0.4.8.21' into master c48124f6 Run OrbotService and TorService in another process. ff93d351 Issue #1508: Fixed crash on older Android versions. d4811153 Issue #1508: Fixed crash on older Android versions. edfa0662 bump androidx-activity dep to minor release 02635065 Merge pull request #1503 from tladesignz/fix/notification_actions c9f4e4d2 Fixed notification action buttons. 443dbb07 update built-in bridges - 443dbb07 (HEAD -> master) update built-in bridges e4fae8e8 (tag: 17.7.1-RC-1-tor-0.4.8.21) update to 1771300100 a7bf018a (origin/master, origin/HEAD) update tor-android to 0.4.8.21 3982977b switch hev-socks50tunnel's log level to warn instead of debug 291e4320 format lyrebird version af2b1e5f cleanup: trivial compiler warnings 1e4fb379 bump hev-socks5-tunnel 2.14.0 -> 2.14.1 994209cb meant to include this file in previous commit a4e61a1b Fixed start on boot regression reported in #1502, added checks in on boot receiver for intent action to restrict what can start orbotservice to legit boot events 76a8ae4b show some log messages in notification (something we need) but dont show the debug printouts re commit 039b497
More…
726fba7c Revert "Migrate to Material2 + refactor choose apps layout" cd14d9a9 upadte strings from WIP ui redesign, pushing for translators 32187984 UI fix for material 2 refactor in #1497, added a small bottom margin 78b11da8 Merge remote-tracking branch 'meenbeese/sort-apps' 990c5d46 update gradle wraper to 9.2.1, rename geoip script 465a89a1 Merge pull request #1499 from syphyr/merge_release - fae5c7b5 (HEAD -> master, tag: 17.7.0-RC-3-tor-0.4.8.19) updaet to 1770300300 039b497c small tweaks for service and tor deamon stability improvements 15eafb23 make sure custom bridges "connect" works c169eddb (tag: 17.7.0-RC-2-tor-0.4.8.19) update to 1770300200 v17.7.0 RC 2 (tor 0.4.8.19) 86aee1fe (origin/master, origin/HEAD) Merge pull request #1493 from guardianproject/feat_ux_smartconncet af8f3ba0 (origin/feat_ux_smartconncet, feat_ux_smartconncet) fix toolbar for camo mode 46dffaac add toolbar and logic back into fragments to support up UX 4eba9768 move smartconnect to connect fragment list where it should be 7d657816 Automate builtin-bridges.json fetch in Gradle d88fdb12 update readme
More…
757d793a Final set of screenshots is 43 loacles: ["ar", "az", "bg", "ca", "cs", "de", "de-DE", "el", "en-US", "en_GB", "es", "es-MX", "es_CU", "et", "fi", "fr", "fr-FR", "ga", "he", "hi", "id", "it", "ja", "ko-KR", "lv", "nb_NO", "pl", "pt", "pt_BR", "pt_PT", "ro", "ru", "sk", "sl", "sq", "sr", "sv", "ta", "tk", "tr", "uk", "vi", "zh_Hans"] f4f92b81 somehow korean screenshots ko-KR got replaced with ko locale, fixed and reran script for korean screenshots c00d24cc missing choose apps screenshot on english,f arsi and french d531d352 rest of screenshots, ruby changes 7be73bc4 screenshots for all locales, except choose apps 50037f77 forgot to commit cd5799d0 add comment in README about HTML page fastlane screengab makes, gitignore it. 8ced2082 update fastlane script file, and readme after tweaking it for latest batch of screenshots 58891bc2 added espresso test to capture new choose apps screen, renamed other screenshots 8931b222 updated fastlane readme after getting things setup on a new machine. added a rnenv config file to mark we want ruby v3.4.7 for fastlane in orbot 1008d4c3 removed unused string resources f7c051df Merge pull request #1486 from weblate/weblate-guardianproject-orbot 7de255cd Merge pull request #1483 from guardianproject/activity_ui fe66cfac Switched from "meek-azure" to "meek" with built-in bridges, as it was decided to rename that property. b245df1c Translated using Weblate (Italian) 22917e36 Merge remote-tracking branch 'deltadroid/gradle_920' a8939627 Merge branch 'master' into activity_ui 8af088f9 Update to Gradle 9.2.0 3a31ff56 moved util package, which used to live in OrbotService module, to be a top level package since it now longer needs to be under org.torproject.android.service 526f6315 fix bug where snowflake proxy wouldnt turn off when non-Orbot vpn is running, found when investigating #1471 d79817a8 RM'd even more unused graphical resources from redesigns fa8021bf update geoip(6) d201b896 more UI gradient/color tweaks, make things consistent across screens 8029aa6a add back title bar to settings now that settingsfragment isnt an activity f67e13c5 can remove SettingsActivity now that the unit test to screenshot the settings screen works again 134d76c8 smart connect start button looks broken on smaller screens 4dc0853c replace app manager activity with fragment 5298acb0 removed settings activity, add camo and settings to nav graph. remove lots of state keeping logic from orbotactivity we dont need anymore 57a1122f enableEdgeToEdge() was only called on main activity, moved to subclass 22812633 remove android:launchMode from activity-aliases in manifest, the system ignores it feb0c55a more orbie bugs, clicking on her does nothing when theres no internet, and starting immediately switches to start animation, instead of going into on mode then switching to starting once the starting tor status is received 49efcccc redundant background paint on exit node country selection layout da493b2c fix annoying lint warnings on calls to printstacktrace in java 51dda459 rm'd more unused graphics c36de812 old orbot is off graphic was still used in layout, but replaced at runtime with orbieoff. removed it and other vestigial graphics not used in app 491911b1 remove some unused string resources b01bb920 CLEANUP: lint said center gradient color was unused, was defined as center, so use center color but point center color to be the value of start cf8f9478 bump hev-socks5-tunnel 2.13.0 -> 2.14.0 a1d51cc6 ran android lint on recent changes, fix small warnings and code cruft 468ecd98 update android gradle plugin + kotlin; update dependencies with new minor releases 17987f63 Merge pull request #1477 from weblate/weblate-guardianproject-orbot 26173ec5 Translated using Weblate (Indonesian) 4bc43af9 Translated using Weblate (French) f6892db7 Translated using Weblate (English (United Kingdom)) 5ac01fd5 Translated using Weblate (Bulgarian) 12848b7c Merge pull request #1475 from weblate/weblate-guardianproject-orbot 9ed96737 Translated using Weblate (Irish) 639a98fb Translated using Weblate (Chinese (Simplified Han script)) b2ab95d9 Translated using Weblate (Ukrainian) 9e3257be Translated using Weblate (Persian) c2d79b65 Translated using Weblate (Bulgarian) 449c7b6a Translated using Weblate (Romanian) 32cd237d Translated using Weblate (Croatian) 36c21b54 Closes #1464 swiping back on settings closes settings ~ dont add root settings fragment to backstack, just the subscreens (kindness mode, camo, etc) 4b66c1a2 applied missing gradients from #1472 across the rest of app c669d1a3 tor was restarting unnessarily when app saved order changed but the same set of apps selected. fix with hashset equality check before pref write here c10b94e4 got rid of buggy old activity for result logic, if the app manager activity sees that theres an app change, restart the vpn if its running 150f3ff1 populate selected apps first in UI, display notification if they changed when user closes screen 783fe8a0 remove broken toolbar save feature from appmanageractivity, just save on close 078af14a clear app search textfield when theres text 1f967df9 added function to normalize search quieries when searching for apps with accent marks 0170856a Fix duplicate bug with app manager activity reworking in #1259, renamed variable uiList to be more clear, added small top margin to new search bar 88a2c430 (origin/meenbeese_search) merge error 3b34c8c7 Merge branch 'master' into HEAD 6f042a02 Merge pull request #1472 from guardianproject/feat_design_updates 7eaa242c (origin/feat_design_updates, feat_design_updates) icon and design updates to match new brand guidlines and iOS 6396104d Merge pull request #1470 from weblate/weblate-guardianproject-orbot 94c07954 Translated using Weblate (Spanish) 6e7faea9 fix typo in variable name from previous commit 5225cae1 fixes bug #1457 with snowflakeservice possibly getting a network event before the notificaiton channel was initialized 906c9e37 Merge pull request #1443 from ixiumu/master d225bf3f Merge pull request #1465 from weblate/weblate-guardianproject-orbot 6ca71ac7 Translated using Weblate (Japanese) 7e309355 Merge pull request #1463 from weblate/weblate-guardianproject-orbot 2e95e1a9 Unified custom bridge validation regex. ba3b60b4 Translated using Weblate (Catalan) eab8f10c Merge pull request #1460 from weblate/weblate-guardianproject-orbot 7fdd1913 Merge branch 'master' into search-bar 7de67237 ran linter, found crash in intentintegrator using the string .isEmpty method on API 34 and below so switched to old fashioned TextUtils.isEmpty 683f900f Translated using Weblate (Italian) 52ddf86e Merge pull request #1454 from syphyr/java_25 47ef0809 Merge pull request #1452 from syphyr/reduce_cycles 57b960d0 Merge branch 'master' of github.com:guardianproject/orbot fcd54e2f Merge pull request #1456 from weblate/weblate-guardianproject-orbot - 9b9ec591 (HEAD -> master, tag: 17.7.0-RC-1-tor-0.4.8.19) update version code to 1770300100 17.7.0 RC 1 e672924b update to tor-android 0.4.8.19 02ae1cda Merge branch 'master' of github.com:guardianproject/orbot 6b266c6c (origin/master, origin/HEAD) Merge pull request #1453 from weblate/weblate-guardianproject-orbot d67be984 Translated using Weblate (Irish) 0fca6a5a Translated using Weblate (Chinese (Simplified Han script)) 203b0e73 Translated using Weblate (Ukrainian) 67977e08 Translated using Weblate (Indonesian) fc2134ac Translated using Weblate (English (United Kingdom)) 44df7a10 Translated using Weblate (Bulgarian)
More…
f965ba40 Translated using Weblate (Italian) - df7c4532 (HEAD -> master, tag: 17.7.0-BETA-1-tor-0.4.8.18) update to 17.7.0-BETA-1-tor-0.4.8.18 bdbe1d46 (origin/master, origin/HEAD) update to tor android 0.4.8.18 6dc90886 Merge pull request #1451 from weblate/weblate-guardianproject-orbot 9d258a42 Merge pull request #1450 from tladesignz/conf-improvement 87b707db Translated using Weblate (Japanese) ea3d4dce When doing smart connect, don't restart Tor, but reconfigure instead. 25c00f10 Merge pull request #1449 from weblate/weblate-guardianproject-orbot cab24fbb Improved proxy settings UI. Only allow valid protocols. 846d1a36 Improved proxy support: Only pass valid proxy conf to Tor. Pass proxy conf to Lyrebird, too! 712d18f8 Translated using Weblate (Romanian)
More…
706929ca Merge pull request #1447 from weblate/weblate-guardianproject-orbot acf12438 Translated using Weblate (Russian) 8700fbc2 Merge pull request #1445 from guardianproject/nonblocking_vpnservice 9dec64e5 Merge pull request #1446 from weblate/weblate-guardianproject-orbot 17ad3b2b Translated using Weblate (Chinese (Traditional Han script)) ca725409 Translated using Weblate (Vietnamese) 90b6067e Translated using Weblate (Ukrainian) 3eaa783a Translated using Weblate (Turkish) 91c2da5f Translated using Weblate (Tamil) 95f72dbc Translated using Weblate (Albanian) 295c2abd Translated using Weblate (Slovenian) f4991502 Translated using Weblate (Russian) f991ae6d Translated using Weblate (Russian) 7f15ca67 Translated using Weblate (Portuguese (Brazil)) 7b27493c Translated using Weblate (Polish) bbe227cd Translated using Weblate (Korean) 7f69f6db Translated using Weblate (Icelandic) a005a1ce Translated using Weblate (Indonesian) 082a036b Translated using Weblate (Finnish) 3a5b5dee Translated using Weblate (Persian) f6e04bca Translated using Weblate (Estonian) 20efe7cd Translated using Weblate (Spanish) 6ee0d0b9 Translated using Weblate (Greek) c7d4e094 Translated using Weblate (German) f2ed952e Translated using Weblate (Latvian) b17e531f Translated using Weblate (Welsh) 139b1b28 Translated using Weblate (Czech) 24419369 Translated using Weblate (Páez) 660d4ae8 Translated using Weblate (Bulgarian) 7838b33f Translated using Weblate (Irish) aa9d05bf Translated using Weblate (Chinese (Simplified Han script)) 5eb9b02c (origin/nonblocking_vpnservice) make OrbotService use VpnServices nonblocking defaults 1521f470 Merge pull request #1444 from weblate/weblate-guardianproject-orbot f7870726 Translated using Weblate (Irish) e8c7cf5d Translated using Weblate (Chinese (Simplified Han script)) 50cb8a6a removed more cruft from OrbotVpnManager 3348531c Merge pull request #1352 from guardianproject/hevsocks 9891061d Merge branch 'master' into hevsocks 5af17331 bump minor android library deps, removed unused dependency definitions bf71a6fd change text from go-tun2socks to hev-socks5-tunnel in about dialog 37b4d6a9 build hev-socks5-tunnel in release instead of debug mode ea345a7f Improved README.md. Removed stuff which became superfluous with the change to Gradle externalNativeBuild. aaa67f4d set hev-socks to 2.13.0 release, was on their main branch bc901d18 Make ndk-build part of gradle/Android Studio build process, this was lost in rebase 1a110a49 lingering files 45701702 Fixed oopsi. cbb601f7 Cleaned up constants. 17c04c4c Removed now unused DNSResolver. e48a82de Updated build script. afa1f72d Removed now useless gitignore entries. 63f833fa Removed hev-socks5-tunnel submodule from old location. 13290366 Remove OrbotLib and directly use iptproxy 4.2.2 from mavencentral a2f4ac74 libpcap dependencies (core + factory) e19b8b0e Changes needed to build after merging master 0a190707 Merge branch 'master' into hevsocks 3b9f83f8 Merge pull request #1442 from tladesignz/master e8abf050 Fixed setting exit node to a specific country. 68ebda3f Added build instructions. 2dbba19b Removed obsolete code. d78b8fc5 Updated hev-socks5-tunnel to latest version 2.13.0. Leverage new mapdns feature. ca207246 android lint 239d84df consolidated local string utility functions to one kotlin object bc081efe Merge remote-tracking branch 'weblate/weblate-guardianproject-orbot' 3f2e7388 Update geoip.jar - a06027dd (tag: 17.6.0-BETA-2-tor-0.4.8.17) update to 17.6.0-BETA-2-tor-0.4.8.17 9a3fb345 update OrbotLib to 4.2.2 via this commit 90935d611c447234167d329ce0d16d4d4f39018c 3f09403b Merge branch 'master' of github.com:guardianproject/orbot 45aafb0e update OrbotLib to f650f4c93882925f4c95e5b9315795d6181c2721 e385c371 Merge pull request #1432 from syphyr/fix_license 6e4a3212 fixed bug where smartconnect would only work after orbotservice had been started at least once 8cd2d4f6 consolidate CDN fronts logic for snowflake proxy wrapper a9c4f328 remove orbotservice, bring over assets 85f1d22e Moved string resources from orbotservice into app, removes many strings that were duplicated in both app and orbotservice ca8b5d02 moved non localized resources to main app module from orbotservice module
More…
2d56cbd1 moved java+kotlin from orbotservice into mian module 203236f4 agp minor bump 8.12.2->3 cb6376ef Merge branch 'master' of github.com:guardianproject/orbot 0fcf5ccc Merge pull request #1435 from weblate/weblate-guardianproject-orbot 124f625a Translated using Weblate (Chinese (Simplified Han script)) 6edca15e Merge pull request #1434 from weblate/weblate-guardianproject-orbot 65fa7c3f Translated using Weblate (Páez) 42b0e79d Merge pull request #1429 from guardianproject/snowflake_service 553d8de6 Fix displaying license 6229b1fa more orbotservice cleanup ac43a1bb ran android lint on this branch ee57145a load snowflake proxy config in app module, further remove code from orbotservice in process c1b8fb9a polish up existing kindness mode config UI XML 2701e894 move snowflake proxy to app module instead of orbotservice, way simpler, leverages existing translation. Add material.io icons for snowflake proxy on, starting+off bda8c4f6 polish, remove dev clutter bd0a1bc3 start snowflake service in activity onCreate if enabled, properly log start and stop power connect events e4c239ff much cleaner network/metered network impl 9b9457e6 Removed snowflake proxy from OrbotService, hook into network capability API 55cd24db Barebones snowflake proxy service with power receiver 3cc0b2ce update kindness mode snowflakes served text in onResume so user sees the latest statistic when closing orbot/locking device & later returning to kindness mode 4e42dd2b Kindness Mode UI respects SCHEDULE_EXACT_ALARM permission on API 34+, dialog to enable it if Orbot VPN isnt running 147274b3 expose UI hook for not inovking orbotservice on api 34+ if permissions arent granted, placeholder implementation in kindness mode screen b5addb23 Prevent calls to startForegroundService on API 34+ if Orbot is not THE system VPN app, or the user hsan't granted the SCHEDULE_EXACT_ALARMS perm explicitly at run time 97e53770 Merge pull request #1428 from guardianproject/no_more_vpn_intent_actions bedd255a missed in last commit a5ba366c remove log_notice_ignoring_start_request - its not translated and is printf level debugging info we dont need to show users 4f61eb69 Merge pull request #1417 from meenbeese/settings cf41b47e (origin/no_more_vpn_intent_actions) remove more java cruft f1b87f98 Removed ACTION_START_VPN and ACTION_STOP_VPN intent actions from OrbotService. Duplicates code in ACTION_START and ACTION_STOP. This is vestigial from before Orbot was a VPN app b6c46e17 Revert java 24 for now 39c2fc5a Cleaning: 37e4da21 use java 24 611ae09f turn on ephemeralMin and Max ports in SnowflakeProxyWrapper.kt 714f7065 Bump to IPtProxy 4.2.2 with EphemeralMinPort and max ports for snowflake proxy 0d22ef9a Merge pull request #1422 from tladesignz/upnp 63dc1315 Remove redundant VPN check for outbound proxy config 951c718b Fixed wrong type. b6f99851 Merge pull request #1416 from tladesignz/upnp ace1a551 Merge branch 'master' into upnp 92be2cdb Added comments. 5bee465c Group settings menu into logical pref screens c20a6e28 Added support for UPnP IGD to automatically open up ports for Snowflake Proxy, if available. 4d735d17 fixes #1413 OrbotBottomSheets only set height in their show function if they're attached - they are in onCreateDialog, but may not be when the setOnShowListener is invoked ae794e8c crude dialog for notification permission bug #1414 a8a213ac Set initial loading dimensions of camo SVGs to 200dpx200dp. They can be bigger but this can increase performance on slow devices (fixes warning about this) 6a623e0a Explicitly support RTL Languages (farsi et al) in manifest 947ad853 Fix android lint warnings 95ed89db Properly capitalize locales in language picker with non deprecated region-sensitive method d227fcf6 gradle definitions overrode defaults with same values 27d1d2bc last bit of build.gradle.kts cleaning 7dd268eb cleanup build.gradle.kts 6f14dd71 Orbots gradle scripts now in kotlin DSL instead of groovy 2c4d7480 update android gradle plugin 8.12.1->8.12.2 527391e2 Merge pull request #1395 from meenbeese/gradle f90cede8 Merge pull request #1408 from syphyr/dns_string 8c12c3da Fix string with wrong default dns port 51d8b9d4 Update to latest Gradle and AGP e3ef9a46 bump kotlin + androidx-core, remove unused dep e372afc3 removed unused errorprone gradle script 3c85a17b Merge pull request #1397 from weblate/weblate-guardianproject-orbot e080aa93 Translated using Weblate (Romanian) 95735c8b Translated using Weblate (French) 2809ebb5 Translated using Weblate (Irish) ff17f2fe Added translation using Weblate (Irish) f947e86c Update translation files 74b6ea15 Translated using Weblate (Chinese (Simplified Han script)) 406af9a0 Translated using Weblate (Ukrainian) d2040b95 Translated using Weblate (Korean) c5f8e09c Translated using Weblate (Bulgarian) 5c0c1a00 Translated using Weblate (Arabic) 124f03f2 syntax changes in app/build.gralde to stage for groovy to kotlin dsl migration - actual file is too complication to trivally do without serious testing 6d115a45 Fix possible kotlin null crash in V3ClientAuthColumns that compiler complains about on build e0e8671a migrate simple build scripts from groovy to kotlin dsl 8dcc70a9 Merge pull request #1398 from meenbeese/workflow d04267d4 Merge pull request #1399 from tladesignz/master 33b5800f Translated using Weblate (Romanian) ee18887f Translated using Weblate (French) efa7191c Translated using Weblate (Irish) c6ce88df Added translation using Weblate (Irish) 23175841 Update translation files 8da49107 Translated using Weblate (Chinese (Simplified Han script)) 19b4f0bc Translated using Weblate (Ukrainian) 0ba69648 Translated using Weblate (Korean) c3229c12 Translated using Weblate (Bulgarian) 2a104758 Translated using Weblate (Arabic) 0551b66c Fixed casing of "Tor". cd8e21e5 Merge remote-tracking branch 'upstream/master' 61045329 Merge pull request #1396 from syphyr/old_strings 29aacb62 Fix Android CI workflow for latest releases e7ff8125 Remove unused strings with no default value 480a2e8c remove MANY dead strings, so people dont translate them 938a612f dont use orbot settings string on kindness screen c0eb293a since all screens smoothly enter landscape without crashing (except app manager activity which locks rotation per #1334) we can remove the rotation preference. if a user wants rotation off they can use the android portait lock instead of a kludgy in-app setting ce854805 both kindness mode screens function great in landscape, finally 732c5632 fix bug where nonsamsungs now crashed in camo mode 4c384b50 FINALLY got custom bridges and confic connection to not only work in landscape but scale great 8f195951 More fragment looks good in landscape with new floating nav bar 30cc21eb very much fixed broken UI on connect frag when in landscape 122f34b9 Fixed rotation crash in custom bridges sheet, removed callback interface patterns from ConnectFrag->ConfigConnectionFrag->CustomBridgeFrag. Testing is great fe589ab0 Fix bug when selecting exit node country, app would crash on rotation becuase exit node dialog fragment (now bottom sheet) had a non-empty constructor. This was NOT introduced with #1351, the older UI had this same crash, but it's gone now :=) d933c728 Merge pull request #1351 from meenbeese/countries d00aae47 Merge pull request #1391 from meenbeese/navbar f4321eb6 Merge pull request #1392 from weblate/weblate-guardianproject-orbot 51617a46 Update README.md 7c7916a4 Translated using Weblate (Persian) 957c5890 Merge pull request #1389 from meenbeese/screenshots 791c22ba Implement a new floating navbar bc3f48ee Fix screenshots in the README 3782cd94 Convert ExitNodeDialogFragment to a bottom sheet - - updated tor to 0.4.8.12 - updated IPtProxy (Snowflake + Lyrebird) to 3.8.2 - removed liblzma (xz) no longer needed or used - updated geoip and snowflake broker info - improved display of language/locale varations (Español Cubano!) Thanks to @bitmold and @meenbeese for all the consistent improvements 939ce1d5 (HEAD -> master, tag: 17.3.2-RC-1-tor-0.4.8.12, origin/master, origin/HEAD) update version code to 1732300100 66850c21 fresh geoip build
More…
c8a13afc (snowflake_bridge_script) Merge branch 'master' into snowflake_bridge_script b610f946 add improvements for language detection ede09f08 Merge pull request #1124 from meenbeese/fix-sheet-title f2b8fff9 OrbotLib update to IPtProxy 3.8.2 and remove direct IPtProxy dependency line 7fa10c95 Merge branch 'master' of github.com:guardianproject/orbot d87334f2 Merge pull request #1157 from meenbeese/start-tor a80c2cb5 Merge pull request #1158 from meenbeese/kt-rewrite 4d337ee9 Rewrite PermissionManager file in Kotlin 26e0f689 Fix OrbotService not working on Android 14 3e8e8585 Merge pull request #1152 from meenbeese/exception 93cd73a2 bump build tools to v34.0.0 ... with the merging of #1053 you need android studio koala to build orbot now 3a5db1ee Merge pull request #1053 from meenbeese/agp-upgrade 2a89dea4 Merge pull request #1155 from weblate/weblate-guardianproject-orbot 5912d744 Merge pull request #1141 from meenbeese/fix-deprecation e387e698 Translated using Weblate (Russian) 8170a086 Update AGP, Gradle, Kotlin, and dependencies 074445db Fix deprecated networking getters 21653599 bump geoip to match tor 0.4.8.12 3bf8e441 Merge branch 'master' of github.com:guardianproject/orbot ed6794e8 Merge pull request #1151 from weblate/weblate-guardianproject-orbot ccedfc2c Translated using Weblate (Interlingua) 38f69100 Translated using Weblate (Interlingua) 12e4be01 Translated using Weblate (Greek) 4f613f72 Translated using Weblate (Portuguese (Portugal)) 414bfb38 Translated using Weblate (Persian) 3c26bc88 Fix IllegalStateException on app exit 040b6a62 Merge pull request #1147 from meenbeese/log-fab 6271a830 Improve the copy log button 64ae290a Merge pull request #1143 from weblate/weblate-guardianproject-orbot e243c0cf Translated using Weblate (Slovak) 9d83c1ae Merge pull request #1142 from syphyr/obfs3_port 2592a5b6 Do not open port for obfs3 when using obfs4 b6feefe1 deals with easy to fix kotlin warnings fa195488 Cleanup Guambiano, Wayuu, Páez & Nahuatl had some unused resources in the app and orbotservice module. Removed strings, but only ones for these locales which were never used. b4288428 obfs4->lyrebird a5cf4ba4 remove outdated+unused ndkversion in orbotservice build.gradle b7eed880 compileSdkVersion -> compileSdk in app/build.gradle ba8a2540 (origin/snowflake_bridge_script) made geoip script freshly clone the repo, actually updated geoip files 65866084 add -f to rm in script b8310dda add script to setup geoip and snowflake bridges automatically 2fe527a9 Script to automatically pull from Tor Project's canonical location of default snowflake bridge config info... the file burried in assets/fronts was very out of date. 556df8b7 Merge pull request #1137 from meenbeese/improve-scroll fc787b04 Merge pull request #1138 from meenbeese/rm-perm 995ba7af Merge pull request #1139 from weblate/weblate-guardianproject-orbot abcca08c Translated using Weblate (Chinese (Traditional)) 8ad39ced Remove unused storage permission 5b200784 Improve the scroll in log bottom sheet