优化
This commit is contained in:
@@ -46,14 +46,6 @@ object AppConst {
|
|||||||
const val bookGroupLocalNoneId = -5L
|
const val bookGroupLocalNoneId = -5L
|
||||||
const val bookGroupErrorId = -11L
|
const val bookGroupErrorId = -11L
|
||||||
|
|
||||||
const val notificationIdRead = -1122391
|
|
||||||
const val notificationIdAudio = -1122392
|
|
||||||
const val notificationIdCache = -1122393
|
|
||||||
const val notificationIdExport = -1122394
|
|
||||||
const val notificationIdWeb = -1122395
|
|
||||||
const val notificationIdDownload = -1122396
|
|
||||||
const val notificationIdCheckSource = -1122397
|
|
||||||
|
|
||||||
const val imagePathKey = "imagePath"
|
const val imagePathKey = "imagePath"
|
||||||
|
|
||||||
val menuViewNames = arrayOf(
|
val menuViewNames = arrayOf(
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
package io.legado.app.constant
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通知ID不能重复,统一规划通知ID
|
||||||
|
*/
|
||||||
|
object NotificationId {
|
||||||
|
|
||||||
|
const val ReadAloudService = 101
|
||||||
|
const val AudioPlayService = 102
|
||||||
|
const val CacheBookService = 103
|
||||||
|
const val ExportBookService = 104
|
||||||
|
const val WebService = 105
|
||||||
|
const val DownloadService = 106
|
||||||
|
const val CheckSourceService = 107
|
||||||
|
const val Download = 10000
|
||||||
|
const val ExportBook = 201
|
||||||
|
|
||||||
|
}
|
||||||
@@ -614,7 +614,7 @@ class AudioPlayService : BaseService(),
|
|||||||
builder.setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
|
builder.setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
|
||||||
builder
|
builder
|
||||||
}.onSuccess {
|
}.onSuccess {
|
||||||
startForeground(AppConst.notificationIdAudio, it.build())
|
startForeground(NotificationId.AudioPlayService, it.build())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -429,7 +429,7 @@ abstract class BaseReadAloudService : BaseService(),
|
|||||||
builder.setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
|
builder.setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
|
||||||
builder
|
builder
|
||||||
}.onSuccess {
|
}.onSuccess {
|
||||||
startForeground(AppConst.notificationIdRead, it.build())
|
startForeground(NotificationId.ReadAloudService, it.build())
|
||||||
}.onError {
|
}.onError {
|
||||||
AppLog.put("创建朗读通知出错,${it.localizedMessage}", it, true)
|
AppLog.put("创建朗读通知出错,${it.localizedMessage}", it, true)
|
||||||
//创建通知出错不结束服务就会崩溃,服务必须绑定通知
|
//创建通知出错不结束服务就会崩溃,服务必须绑定通知
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import io.legado.app.constant.AppConst
|
|||||||
import io.legado.app.constant.AppLog
|
import io.legado.app.constant.AppLog
|
||||||
import io.legado.app.constant.EventBus
|
import io.legado.app.constant.EventBus
|
||||||
import io.legado.app.constant.IntentAction
|
import io.legado.app.constant.IntentAction
|
||||||
|
import io.legado.app.constant.NotificationId
|
||||||
import io.legado.app.data.appDb
|
import io.legado.app.data.appDb
|
||||||
import io.legado.app.help.config.AppConfig
|
import io.legado.app.help.config.AppConfig
|
||||||
import io.legado.app.model.CacheBook
|
import io.legado.app.model.CacheBook
|
||||||
@@ -167,7 +168,7 @@ class CacheBookService : BaseService() {
|
|||||||
override fun upNotification() {
|
override fun upNotification() {
|
||||||
notificationBuilder.setContentText(notificationContent)
|
notificationBuilder.setContentText(notificationContent)
|
||||||
val notification = notificationBuilder.build()
|
val notification = notificationBuilder.build()
|
||||||
startForeground(AppConst.notificationIdCache, notification)
|
startForeground(NotificationId.CacheBookService, notification)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -9,6 +9,7 @@ import io.legado.app.constant.AppConst
|
|||||||
import io.legado.app.constant.BookSourceType
|
import io.legado.app.constant.BookSourceType
|
||||||
import io.legado.app.constant.EventBus
|
import io.legado.app.constant.EventBus
|
||||||
import io.legado.app.constant.IntentAction
|
import io.legado.app.constant.IntentAction
|
||||||
|
import io.legado.app.constant.NotificationId
|
||||||
import io.legado.app.data.appDb
|
import io.legado.app.data.appDb
|
||||||
import io.legado.app.data.entities.Book
|
import io.legado.app.data.entities.Book
|
||||||
import io.legado.app.data.entities.BookSource
|
import io.legado.app.data.entities.BookSource
|
||||||
@@ -264,7 +265,7 @@ class CheckSourceService : BaseService() {
|
|||||||
notificationBuilder.setContentText(notificationMsg)
|
notificationBuilder.setContentText(notificationMsg)
|
||||||
notificationBuilder.setProgress(allIds.size, checkedIds.size, false)
|
notificationBuilder.setProgress(allIds.size, checkedIds.size, false)
|
||||||
postEvent(EventBus.CHECK_SOURCE, notificationMsg)
|
postEvent(EventBus.CHECK_SOURCE, notificationMsg)
|
||||||
startForeground(AppConst.notificationIdCheckSource, notificationBuilder.build())
|
startForeground(NotificationId.CheckSourceService, notificationBuilder.build())
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -14,6 +14,7 @@ import io.legado.app.base.BaseService
|
|||||||
import io.legado.app.constant.AppConst
|
import io.legado.app.constant.AppConst
|
||||||
import io.legado.app.constant.AppLog
|
import io.legado.app.constant.AppLog
|
||||||
import io.legado.app.constant.IntentAction
|
import io.legado.app.constant.IntentAction
|
||||||
|
import io.legado.app.constant.NotificationId
|
||||||
import io.legado.app.utils.IntentType
|
import io.legado.app.utils.IntentType
|
||||||
import io.legado.app.utils.openFileUri
|
import io.legado.app.utils.openFileUri
|
||||||
import io.legado.app.utils.servicePendingIntent
|
import io.legado.app.utils.servicePendingIntent
|
||||||
@@ -102,7 +103,8 @@ class DownloadService : BaseService() {
|
|||||||
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, fileName)
|
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, fileName)
|
||||||
// 添加一个下载任务
|
// 添加一个下载任务
|
||||||
val downloadId = downloadManager.enqueue(request)
|
val downloadId = downloadManager.enqueue(request)
|
||||||
downloads[downloadId] = DownloadInfo(url, fileName, downloads.size + 1)
|
downloads[downloadId] =
|
||||||
|
DownloadInfo(url, fileName, NotificationId.Download + downloads.size)
|
||||||
queryState()
|
queryState()
|
||||||
if (upStateJob == null) {
|
if (upStateJob == null) {
|
||||||
checkDownloadState()
|
checkDownloadState()
|
||||||
@@ -224,7 +226,7 @@ class DownloadService : BaseService() {
|
|||||||
.setGroupSummary(true)
|
.setGroupSummary(true)
|
||||||
.setOngoing(true)
|
.setOngoing(true)
|
||||||
.build()
|
.build()
|
||||||
startForeground(AppConst.notificationIdDownload, notification)
|
startForeground(NotificationId.DownloadService, notification)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ import io.legado.app.constant.AppLog
|
|||||||
import io.legado.app.constant.AppPattern
|
import io.legado.app.constant.AppPattern
|
||||||
import io.legado.app.constant.EventBus
|
import io.legado.app.constant.EventBus
|
||||||
import io.legado.app.constant.IntentAction
|
import io.legado.app.constant.IntentAction
|
||||||
|
import io.legado.app.constant.NotificationId
|
||||||
import io.legado.app.data.appDb
|
import io.legado.app.data.appDb
|
||||||
import io.legado.app.data.entities.Book
|
import io.legado.app.data.entities.Book
|
||||||
import io.legado.app.data.entities.BookChapter
|
import io.legado.app.data.entities.BookChapter
|
||||||
@@ -132,7 +133,7 @@ class ExportBookService : BaseService() {
|
|||||||
.setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
|
.setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
|
||||||
.setGroup(groupKey)
|
.setGroup(groupKey)
|
||||||
.setGroupSummary(true)
|
.setGroupSummary(true)
|
||||||
startForeground(AppConst.notificationIdExport, notification.build())
|
startForeground(NotificationId.ExportBookService, notification.build())
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun upExportNotification() {
|
private fun upExportNotification() {
|
||||||
@@ -152,7 +153,7 @@ class ExportBookService : BaseService() {
|
|||||||
servicePendingIntent<ExportBookService>(IntentAction.stop)
|
servicePendingIntent<ExportBookService>(IntentAction.stop)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
notificationManager.notify(AppConst.notificationIdExport + 100, notification.build())
|
notificationManager.notify(NotificationId.ExportBook, notification.build())
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun export() {
|
private fun export() {
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ import io.legado.app.base.BaseService
|
|||||||
import io.legado.app.constant.AppConst
|
import io.legado.app.constant.AppConst
|
||||||
import io.legado.app.constant.EventBus
|
import io.legado.app.constant.EventBus
|
||||||
import io.legado.app.constant.IntentAction
|
import io.legado.app.constant.IntentAction
|
||||||
|
import io.legado.app.constant.NotificationId
|
||||||
import io.legado.app.constant.PreferKey
|
import io.legado.app.constant.PreferKey
|
||||||
import io.legado.app.receiver.NetworkChangedListener
|
import io.legado.app.receiver.NetworkChangedListener
|
||||||
import io.legado.app.utils.*
|
import io.legado.app.utils.*
|
||||||
@@ -159,7 +160,7 @@ class WebService : BaseService() {
|
|||||||
)
|
)
|
||||||
builder.setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
|
builder.setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
|
||||||
val notification = builder.build()
|
val notification = builder.build()
|
||||||
startForeground(AppConst.notificationIdWeb, notification)
|
startForeground(NotificationId.WebService, notification)
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressLint("ObsoleteSdkInt")
|
@SuppressLint("ObsoleteSdkInt")
|
||||||
|
|||||||
Reference in New Issue
Block a user