Commit b9828bfe authored by chenhuaqing's avatar chenhuaqing Committed by hanakeichen

fix test latency

parent 38f8993c
...@@ -34,5 +34,5 @@ class AccVpnService { ...@@ -34,5 +34,5 @@ class AccVpnService {
} }
interface TestLatencyCallback { interface TestLatencyCallback {
fun onLatency(latency: Int) fun onLatency(latency: Int): Boolean
} }
\ No newline at end of file
...@@ -17,8 +17,8 @@ object NetworkAdapter { ...@@ -17,8 +17,8 @@ object NetworkAdapter {
var wifiNetwork: Network? = null var wifiNetwork: Network? = null
var cellularNetwork: Network? = null var cellularNetwork: Network? = null
var bindNetwork: Network? = null
private var bindNetwork: Network? = null
private val FD_FIELD: Field private val FD_FIELD: Field
val wifiRequest: NetworkRequest = NetworkRequest.Builder() val wifiRequest: NetworkRequest = NetworkRequest.Builder()
......
...@@ -23,6 +23,7 @@ package com.github.shadowsocks.bg ...@@ -23,6 +23,7 @@ package com.github.shadowsocks.bg
import android.net.LocalSocket import android.net.LocalSocket
import android.os.SystemClock import android.os.SystemClock
import com.ccnet.acc.AccVpnService import com.ccnet.acc.AccVpnService
import com.ccnet.acc.NetworkAdapter
import com.ccnet.acc.TestLatencyCallback import com.ccnet.acc.TestLatencyCallback
import com.github.shadowsocks.aidl.TrafficStats import com.github.shadowsocks.aidl.TrafficStats
import com.github.shadowsocks.database.ProfileManager import com.github.shadowsocks.database.ProfileManager
...@@ -72,6 +73,7 @@ class TrafficMonitor(statFile: File?) { ...@@ -72,6 +73,7 @@ class TrafficMonitor(statFile: File?) {
override fun run() { override fun run() {
Timber.d("TrafficMonitor-NativePing prepare test ${DataStore.pingAccHost}:${DataStore.pingAccPort}") Timber.d("TrafficMonitor-NativePing prepare test ${DataStore.pingAccHost}:${DataStore.pingAccPort}")
var bindNetwork = NetworkAdapter.bindNetwork
while (running) { while (running) {
val resultCode = AccVpnService.instance.testLatency( val resultCode = AccVpnService.instance.testLatency(
DataStore.pingProxyServer, DataStore.pingProxyServer,
...@@ -80,10 +82,15 @@ class TrafficMonitor(statFile: File?) { ...@@ -80,10 +82,15 @@ class TrafficMonitor(statFile: File?) {
DataStore.pingIntervalSec, DataStore.pingIntervalSec,
DataStore.pingTimeoutMillis, DataStore.pingTimeoutMillis,
object : TestLatencyCallback { object : TestLatencyCallback {
override fun onLatency(latency: Int) { override fun onLatency(latency: Int): Boolean {
Timber.d("TrafficMonitor-NativeTcpPing test ${current.latency}") Timber.d("TrafficMonitor-NativeTcpPing test ${current.latency}")
current.latency = latency current.latency = latency
dirty = true dirty = true
val cont = bindNetwork == NetworkAdapter.bindNetwork
if (!cont) {
bindNetwork = NetworkAdapter.bindNetwork
}
return cont
} }
} }
) )
......
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