Просмотр исходного кода

MainActivity: 启动WebService并修复前台服务崩溃问题

1. 导入WebService类,在MainActivity的onCreate中调用WebService.startForeground()启动前台服务
2. 替换原有的普通startService方式,适配Android 8.0+前台服务规则,解决Bad notification for startForeground崩溃
3. 代码位置:setupBackCallback()后、upBottomMenu()前插入启动逻辑,不影响原有界面初始化流程
Ktouls 10 месяцев назад
Родитель
Сommit
1c25feeb4d
1 измененных файлов с 2 добавлено и 0 удалено
  1. 2 0
      app/src/main/java/io/legado/app/ui/main/MainActivity.kt

+ 2 - 0
app/src/main/java/io/legado/app/ui/main/MainActivity.kt

@@ -71,6 +71,7 @@ import kotlinx.coroutines.launch
 import kotlinx.coroutines.withContext
 import kotlinx.coroutines.withContext
 import kotlin.coroutines.resume
 import kotlin.coroutines.resume
 import kotlin.coroutines.suspendCoroutine
 import kotlin.coroutines.suspendCoroutine
+import io.legado.app.service.WebService
 
 
 /**
 /**
  * 主界面
  * 主界面
@@ -134,6 +135,7 @@ open class MainActivity : VMBaseActivity<ActivityMainBinding, MainViewModel>(),
             binding.viewPagerMain.fitsSystemWindows = true
             binding.viewPagerMain.fitsSystemWindows = true
         // 其他初始化逻辑
         // 其他初始化逻辑
         setupBackCallback()
         setupBackCallback()
+        WebService.startForeground(this)
         upBottomMenu()
         upBottomMenu()
         initView()
         initView()
         upHomePage()
         upHomePage()