Commit ca7a5333 authored by Mygod's avatar Mygod

Use underlying network for Android 7 and 8

parent e0af4de2
...@@ -119,14 +119,14 @@ class VpnService : BaseVpnService(), LocalDnsService.Interface { ...@@ -119,14 +119,14 @@ class VpnService : BaseVpnService(), LocalDnsService.Interface {
private var conn: ParcelFileDescriptor? = null private var conn: ParcelFileDescriptor? = null
private var worker: ProtectWorker? = null private var worker: ProtectWorker? = null
private var underlyingNetwork: Network? = null private var underlyingNetwork: Network? = null
@TargetApi(28) @TargetApi(24)
set(value) { set(value) {
setUnderlyingNetworks(if (value == null) null else arrayOf(value)) setUnderlyingNetworks(if (value == null) null else arrayOf(value))
field = value field = value
} }
private val connectivity by lazy { getSystemService<ConnectivityManager>()!! } private val connectivity by lazy { getSystemService<ConnectivityManager>()!! }
@TargetApi(28) @TargetApi(24)
private val defaultNetworkCallback = object : ConnectivityManager.NetworkCallback() { private val defaultNetworkCallback = object : ConnectivityManager.NetworkCallback() {
override fun onAvailable(network: Network) { override fun onAvailable(network: Network) {
underlyingNetwork = network underlyingNetwork = network
...@@ -231,7 +231,7 @@ class VpnService : BaseVpnService(), LocalDnsService.Interface { ...@@ -231,7 +231,7 @@ class VpnService : BaseVpnService(), LocalDnsService.Interface {
this.conn = conn this.conn = conn
val fd = conn.fd val fd = conn.fd
if (Build.VERSION.SDK_INT >= 28) { if (Build.VERSION.SDK_INT >= 24) {
// we want REQUEST here instead of LISTEN // we want REQUEST here instead of LISTEN
connectivity.requestNetwork(defaultNetworkRequest, defaultNetworkCallback) connectivity.requestNetwork(defaultNetworkRequest, defaultNetworkCallback)
listeningForDefaultNetwork = true listeningForDefaultNetwork = true
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment