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

@ -1,15 +1,36 @@
package io.legado.app.service package io.legado.app.service
import android.content.Context
import android.content.Intent import android.content.Intent
import android.os.Build import android.os.Build
import android.service.quicksettings.Tile import android.service.quicksettings.Tile
import android.service.quicksettings.TileService import android.service.quicksettings.TileService
import androidx.annotation.RequiresApi import androidx.annotation.RequiresApi
import io.legado.app.constant.IntentAction import io.legado.app.constant.IntentAction
import io.legado.app.utils.startService
/**
* web服务快捷开关
*/
@RequiresApi(Build.VERSION_CODES.N) @RequiresApi(Build.VERSION_CODES.N)
class WebTileService : TileService() { 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 { override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
when (intent?.action) { when (intent?.action) {
IntentAction.start -> { IntentAction.start -> {

Loading…
Cancel
Save