Add delay when before connecting to userspace service from system service

This helps with rare ANRs when updating the package
This commit is contained in:
Marvin W 2022-01-21 22:41:33 +01:00
parent 3845b43f07
commit daa8c33eae
No known key found for this signature in database
GPG Key ID: 072E9235DB996F2A
2 changed files with 10 additions and 2 deletions

View File

@ -9,6 +9,7 @@ import android.os.IBinder
import android.util.Log
import androidx.lifecycle.LifecycleService
import androidx.lifecycle.lifecycleScope
import kotlinx.coroutines.delay
import kotlinx.coroutines.runBlocking
class GeocodeService : LifecycleService() {
@ -18,7 +19,10 @@ class GeocodeService : LifecycleService() {
super.onCreate()
Log.d(TAG, "Creating system service...")
provider = GeocodeProvider(this, lifecycle)
lifecycleScope.launchWhenStarted { provider.connect() }
lifecycleScope.launchWhenStarted {
delay(5000)
provider.connect()
}
Log.d(TAG, "Created system service.")
}

View File

@ -9,6 +9,7 @@ import android.content.Intent
import android.os.IBinder
import android.util.Log
import androidx.lifecycle.lifecycleScope
import kotlinx.coroutines.delay
import kotlinx.coroutines.runBlocking
import java.io.FileDescriptor
import java.io.PrintWriter
@ -20,7 +21,10 @@ open class LocationService : LifecycleService() {
super.onCreate()
Log.d(TAG, "Creating system service...")
provider = LocationProvider(this, lifecycle)
lifecycleScope.launchWhenStarted { provider.connect() }
lifecycleScope.launchWhenStarted {
delay(5000)
provider.connect()
}
Log.d(TAG, "Created system service.")
}