This commit is contained in:
白池 2024-03-28 19:37:10 +08:00 committed by GitHub
parent 5cbb695a66
commit df02f9f872
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -14,7 +14,10 @@ import moe.fuqiuluo.shamrock.tools.toast
import moe.fuqiuluo.shamrock.xposed.helper.AppTalker import moe.fuqiuluo.shamrock.xposed.helper.AppTalker
import mqq.app.MobileQQ import mqq.app.MobileQQ
import java.io.File import java.io.File
import java.util.Calendar
import java.util.Date import java.util.Date
import java.util.Timer
import java.util.TimerTask
internal enum class Level( internal enum class Level(
val id: Byte val id: Byte
@ -31,7 +34,29 @@ internal object LogCenter {
// 格式化时间 // 格式化时间
SimpleDateFormat("yyyy-MM-dd").format(Date()) SimpleDateFormat("yyyy-MM-dd").format(Date())
}_" }_"
private val LogFile = MobileQQ.getContext().getExternalFilesDir(null)!! private var LogFile = generateLogFile()
private val format = SimpleDateFormat("[HH:mm:ss] ")
private val timer = Timer()
init {
val now = Calendar.getInstance()
val tomorrowMidnight = Calendar.getInstance().apply {
add(Calendar.DAY_OF_YEAR, 1)
set(Calendar.HOUR_OF_DAY, 0)
set(Calendar.MINUTE, 0)
set(Calendar.SECOND, 0)
set(Calendar.MILLISECOND, 0)
}
val delay = tomorrowMidnight.timeInMillis - now.timeInMillis
timer.scheduleAtFixedRate(object : TimerTask() {
override fun run() {
LogFile = generateLogFile()
}
}, delay, 24 * 60 * 60 * 1000)
}
private fun generateLogFile() = MobileQQ.getContext().getExternalFilesDir(null)!!
.parentFile!!.resolve("Tencent/Shamrock/log").also { .parentFile!!.resolve("Tencent/Shamrock/log").also {
if (it.exists()) it.delete() if (it.exists()) it.delete()
it.mkdirs() it.mkdirs()
@ -49,8 +74,6 @@ internal object LogCenter {
return@let result return@let result
} }
private val format = SimpleDateFormat("[HH:mm:ss] ")
fun log(string: String, level: Level = Level.INFO, toast: Boolean = false) { fun log(string: String, level: Level = Level.INFO, toast: Boolean = false) {
if (!ShamrockConfig[DebugMode] && level == Level.DEBUG) { if (!ShamrockConfig[DebugMode] && level == Level.DEBUG) {
return return