|
5 | 5 |
|
6 | 6 | package org.microg.gms.auth.login |
7 | 7 |
|
| 8 | +import android.util.Log |
8 | 9 | import androidx.lifecycle.lifecycleScope |
9 | 10 | import com.google.android.gms.droidguard.DroidGuardClient |
10 | 11 | import com.google.android.gms.tasks.await |
11 | | -import java.util.* |
| 12 | +import kotlinx.coroutines.Dispatchers |
| 13 | +import kotlinx.coroutines.launch |
| 14 | +import kotlinx.coroutines.withContext |
| 15 | +import java.util.Collections |
| 16 | + |
| 17 | +private const val TAG = "DroidGuardHandler" |
12 | 18 |
|
13 | 19 | class DroidGuardHandler(private val activity: LoginActivity) { |
14 | 20 | fun start(dg: String) { |
15 | | - activity.lifecycleScope.launchWhenStarted { |
| 21 | + activity.lifecycleScope.launch { |
| 22 | + Log.d(TAG, "getDroidGuardResult start ${Thread.currentThread().name}") |
| 23 | + val start = System.currentTimeMillis() |
16 | 24 | try { |
17 | | - val result = DroidGuardClient.getResults(activity, "minute_maid", Collections.singletonMap("dg_minutemaid", dg)).await() |
18 | | - activity.runScript("window.setDgResult('$result')") |
| 25 | + val result = withContext(Dispatchers.IO) { |
| 26 | + DroidGuardClient.getResults(activity, "minute_maid", Collections.singletonMap("dg_minutemaid", dg)).await() |
| 27 | + } |
| 28 | + Log.d(TAG, "start: result: $result") |
| 29 | + withContext(Dispatchers.Main) { |
| 30 | + activity.runScript("window.setDgResult('$result')") |
| 31 | + } |
19 | 32 | } catch (e: Exception) { |
20 | 33 | // Ignore |
21 | 34 | } |
| 35 | + Log.d(TAG, "getDroidGuardResult end " + (System.currentTimeMillis() - start)) |
22 | 36 | } |
23 | 37 | } |
24 | 38 | } |
0 commit comments