pull/1198/head
gedoor 3 years ago
parent 5da100a09c
commit 372d7f1776
  1. 8
      app/src/main/java/io/legado/app/service/WebService.kt
  2. 21
      app/src/main/java/io/legado/app/service/WebTileService.kt

@ -41,9 +41,7 @@ class WebService : BaseService() {
isRun = true
notificationContent = getString(R.string.service_starting)
upNotification()
startService<WebTileService> {
action = IntentAction.start
}
WebTileService.setState(this, true)
}
override fun onDestroy() {
@ -56,9 +54,7 @@ class WebService : BaseService() {
webSocketServer?.stop()
}
postEvent(EventBus.WEB_SERVICE, "")
startService<WebTileService> {
action = IntentAction.stop
}
WebTileService.setState(this, false)
}
override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {

@ -1,15 +1,36 @@
package io.legado.app.service
import android.content.Context
import android.content.Intent
import android.os.Build
import android.service.quicksettings.Tile
import android.service.quicksettings.TileService
import androidx.annotation.RequiresApi
import io.legado.app.constant.IntentAction
import io.legado.app.utils.startService
/**
* web服务快捷开关
*/
@RequiresApi(Build.VERSION_CODES.N)
class WebTileService : TileService() {
companion object {
fun setState(context: Context, active: Boolean) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
context.startService<WebTileService> {
action = if (active) {
IntentAction.start
} else {
IntentAction.stop
}
}
}
}
}
override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
when (intent?.action) {
IntentAction.start -> {

Loading…
Cancel
Save