Improve AppDataUsageDetailsRepository

Reduce latency by reduce the number of system calls.

Bug: 295260929
Test: manual - on AppDataUsage page
Test: unit test
Change-Id: If233e223db744cd15d3a769416fd4c5957085417
This commit is contained in:
Chaohui Wang
2023-10-14 20:42:51 +08:00
parent 2b045784b9
commit 342256475d
8 changed files with 86 additions and 72 deletions

View File

@@ -26,6 +26,7 @@ import androidx.lifecycle.lifecycleScope
import androidx.preference.PreferenceScreen
import com.android.settings.core.BasePreferenceController
import com.android.settings.datausage.lib.INetworkCycleDataRepository
import com.android.settings.datausage.lib.NetworkCycleChartData
import com.android.settings.datausage.lib.NetworkCycleDataRepository
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
@@ -72,6 +73,7 @@ open class ChartDataUsagePreferenceController(context: Context, preferenceKey: S
fun update(startTime: Long, endTime: Long) {
preference.setTime(startTime, endTime)
preference.setNetworkCycleData(NetworkCycleChartData.AllZero)
lifecycleScope.launch {
val chartData = withContext(Dispatchers.Default) {
repository.queryChartData(startTime, endTime)