From b559bb3904a3af74be3c0867fec1ac8aa312638c Mon Sep 17 00:00:00 2001 From: FooIbar <118464521+FooIbar@users.noreply.github.com> Date: Sun, 19 Feb 2023 21:36:33 +0800 Subject: [PATCH] Temporarily disable vpn bypass on login --- .../java/com/hippo/ehviewer/ui/MainActivity.kt | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/hippo/ehviewer/ui/MainActivity.kt b/app/src/main/java/com/hippo/ehviewer/ui/MainActivity.kt index f7adebe25..3f88e546f 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/MainActivity.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/MainActivity.kt @@ -89,8 +89,8 @@ import java.io.OutputStream class MainActivity : EhActivity() { private lateinit var binding: ActivityMainBinding private lateinit var navController: NavController - private lateinit var connectivityManager: ConnectivityManager - private val availableNetworks: MutableList = mutableListOf() + private val connectivityManager by lazy { getSystemService()!! } + private val availableNetworks = mutableListOf() private fun saveImageToTempFile(uri: Uri): File? { val src = ImageDecoder.createSource(contentResolver, uri) @@ -223,7 +223,6 @@ class MainActivity : EhActivity() { } override fun onCreate(savedInstanceState: Bundle?) { - connectivityManager = getSystemService()!! if (Settings.getDF() && Settings.getBypassVpn()) { bypassVpn() } @@ -365,10 +364,17 @@ class MainActivity : EhActivity() { } } - private val loginLauncher = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { setNavGraph() } + private val loginLauncher = + registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { + if (availableNetworks.isNotEmpty()) { + connectivityManager.bindProcessToNetwork(availableNetworks.last()) + } + setNavGraph() + } override fun onResume() { if (EhUtils.needSignedIn()) { + connectivityManager.bindProcessToNetwork(null) loginLauncher.launch(Intent(this, LoginActivity::class.java)) } super.onResume()