Commit Graph
120 Commits
Author SHA1 Message Date
Mygod 13ef297a03 Change default DNS port to 5450 to avoid conflicts with Orbot 2017-11-12 14:22:11 -08:00
Mygod 725fb04f3f Implement proxy mode and transproxy mode
* NAT mode is replaced by transproxy mode;
* BaseService classes are moved into bg package and refactored in order to minimize duplicate code;
* Local port is moved out of per-profile settings, along with hardcoded DNS port and transproxy (redsocks) port;
* Reset is removed since the only possible clean-up needed can be performed by using force stop in app info;
* Comparing version code before extracting assets is replaced with a more robust approach: comparing update time.

NB: the only code that involves su now is for toggling TFO.
2017-11-11 00:06:58 -08:00
Mygod 6678fd9541 Revert "Replace NAT mode with local SOCKS5 mode. #1441"
This reverts commit 7fb19c40af.
2017-11-10 19:31:55 -08:00
Max Lv 7fb19c40af Replace NAT mode with local SOCKS5 mode. #1441 2017-11-09 19:02:38 -08:00
Mygod 9075d079d2 Remove support for external scanners
I decided to remove this feature because I saw that Google Authenticator is doing the same: https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2

Also fix #1407.
2017-10-20 21:03:51 -07:00
Mygod bc0b503098 Fix DNS leakage
Fix #1397. Tested via dnsleaktest.com.
2017-10-20 20:57:05 -07:00
Max Lv 918eec4394 Revert to previous AdView 2017-10-03 07:01:18 -07:00
Max Lv 2cae9384ee Fix #1387 2017-09-24 21:23:08 -07:00
Mygod b8d7ade44d Rewrite network ACLs
* A cleaner format;
* Provides better behavior when importing a non-compatible ACL;
* Supports importing URL from a imported file with up to 10 layers.
2017-09-03 17:32:32 -07:00
Max Lv 3d069b10ee Fix #1349 2017-08-29 02:06:35 -07:00
Max Lv 390cb522d5 Fix #1351 2017-08-22 03:10:27 -07:00
Max Lv b14fdcaed9 Fix the missing selected rules 2017-08-20 18:14:07 +08:00
Max Lv b6adeda924 Add local DNS to CHINALIST routing. #1348 2017-08-20 17:41:30 +08:00
Max Lv f25406b86c Protect table creation with transaction 2017-08-10 08:39:49 +08:00
Max Lv 2c8718163a Add new lines for remote ACL 2017-08-08 07:45:56 +08:00
Max Lv d51bf46413 Refine Custom Rules 2017-08-03 22:47:55 +08:00
Max Lv a69183cc0f Move all network rules to new block 2017-08-03 22:15:49 +08:00
Max Lv 62a0bb59c7 Refine URL based ACL 2017-08-03 21:35:25 +08:00
Max Lv 839765b724 Fix #1325 2017-08-03 20:24:22 +08:00
Max Lv f19f8d8ffa Fix a crash when no profile selected 2017-07-30 15:32:48 +08:00
Mygod 010fd6158f Fix profile name display in notification 2017-07-29 14:43:42 +08:00
Mygod 8b57b53788 Misc refinements 2017-07-29 14:36:51 +08:00
Mygod 1db2d81aca Update dependencies 2017-07-29 14:36:37 +08:00
Max Lv 52499f5c2d Add local DNS to dns list. #1281 2017-07-19 16:22:03 +08:00
Max Lv 230a018326 Allow adding URLs to custom rules. #1276 2017-07-19 16:21:53 +08:00
Max Lv 6978b921bb Fix a crash in RunnerActivity 2017-07-16 16:04:53 +08:00
Mygod 9c36f84b40 Update shortcut APIs 2017-07-15 02:10:00 +08:00
Mygod 143afb052d Use startService calls instead of AIDL to start services
Because our data store is process-safe, we can remove the `use` function
entirely and move more components to :bg process.
2017-07-15 01:52:53 +08:00
Mygod 27fc27346c Replace SharedPreferences with SQLite
Other changes included:

* Fix a bug where dirty flag is not set correctly when changing per-app
  proxy settings;
* Old auto connect settings in SharedPreference is now ignored.
2017-07-15 01:16:37 +08:00
Mygod 2e1564b7b9 Remove usage of BuildCompat 2017-07-14 11:46:03 +08:00
Max Lv 49e30e7b09 Add back internal QR scanner. #1273 2017-06-05 09:28:34 +08:00
Max Lv 1e750e45e9 Roll back to Google's barcode scanner 2017-05-29 17:46:42 +08:00
Max Lv 574f80aefd Fix a crash caused by new background limit on Android O 2017-05-26 18:01:07 +08:00
Mygod 424e1bd1bc Update to Android O preview 2
* Update support library to beta1;
* Adapt to new foreground service policy;
* Add a separate notification channel for NAT service;
* Adapt to `findViewById` method signature changes.

Possible issues: NAT notification will possibly not hide in lockscreen.
2017-05-18 14:56:26 +08:00
Mygod bbf52c4f1d Add support for notification channels for O preview 2017-05-18 14:35:29 +08:00
Mygod 0acfaa12c0 Use the new findViewById APIs 2017-05-18 14:35:29 +08:00
Mygod f721b57e00 Refine GuardedProcess to include stderr output 2017-05-18 09:59:29 +08:00
Max Lv a64eb8ac58 Forward DNS packet to dnsgw 2017-05-10 22:08:23 +08:00
Max Lv 8f6357d9cf Fix the dualstack issue on Android 4.4 2017-05-09 19:28:49 +08:00
Mygod 953f59ea43 Refine code style 2017-05-05 13:58:08 +08:00
Mygod 2f312486a1 Avoid too many reschedules correctly 2017-05-05 13:43:19 +08:00
Max Lv 5633ae7b21 Fix #1233 2017-04-29 18:51:54 +08:00
Max Lv 59f02cfa53 Refine Firebase remote config 2017-04-28 16:50:41 +08:00
Max Lv bd782dae98 Avoid too many reschedules 2017-04-28 08:04:40 +08:00
Mygod ea738d17d7 Refine #1217 2017-04-24 11:51:47 +08:00
Mygod 915b1a74b1 Refine Firebase code 2017-04-24 11:37:47 +08:00
Max Lv 6636cf815d Replace tag manager with firebase config 2017-04-23 23:11:44 +08:00
Max Lv 6df8f14fb2 Refine server name resolving 2017-04-23 21:49:01 +08:00
V.E.O 85532a6b48 Add multiple remote dns support and remove alternative dns in global mode (#1217)
* Add multiple remote dns support. Remove alternative dns in global mode.
* Remove a redundant comment
2017-04-14 23:32:14 -05:00
Max Lv 7356eded16 Fix #1197 2017-04-09 09:40:19 +08:00