整理:code review

This commit is contained in:
pppscn 2024-03-06 11:48:57 +08:00
parent 0036044d54
commit bc6131ffd8
40 changed files with 210 additions and 117 deletions

View File

@ -41,8 +41,4 @@ class RuleRepository(private val ruleDao: RuleDao) {
fun getRuleList(type: String, status: Int, simSlot: String) = ruleDao.getRuleList(type, status, simSlot)
fun replaceTags(sql: String): Int {
val query = SimpleSQLiteQuery(sql)
return ruleDao.replaceTags(query)
}
}

View File

@ -46,9 +46,4 @@ class SenderRepository(private val senderDao: SenderDao) {
val count: Flow<Long> = senderDao.getOnCount()
fun replaceTags(sql: String): Int {
val query = SimpleSQLiteQuery(sql)
return senderDao.replaceTags(query)
}
}

View File

@ -4,7 +4,11 @@ import android.annotation.SuppressLint
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.*
import android.widget.AdapterView
import android.widget.CompoundButton
import android.widget.EditText
import android.widget.RadioGroup
import android.widget.TextView
import androidx.fragment.app.viewModels
import androidx.lifecycle.Observer
import androidx.recyclerview.widget.ItemTouchHelper
@ -28,7 +32,40 @@ import com.idormy.sms.forwarder.database.viewmodel.BaseViewModelFactory
import com.idormy.sms.forwarder.database.viewmodel.RuleViewModel
import com.idormy.sms.forwarder.databinding.FragmentRulesEditBinding
import com.idormy.sms.forwarder.entity.MsgInfo
import com.idormy.sms.forwarder.utils.*
import com.idormy.sms.forwarder.utils.CHECK_CONTAIN
import com.idormy.sms.forwarder.utils.CHECK_END_WITH
import com.idormy.sms.forwarder.utils.CHECK_IS
import com.idormy.sms.forwarder.utils.CHECK_NOT_CONTAIN
import com.idormy.sms.forwarder.utils.CHECK_REGEX
import com.idormy.sms.forwarder.utils.CHECK_SIM_SLOT_1
import com.idormy.sms.forwarder.utils.CHECK_SIM_SLOT_2
import com.idormy.sms.forwarder.utils.CHECK_SIM_SLOT_ALL
import com.idormy.sms.forwarder.utils.CHECK_START_WITH
import com.idormy.sms.forwarder.utils.CommonUtils
import com.idormy.sms.forwarder.utils.DataProvider
import com.idormy.sms.forwarder.utils.EVENT_LOAD_APP_LIST
import com.idormy.sms.forwarder.utils.EVENT_TOAST_ERROR
import com.idormy.sms.forwarder.utils.FILED_CALL_TYPE
import com.idormy.sms.forwarder.utils.FILED_INFORM_CONTENT
import com.idormy.sms.forwarder.utils.FILED_MSG_CONTENT
import com.idormy.sms.forwarder.utils.FILED_MULTI_MATCH
import com.idormy.sms.forwarder.utils.FILED_PACKAGE_NAME
import com.idormy.sms.forwarder.utils.FILED_PHONE_NUM
import com.idormy.sms.forwarder.utils.FILED_TRANSPOND_ALL
import com.idormy.sms.forwarder.utils.FILED_UID
import com.idormy.sms.forwarder.utils.KEY_RULE_CLONE
import com.idormy.sms.forwarder.utils.KEY_RULE_ID
import com.idormy.sms.forwarder.utils.KEY_RULE_TYPE
import com.idormy.sms.forwarder.utils.Log
import com.idormy.sms.forwarder.utils.PhoneUtils
import com.idormy.sms.forwarder.utils.SENDER_LOGIC_ALL
import com.idormy.sms.forwarder.utils.SENDER_LOGIC_UNTIL_FAIL
import com.idormy.sms.forwarder.utils.SENDER_LOGIC_UNTIL_SUCCESS
import com.idormy.sms.forwarder.utils.STATUS_OFF
import com.idormy.sms.forwarder.utils.STATUS_ON
import com.idormy.sms.forwarder.utils.SendUtils
import com.idormy.sms.forwarder.utils.SettingUtils
import com.idormy.sms.forwarder.utils.XToastUtils
import com.idormy.sms.forwarder.workers.LoadAppListWorker
import com.jeremyliao.liveeventbus.LiveEventBus
import com.xuexiang.xaop.annotation.SingleClick
@ -49,8 +86,7 @@ import io.reactivex.SingleObserver
import io.reactivex.android.schedulers.AndroidSchedulers
import io.reactivex.disposables.Disposable
import io.reactivex.schedulers.Schedulers
import kotlinx.coroutines.*
import java.util.*
import java.util.Date
@Page(name = "转发规则·编辑器")
@Suppress("PrivatePropertyName")

View File

@ -17,7 +17,12 @@ import android.text.TextWatcher
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.*
import android.widget.AdapterView
import android.widget.CompoundButton
import android.widget.EditText
import android.widget.LinearLayout
import android.widget.RadioGroup
import android.widget.TextView
import androidx.annotation.RequiresApi
import androidx.core.content.ContextCompat
import androidx.lifecycle.Observer
@ -39,8 +44,16 @@ import com.idormy.sms.forwarder.entity.SimInfo
import com.idormy.sms.forwarder.receiver.BootCompletedReceiver
import com.idormy.sms.forwarder.service.ForegroundService
import com.idormy.sms.forwarder.service.LocationService
import com.idormy.sms.forwarder.utils.*
import com.idormy.sms.forwarder.utils.AppUtils.getAppPackageName
import com.idormy.sms.forwarder.utils.CommonUtils
import com.idormy.sms.forwarder.utils.DataProvider
import com.idormy.sms.forwarder.utils.EVENT_LOAD_APP_LIST
import com.idormy.sms.forwarder.utils.KeepAliveUtils
import com.idormy.sms.forwarder.utils.LocationUtils
import com.idormy.sms.forwarder.utils.Log
import com.idormy.sms.forwarder.utils.PhoneUtils
import com.idormy.sms.forwarder.utils.SettingUtils
import com.idormy.sms.forwarder.utils.XToastUtils
import com.idormy.sms.forwarder.widget.GuideTipsDialog
import com.idormy.sms.forwarder.workers.LoadAppListWorker
import com.jeremyliao.liveeventbus.LiveEventBus
@ -57,8 +70,7 @@ import com.xuexiang.xui.widget.picker.widget.listener.OnOptionsSelectListener
import com.xuexiang.xutil.XUtil
import com.xuexiang.xutil.XUtil.getPackageManager
import com.xuexiang.xutil.file.FileUtils
import kotlinx.coroutines.*
import java.util.*
import java.util.Locale
@Suppress("SpellCheckingInspection", "PrivatePropertyName")
@Page(name = "通用设置")

View File

@ -176,7 +176,7 @@ class AlarmFragment : BaseFragment<FragmentTasksActionAlarmBinding?>(), View.OnC
val taskAction = TaskSetting(TASK_ACTION_ALARM, getString(R.string.task_alarm), settingVo.description, Gson().toJson(settingVo), requestCode)
val taskActionsJson = Gson().toJson(arrayListOf(taskAction))
val msgInfo = MsgInfo("task", getString(R.string.task_alarm), settingVo.description, Date(), getString(R.string.task_alarm))
val actionData = Data.Builder().putLong(TaskWorker.taskId, 0).putString(TaskWorker.taskActions, taskActionsJson).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, 0).putString(TaskWorker.TASK_ACTIONS, taskActionsJson).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
} catch (e: Exception) {

View File

@ -103,7 +103,7 @@ class CleanerFragment : BaseFragment<FragmentTasksActionCleanerBinding?>(), View
val taskAction = TaskSetting(TASK_ACTION_CLEANER, getString(R.string.task_cleaner), settingVo.description, Gson().toJson(settingVo), requestCode)
val taskActionsJson = Gson().toJson(arrayListOf(taskAction))
val msgInfo = MsgInfo("task", getString(R.string.task_cleaner), settingVo.description, Date(), getString(R.string.task_cleaner))
val actionData = Data.Builder().putLong(TaskWorker.taskId, 0).putString(TaskWorker.taskActions, taskActionsJson).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, 0).putString(TaskWorker.TASK_ACTIONS, taskActionsJson).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
} catch (e: Exception) {

View File

@ -138,7 +138,7 @@ class FrpcFragment : BaseFragment<FragmentTasksActionFrpcBinding?>(), View.OnCli
val taskAction = TaskSetting(TASK_ACTION_FRPC, getString(R.string.task_frpc), settingVo.description, Gson().toJson(settingVo), requestCode)
val taskActionsJson = Gson().toJson(arrayListOf(taskAction))
val msgInfo = MsgInfo("task", getString(R.string.task_frpc), settingVo.description, Date(), getString(R.string.task_frpc))
val actionData = Data.Builder().putLong(TaskWorker.taskId, 0).putString(TaskWorker.taskActions, taskActionsJson).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, 0).putString(TaskWorker.TASK_ACTIONS, taskActionsJson).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
} catch (e: Exception) {

View File

@ -150,7 +150,7 @@ class HttpServerFragment : BaseFragment<FragmentTasksActionHttpServerBinding?>()
val taskAction = TaskSetting(TASK_ACTION_HTTPSERVER, getString(R.string.task_http_server), settingVo.description, Gson().toJson(settingVo), requestCode)
val taskActionsJson = Gson().toJson(arrayListOf(taskAction))
val msgInfo = MsgInfo("task", getString(R.string.task_http_server), settingVo.description, Date(), getString(R.string.task_http_server))
val actionData = Data.Builder().putLong(TaskWorker.taskId, 0).putString(TaskWorker.taskActions, taskActionsJson).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, 0).putString(TaskWorker.TASK_ACTIONS, taskActionsJson).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
} catch (e: Exception) {

View File

@ -5,7 +5,9 @@ import android.content.Intent
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.*
import android.widget.AdapterView
import android.widget.CompoundButton
import android.widget.EditText
import androidx.recyclerview.widget.ItemTouchHelper
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
@ -25,7 +27,23 @@ import com.idormy.sms.forwarder.database.entity.Sender
import com.idormy.sms.forwarder.databinding.FragmentTasksActionNotificationBinding
import com.idormy.sms.forwarder.entity.MsgInfo
import com.idormy.sms.forwarder.entity.TaskSetting
import com.idormy.sms.forwarder.utils.*
import com.idormy.sms.forwarder.utils.CHECK_IS
import com.idormy.sms.forwarder.utils.CHECK_SIM_SLOT_ALL
import com.idormy.sms.forwarder.utils.CommonUtils
import com.idormy.sms.forwarder.utils.DataProvider
import com.idormy.sms.forwarder.utils.FILED_TRANSPOND_ALL
import com.idormy.sms.forwarder.utils.KEY_BACK_DATA_ACTION
import com.idormy.sms.forwarder.utils.KEY_BACK_DESCRIPTION_ACTION
import com.idormy.sms.forwarder.utils.KEY_EVENT_DATA_ACTION
import com.idormy.sms.forwarder.utils.Log
import com.idormy.sms.forwarder.utils.SENDER_LOGIC_ALL
import com.idormy.sms.forwarder.utils.SENDER_LOGIC_UNTIL_FAIL
import com.idormy.sms.forwarder.utils.SENDER_LOGIC_UNTIL_SUCCESS
import com.idormy.sms.forwarder.utils.STATUS_OFF
import com.idormy.sms.forwarder.utils.STATUS_ON
import com.idormy.sms.forwarder.utils.TASK_ACTION_NOTIFICATION
import com.idormy.sms.forwarder.utils.TaskWorker
import com.idormy.sms.forwarder.utils.XToastUtils
import com.idormy.sms.forwarder.workers.ActionWorker
import com.xuexiang.xaop.annotation.SingleClick
import com.xuexiang.xpage.annotation.Page
@ -41,8 +59,7 @@ import io.reactivex.SingleObserver
import io.reactivex.android.schedulers.AndroidSchedulers
import io.reactivex.disposables.Disposable
import io.reactivex.schedulers.Schedulers
import kotlinx.coroutines.*
import java.util.*
import java.util.Date
@Page(name = "Notification")
@Suppress("PrivatePropertyName", "DEPRECATION")
@ -265,7 +282,7 @@ class NotificationFragment : BaseFragment<FragmentTasksActionNotificationBinding
val taskAction = TaskSetting(TASK_ACTION_NOTIFICATION, getString(R.string.task_notification), description, Gson().toJson(settingVo), requestCode)
val taskActionsJson = Gson().toJson(arrayListOf(taskAction))
val msgInfo = MsgInfo("task", getString(R.string.task_notification), description, Date(), getString(R.string.task_notification))
val actionData = Data.Builder().putLong(TaskWorker.taskId, 0).putString(TaskWorker.taskActions, taskActionsJson).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, 0).putString(TaskWorker.TASK_ACTIONS, taskActionsJson).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
} catch (e: Exception) {

View File

@ -110,7 +110,7 @@ class ResendFragment : BaseFragment<FragmentTasksActionResendBinding?>(), View.O
val taskAction = TaskSetting(TASK_ACTION_RESEND, getString(R.string.task_resend), settingVo.description, Gson().toJson(settingVo), requestCode)
val taskActionsJson = Gson().toJson(arrayListOf(taskAction))
val msgInfo = MsgInfo("task", getString(R.string.task_resend), settingVo.description, Date(), getString(R.string.task_resend))
val actionData = Data.Builder().putLong(TaskWorker.taskId, 0).putString(TaskWorker.taskActions, taskActionsJson).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, 0).putString(TaskWorker.TASK_ACTIONS, taskActionsJson).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
} catch (e: Exception) {

View File

@ -143,7 +143,7 @@ class RuleFragment : BaseFragment<FragmentTasksActionRuleBinding?>(), View.OnCli
val taskAction = TaskSetting(TASK_ACTION_RULE, getString(R.string.task_rule), settingVo.description, Gson().toJson(settingVo), requestCode)
val taskActionsJson = Gson().toJson(arrayListOf(taskAction))
val msgInfo = MsgInfo("task", getString(R.string.task_rule), settingVo.description, Date(), getString(R.string.task_rule))
val actionData = Data.Builder().putLong(TaskWorker.taskId, 0).putString(TaskWorker.taskActions, taskActionsJson).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, 0).putString(TaskWorker.TASK_ACTIONS, taskActionsJson).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
} catch (e: Exception) {

View File

@ -151,7 +151,7 @@ class SendSmsFragment : BaseFragment<FragmentTasksActionSendSmsBinding?>(), View
val taskAction = TaskSetting(TASK_ACTION_SENDSMS, getString(R.string.task_sendsms), settingVo.description, Gson().toJson(settingVo), requestCode)
val taskActionsJson = Gson().toJson(arrayListOf(taskAction))
val msgInfo = MsgInfo("task", getString(R.string.task_sendsms), settingVo.description, Date(), getString(R.string.task_sendsms))
val actionData = Data.Builder().putLong(TaskWorker.taskId, 0).putString(TaskWorker.taskActions, taskActionsJson).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, 0).putString(TaskWorker.TASK_ACTIONS, taskActionsJson).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
} catch (e: Exception) {

View File

@ -144,7 +144,7 @@ class SenderFragment : BaseFragment<FragmentTasksActionSenderBinding?>(), View.O
val taskAction = TaskSetting(TASK_ACTION_SENDER, getString(R.string.task_sender), settingVo.description, Gson().toJson(settingVo), requestCode)
val taskActionsJson = Gson().toJson(arrayListOf(taskAction))
val msgInfo = MsgInfo("task", getString(R.string.task_sender), settingVo.description, Date(), getString(R.string.task_sender))
val actionData = Data.Builder().putLong(TaskWorker.taskId, 0).putString(TaskWorker.taskActions, taskActionsJson).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, 0).putString(TaskWorker.TASK_ACTIONS, taskActionsJson).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
} catch (e: Exception) {

View File

@ -342,7 +342,7 @@ class SettingsFragment : BaseFragment<FragmentTasksActionSettingsBinding?>(), Vi
val taskAction = TaskSetting(TASK_ACTION_SETTINGS, getString(R.string.task_settings), settingVo.description, Gson().toJson(settingVo), requestCode)
val taskActionsJson = Gson().toJson(arrayListOf(taskAction))
val msgInfo = MsgInfo("task", getString(R.string.task_settings), settingVo.description, Date(), getString(R.string.task_settings))
val actionData = Data.Builder().putLong(TaskWorker.taskId, 0).putString(TaskWorker.taskActions, taskActionsJson).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, 0).putString(TaskWorker.TASK_ACTIONS, taskActionsJson).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
} catch (e: Exception) {

View File

@ -144,7 +144,7 @@ class TaskActionFragment : BaseFragment<FragmentTasksActionTaskBinding?>(), View
val taskAction = TaskSetting(TASK_ACTION_TASK, getString(R.string.task_task), settingVo.description, Gson().toJson(settingVo), requestCode)
val taskActionsJson = Gson().toJson(arrayListOf(taskAction))
val msgInfo = MsgInfo("task", getString(R.string.task_task), settingVo.description, Date(), getString(R.string.task_task))
val actionData = Data.Builder().putLong(TaskWorker.taskId, 0).putString(TaskWorker.taskActions, taskActionsJson).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, 0).putString(TaskWorker.TASK_ACTIONS, taskActionsJson).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
} catch (e: Exception) {

View File

@ -4,11 +4,11 @@ import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import android.os.BatteryManager
import com.idormy.sms.forwarder.utils.Log
import androidx.work.OneTimeWorkRequestBuilder
import androidx.work.WorkManager
import androidx.work.workDataOf
import com.idormy.sms.forwarder.utils.BatteryUtils
import com.idormy.sms.forwarder.utils.Log
import com.idormy.sms.forwarder.utils.TASK_CONDITION_BATTERY
import com.idormy.sms.forwarder.utils.TASK_CONDITION_CHARGE
import com.idormy.sms.forwarder.utils.TaskWorker
@ -50,7 +50,7 @@ class BatteryReceiver : BroadcastReceiver() {
Log.d(TAG, "电量改变")
val request = OneTimeWorkRequestBuilder<BatteryWorker>().setInputData(
workDataOf(
TaskWorker.conditionType to TASK_CONDITION_BATTERY,
TaskWorker.CONDITION_TYPE to TASK_CONDITION_BATTERY,
"status" to statusNew,
"level_new" to levelNew,
"level_old" to levelOld,
@ -64,7 +64,7 @@ class BatteryReceiver : BroadcastReceiver() {
Log.d(TAG, "充电状态改变")
val request = OneTimeWorkRequestBuilder<BatteryWorker>().setInputData(
workDataOf(
TaskWorker.conditionType to TASK_CONDITION_CHARGE,
TaskWorker.CONDITION_TYPE to TASK_CONDITION_CHARGE,
"status_new" to statusNew,
"status_old" to statusOld,
"plugged_new" to pluggedNew,

View File

@ -95,7 +95,7 @@ open class CallReceiver : PhoneStateReceiver() {
val msgInfo = MsgInfo("call", phoneNumber.toString(), msg.toString(), Date(), "", -1, 0, callType)
val request = OneTimeWorkRequestBuilder<SendWorker>().setInputData(
workDataOf(
Worker.sendMsgInfo to Gson().toJson(msgInfo)
Worker.SEND_MSG_INFO to Gson().toJson(msgInfo)
)
).build()
WorkManager.getInstance(context).enqueue(request)
@ -140,7 +140,7 @@ open class CallReceiver : PhoneStateReceiver() {
val msgInfo = MsgInfo("call", callInfo.number, PhoneUtils.getCallMsg(callInfo), Date(), simInfo, simSlot, callInfo.subId, callType)
val request = OneTimeWorkRequestBuilder<SendWorker>().setInputData(
workDataOf(
Worker.sendMsgInfo to Gson().toJson(msgInfo)
Worker.SEND_MSG_INFO to Gson().toJson(msgInfo)
)
).build()
WorkManager.getInstance(context).enqueue(request)

View File

@ -32,8 +32,8 @@ class LockScreenReceiver : BroadcastReceiver() {
TaskUtils.lockScreenAction = action
val request = OneTimeWorkRequestBuilder<LockScreenWorker>().setInputData(
workDataOf(
TaskWorker.conditionType to TASK_CONDITION_LOCK_SCREEN,
TaskWorker.action to action,
TaskWorker.CONDITION_TYPE to TASK_CONDITION_LOCK_SCREEN,
TaskWorker.ACTION to action,
)
).build()
WorkManager.getInstance(context).enqueue(request)

View File

@ -91,7 +91,7 @@ class NetworkChangeReceiver : BroadcastReceiver() {
.setInitialDelay(DELAY_TIME_AFTER_SIM_READY, TimeUnit.MILLISECONDS)
.setInputData(
workDataOf(
TaskWorker.conditionType to TASK_CONDITION_NETWORK,
TaskWorker.CONDITION_TYPE to TASK_CONDITION_NETWORK,
)
).build()
WorkManager.getInstance(context).enqueue(request)

View File

@ -4,12 +4,12 @@ import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import android.telephony.TelephonyManager
import com.idormy.sms.forwarder.utils.Log
import androidx.work.OneTimeWorkRequestBuilder
import androidx.work.WorkManager
import androidx.work.workDataOf
import com.idormy.sms.forwarder.R
import com.idormy.sms.forwarder.utils.DELAY_TIME_AFTER_SIM_READY
import com.idormy.sms.forwarder.utils.Log
import com.idormy.sms.forwarder.utils.SettingUtils
import com.idormy.sms.forwarder.utils.TASK_CONDITION_SIM
import com.idormy.sms.forwarder.utils.TaskWorker
@ -68,8 +68,8 @@ class SimStateReceiver : BroadcastReceiver() {
.setInitialDelay(duration, TimeUnit.MILLISECONDS)
.setInputData(
workDataOf(
TaskWorker.conditionType to TASK_CONDITION_SIM,
TaskWorker.msg to msg.toString().trimEnd(),
TaskWorker.CONDITION_TYPE to TASK_CONDITION_SIM,
TaskWorker.MSG to msg.toString().trimEnd(),
)
).build()
WorkManager.getInstance(context).enqueue(request)

View File

@ -111,7 +111,7 @@ class SmsReceiver : BroadcastReceiver() {
val request = OneTimeWorkRequestBuilder<SendWorker>().setInputData(
workDataOf(
Worker.sendMsgInfo to Gson().toJson(msgInfo)
Worker.SEND_MSG_INFO to Gson().toJson(msgInfo)
)
).build()
WorkManager.getInstance(context).enqueue(request)

View File

@ -1,13 +1,17 @@
package com.idormy.sms.forwarder.server.controller
import android.annotation.SuppressLint
import com.idormy.sms.forwarder.utils.Log
import com.idormy.sms.forwarder.entity.LocationInfo
import com.idormy.sms.forwarder.server.model.BaseRequest
import com.idormy.sms.forwarder.server.model.EmptyData
import com.idormy.sms.forwarder.utils.HttpServerUtils
import com.yanzhenjie.andserver.annotation.*
import java.util.*
import com.idormy.sms.forwarder.utils.Log
import com.yanzhenjie.andserver.annotation.CrossOrigin
import com.yanzhenjie.andserver.annotation.PostMapping
import com.yanzhenjie.andserver.annotation.RequestBody
import com.yanzhenjie.andserver.annotation.RequestMapping
import com.yanzhenjie.andserver.annotation.RequestMethod
import com.yanzhenjie.andserver.annotation.RestController
@SuppressLint("SimpleDateFormat")
@Suppress("PrivatePropertyName")

View File

@ -203,7 +203,7 @@ class LocationService : Service() {
) {
val locationWorkerRequest = OneTimeWorkRequestBuilder<LocationWorker>().setInputData(
workDataOf(
TaskWorker.conditionType to conditionType, "locationJsonOld" to locationJsonOld, "locationJsonNew" to locationJsonNew
TaskWorker.CONDITION_TYPE to conditionType, "locationJsonOld" to locationJsonOld, "locationJsonNew" to locationJsonNew
)
).build()

View File

@ -20,7 +20,7 @@ import com.idormy.sms.forwarder.utils.Worker
import com.idormy.sms.forwarder.workers.SendWorker
import com.xuexiang.xrouter.utils.TextUtils
import com.xuexiang.xutil.display.ScreenUtils
import java.util.*
import java.util.Date
@Suppress("PrivatePropertyName", "DEPRECATION")
@ -146,7 +146,7 @@ class NotificationService : NotificationListenerService() {
val request = OneTimeWorkRequestBuilder<SendWorker>().setInputData(
workDataOf(
Worker.sendMsgInfo to Gson().toJson(msgInfo),
Worker.SEND_MSG_INFO to Gson().toJson(msgInfo),
)
).build()
WorkManager.getInstance(applicationContext).enqueue(request)

View File

@ -1,25 +1,22 @@
package com.idormy.sms.forwarder.utils
object Worker {
const val sendMsgInfo = "send_msg_info"
const val updateLogs = "update_logs"
const val rule = "rule"
const val senderIndex = "sender_index"
const val msgId = "msg_id"
//const val ruleId = "rule_id"
//const val sendLogId = "send_log_id"
//const val sendSbnId = "send_sbn_id"
const val SEND_MSG_INFO = "send_msg_info"
const val UPDATE_LOGS = "update_logs"
const val RULE = "rule"
const val SENDER_INDEX = "sender_index"
const val MSG_ID = "msg_id"
}
object TaskWorker {
const val taskId = "task_id"
const val task = "task"
const val taskConditions = "task_conditions"
const val taskActions = "task_actions"
const val conditionType = "condition_type"
const val msg = "msg"
const val msgInfo = "msg_info"
const val action = "action"
const val TASK_ID = "task_id"
const val TASK = "task"
const val TASK_CONDITIONS = "task_conditions"
const val TASK_ACTIONS = "task_actions"
const val CONDITION_TYPE = "condition_type"
const val MSG = "msg"
const val MSG_INFO = "msg_info"
const val ACTION = "action"
}
//初始化相关

View File

@ -13,7 +13,7 @@ import javax.crypto.Cipher
*/
object RSACrypt {
private const val transformation = "RSA"
private const val TRANSFORMATION = "RSA"
private const val ENCRYPT_MAX_SIZE = 245
private const val DECRYPT_MAX_SIZE = 256
@ -25,7 +25,7 @@ object RSACrypt {
fun encryptByPrivateKey(input: String, privateKey: PrivateKey): String {
//创建cipher对象
val cipher = Cipher.getInstance(transformation)
val cipher = Cipher.getInstance(TRANSFORMATION)
//初始化cipher
cipher.init(Cipher.ENCRYPT_MODE, privateKey)
@ -70,7 +70,7 @@ object RSACrypt {
fun encryptByPublicKey(input: String, publicKey: PublicKey): String {
//创建cipher对象
val cipher = Cipher.getInstance(transformation)
val cipher = Cipher.getInstance(TRANSFORMATION)
//初始化cipher
cipher.init(Cipher.ENCRYPT_MODE, publicKey)
@ -114,7 +114,7 @@ object RSACrypt {
fun decryptByPrivateKey(input: String, privateKey: PrivateKey): String {
//创建cipher对象
val cipher = Cipher.getInstance(transformation)
val cipher = Cipher.getInstance(TRANSFORMATION)
//初始化cipher
cipher.init(Cipher.DECRYPT_MODE, privateKey)
@ -158,7 +158,7 @@ object RSACrypt {
fun decryptByPublicKey(input: String, publicKey: PublicKey): String {
//创建cipher对象
val cipher = Cipher.getInstance(transformation)
val cipher = Cipher.getInstance(TRANSFORMATION)
//初始化cipher
cipher.init(Cipher.DECRYPT_MODE, publicKey)

View File

@ -11,8 +11,38 @@ import com.idormy.sms.forwarder.database.entity.MsgAndLogs
import com.idormy.sms.forwarder.database.entity.Rule
import com.idormy.sms.forwarder.entity.MsgInfo
import com.idormy.sms.forwarder.entity.result.SendResponse
import com.idormy.sms.forwarder.entity.setting.*
import com.idormy.sms.forwarder.utils.sender.*
import com.idormy.sms.forwarder.entity.setting.BarkSetting
import com.idormy.sms.forwarder.entity.setting.DingtalkGroupRobotSetting
import com.idormy.sms.forwarder.entity.setting.DingtalkInnerRobotSetting
import com.idormy.sms.forwarder.entity.setting.EmailSetting
import com.idormy.sms.forwarder.entity.setting.FeishuAppSetting
import com.idormy.sms.forwarder.entity.setting.FeishuSetting
import com.idormy.sms.forwarder.entity.setting.GotifySetting
import com.idormy.sms.forwarder.entity.setting.PushplusSetting
import com.idormy.sms.forwarder.entity.setting.ServerchanSetting
import com.idormy.sms.forwarder.entity.setting.SmsSetting
import com.idormy.sms.forwarder.entity.setting.SocketSetting
import com.idormy.sms.forwarder.entity.setting.TelegramSetting
import com.idormy.sms.forwarder.entity.setting.UrlSchemeSetting
import com.idormy.sms.forwarder.entity.setting.WebhookSetting
import com.idormy.sms.forwarder.entity.setting.WeworkAgentSetting
import com.idormy.sms.forwarder.entity.setting.WeworkRobotSetting
import com.idormy.sms.forwarder.utils.sender.BarkUtils
import com.idormy.sms.forwarder.utils.sender.DingtalkGroupRobotUtils
import com.idormy.sms.forwarder.utils.sender.DingtalkInnerRobotUtils
import com.idormy.sms.forwarder.utils.sender.EmailUtils
import com.idormy.sms.forwarder.utils.sender.FeishuAppUtils
import com.idormy.sms.forwarder.utils.sender.FeishuUtils
import com.idormy.sms.forwarder.utils.sender.GotifyUtils
import com.idormy.sms.forwarder.utils.sender.PushplusUtils
import com.idormy.sms.forwarder.utils.sender.ServerchanUtils
import com.idormy.sms.forwarder.utils.sender.SmsUtils
import com.idormy.sms.forwarder.utils.sender.SocketUtils
import com.idormy.sms.forwarder.utils.sender.TelegramUtils
import com.idormy.sms.forwarder.utils.sender.UrlSchemeUtils
import com.idormy.sms.forwarder.utils.sender.WebhookUtils
import com.idormy.sms.forwarder.utils.sender.WeworkAgentUtils
import com.idormy.sms.forwarder.utils.sender.WeworkRobotUtils
import com.idormy.sms.forwarder.workers.SendLogicWorker
import com.idormy.sms.forwarder.workers.SendWorker
import com.idormy.sms.forwarder.workers.UpdateLogsWorker
@ -34,7 +64,7 @@ object SendUtils {
val request = OneTimeWorkRequestBuilder<SendWorker>().setInputData(
workDataOf(
Worker.sendMsgInfo to Gson().toJson(msgInfo)
Worker.SEND_MSG_INFO to Gson().toJson(msgInfo)
)
).build()
WorkManager.getInstance(XUtil.getContext()).enqueue(request)
@ -201,11 +231,11 @@ object SendUtils {
if (senderIndex < rule.senderList.count() - 1 && (rule.senderLogic == SENDER_LOGIC_ALL || (status == 2 && rule.senderLogic == SENDER_LOGIC_UNTIL_FAIL) || (status == 0 && rule.senderLogic == SENDER_LOGIC_UNTIL_SUCCESS))) {
val request = OneTimeWorkRequestBuilder<SendLogicWorker>().setInputData(
workDataOf(
Worker.sendMsgInfo to Gson().toJson(msgInfo),
Worker.SEND_MSG_INFO to Gson().toJson(msgInfo),
//Worker.ruleId to rule.id,
Worker.rule to Gson().toJson(rule),
Worker.senderIndex to senderIndex + 1,
Worker.msgId to msgId,
Worker.RULE to Gson().toJson(rule),
Worker.SENDER_INDEX to senderIndex + 1,
Worker.MSG_ID to msgId,
)
).build()
WorkManager.getInstance(XUtil.getContext()).enqueue(request)
@ -231,7 +261,7 @@ object SendUtils {
val sendResponse = SendResponse(logId, status, response)
val request = OneTimeWorkRequestBuilder<UpdateLogsWorker>().setInputData(
workDataOf(
Worker.updateLogs to Gson().toJson(sendResponse)
Worker.UPDATE_LOGS to Gson().toJson(sendResponse)
)
).build()
WorkManager.getInstance(XUtil.getContext()).enqueue(request)

View File

@ -20,7 +20,7 @@ class CronJobScheduler {
fun scheduleTask(task: Task) {
val currentTimeMillis = System.currentTimeMillis()
val delayInMillis = task.nextExecTime.time / 1000 * 1000 - currentTimeMillis
val inputData = Data.Builder().putLong(TaskWorker.taskId, task.id).build()
val inputData = Data.Builder().putLong(TaskWorker.TASK_ID, task.id).build()
val taskRequest = if (delayInMillis <= 0L) {
Log.d(TAG, "TASK-${task.id}立即执行delayInMillis = $delayInMillis")
OneTimeWorkRequestBuilder<CronWorker>()

View File

@ -68,10 +68,10 @@ class ActionWorker(context: Context, params: WorkerParameters) : CoroutineWorker
private var taskId = -1L
override suspend fun doWork(): Result {
taskId = inputData.getLong(TaskWorker.taskId, -1L)
val taskConditionsJson = inputData.getString(TaskWorker.taskConditions)
val taskActionsJson = inputData.getString(TaskWorker.taskActions)
val msgInfoJson = inputData.getString(TaskWorker.msgInfo)
taskId = inputData.getLong(TaskWorker.TASK_ID, -1L)
val taskConditionsJson = inputData.getString(TaskWorker.TASK_CONDITIONS)
val taskActionsJson = inputData.getString(TaskWorker.TASK_ACTIONS)
val msgInfoJson = inputData.getString(TaskWorker.MSG_INFO)
Log.d(TAG, "taskId: $taskId, taskActionsJson: $taskActionsJson, msgInfoJson: $msgInfoJson")
if (taskId == -1L || taskActionsJson.isNullOrEmpty() || msgInfoJson.isNullOrEmpty()) {
Log.d(TAG, "taskId is -1L or actionSetting is null")

View File

@ -27,7 +27,7 @@ class BatteryWorker(context: Context, params: WorkerParameters) : CoroutineWorke
override suspend fun doWork(): Result {
try {
when (val conditionType = inputData.getInt(TaskWorker.conditionType, -1)) {
when (val conditionType = inputData.getInt(TaskWorker.CONDITION_TYPE, -1)) {
TASK_CONDITION_BATTERY -> {
val status = inputData.getInt("status", -1)
@ -72,9 +72,9 @@ class BatteryWorker(context: Context, params: WorkerParameters) : CoroutineWorke
//TODO: 组装消息体 && 执行具体任务
val msgInfo = MsgInfo("task", task.name, msg, Date(), task.name)
val actionData = Data.Builder()
.putLong(TaskWorker.taskId, task.id)
.putString(TaskWorker.taskActions, task.actions)
.putString(TaskWorker.msgInfo, Gson().toJson(msgInfo))
.putLong(TaskWorker.TASK_ID, task.id)
.putString(TaskWorker.TASK_ACTIONS, task.actions)
.putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo))
.build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
@ -131,9 +131,9 @@ class BatteryWorker(context: Context, params: WorkerParameters) : CoroutineWorke
//TODO: 组装消息体 && 执行具体任务
val msgInfo = MsgInfo("task", task.name, msg, Date(), task.description)
val actionData = Data.Builder()
.putLong(TaskWorker.taskId, task.id)
.putString(TaskWorker.taskActions, task.actions)
.putString(TaskWorker.msgInfo, Gson().toJson(msgInfo))
.putLong(TaskWorker.TASK_ID, task.id)
.putString(TaskWorker.TASK_ACTIONS, task.actions)
.putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo))
.build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)

View File

@ -25,7 +25,7 @@ class CronWorker(context: Context, params: WorkerParameters) : CoroutineWorker(c
override suspend fun doWork(): Result {
try {
val taskId = inputData.getLong(TaskWorker.taskId, -1L)
val taskId = inputData.getLong(TaskWorker.TASK_ID, -1L)
if (taskId == -1L) {
Log.d(TAG, "taskId is -1L")
return Result.failure()
@ -85,7 +85,7 @@ class CronWorker(context: Context, params: WorkerParameters) : CoroutineWorker(c
//TODO: 组装消息体 && 执行具体任务
val msgInfo = MsgInfo("task", task.name, task.description, Date(), task.name)
val actionData = Data.Builder().putLong(TaskWorker.taskId, task.id).putString(TaskWorker.taskActions, task.actions).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, task.id).putString(TaskWorker.TASK_ACTIONS, task.actions).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)

View File

@ -29,7 +29,7 @@ class LocationWorker(context: Context, params: WorkerParameters) : CoroutineWork
override suspend fun doWork(): Result {
try {
val conditionType = inputData.getInt(TaskWorker.conditionType, -1)
val conditionType = inputData.getInt(TaskWorker.CONDITION_TYPE, -1)
val locationJsonOld = inputData.getString("locationJsonOld")
val locationJsonNew = inputData.getString("locationJsonNew")
Log.d(TAG, "conditionType = $conditionType, locationJsonOld = $locationJsonOld, locationJsonNew = $locationJsonNew")
@ -103,7 +103,7 @@ class LocationWorker(context: Context, params: WorkerParameters) : CoroutineWork
//TODO: 组装消息体 && 执行具体任务
val msgInfo = MsgInfo("task", task.name, locationNew.toString(), Date(), description)
val actionData = Data.Builder().putLong(TaskWorker.taskId, task.id).putString(TaskWorker.taskActions, task.actions).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, task.id).putString(TaskWorker.TASK_ACTIONS, task.actions).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
}
@ -166,7 +166,7 @@ class LocationWorker(context: Context, params: WorkerParameters) : CoroutineWork
//TODO: 组装消息体 && 执行具体任务
val msgInfo = MsgInfo("task", task.name, locationNew.toString(), Date(), description)
val actionData = Data.Builder().putLong(TaskWorker.taskId, task.id).putString(TaskWorker.taskActions, task.actions).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, task.id).putString(TaskWorker.TASK_ACTIONS, task.actions).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
}

View File

@ -25,8 +25,8 @@ class LockScreenWorker(context: Context, params: WorkerParameters) : CoroutineWo
override suspend fun doWork(): Result {
try {
val conditionType = inputData.getInt(TaskWorker.conditionType, -1)
val action = inputData.getString(TaskWorker.action)
val conditionType = inputData.getInt(TaskWorker.CONDITION_TYPE, -1)
val action = inputData.getString(TaskWorker.ACTION)
val taskList = Core.task.getByType(conditionType)
for (task in taskList) {
@ -71,10 +71,10 @@ class LockScreenWorker(context: Context, params: WorkerParameters) : CoroutineWo
Log.d(TAG, "TASK-${task.id}duration = $duration milliseconds")
val msgInfo = MsgInfo("task", task.name, lockScreenSetting.description, Date(), task.description)
val actionData = Data.Builder()
.putLong(TaskWorker.taskId, task.id)
.putString(TaskWorker.taskConditions, if (lockScreenSetting.checkAgain && duration > 0) task.conditions else "")
.putString(TaskWorker.taskActions, task.actions)
.putString(TaskWorker.msgInfo, Gson().toJson(msgInfo))
.putLong(TaskWorker.TASK_ID, task.id)
.putString(TaskWorker.TASK_CONDITIONS, if (lockScreenSetting.checkAgain && duration > 0) task.conditions else "")
.putString(TaskWorker.TASK_ACTIONS, task.actions)
.putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo))
.build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>()
.setInitialDelay(duration, TimeUnit.MILLISECONDS) //TODO: 延迟时间不够精确

View File

@ -40,7 +40,7 @@ class NetworkWorker(context: Context, params: WorkerParameters) : CoroutineWorke
TaskUtils.ipv6 = if (ipv6Pattern.matches(ipv6)) ipv6 else ""
Log.d(TAG, "ipv4 = $ipv4, ipv6 = $ipv6")
val conditionType = inputData.getInt(TaskWorker.conditionType, -1)
val conditionType = inputData.getInt(TaskWorker.CONDITION_TYPE, -1)
val taskList = Core.task.getByType(conditionType)
for (task in taskList) {
Log.d(TAG, "task = $task")
@ -131,7 +131,7 @@ class NetworkWorker(context: Context, params: WorkerParameters) : CoroutineWorke
//TODO: 组装消息体 && 执行具体任务
val msgInfo = MsgInfo("task", task.name, msg.toString().trimEnd(), Date(), task.description)
val actionData = Data.Builder().putLong(TaskWorker.taskId, task.id).putString(TaskWorker.taskActions, task.actions).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, task.id).putString(TaskWorker.TASK_ACTIONS, task.actions).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
}

View File

@ -20,12 +20,12 @@ class SendLogicWorker(
) : CoroutineWorker(context, workerParams) {
override suspend fun doWork(): Result = withContext(Dispatchers.IO) {
val msgInfoJson = inputData.getString(Worker.sendMsgInfo)
val msgInfoJson = inputData.getString(Worker.SEND_MSG_INFO)
val msgInfo = Gson().fromJson(msgInfoJson, MsgInfo::class.java) ?: return@withContext Result.failure()
//val ruleId = inputData.getLong(Worker.ruleId, 0L)
val ruleJson = inputData.getString(Worker.rule)
val senderIndex = inputData.getInt(Worker.senderIndex, 0)
val msgId = inputData.getLong(Worker.msgId, 0L)
val ruleJson = inputData.getString(Worker.RULE)
val senderIndex = inputData.getInt(Worker.SENDER_INDEX, 0)
val msgId = inputData.getLong(Worker.MSG_ID, 0L)
Log.d("SendLogicWorker", "msgInfoJson: $msgInfoJson, ruleJson: $ruleJson, senderIndex: $senderIndex, msgId: $msgId")
val rule = Gson().fromJson(ruleJson, Rule::class.java) ?: return@withContext Result.failure()

View File

@ -12,14 +12,20 @@ import com.idormy.sms.forwarder.database.entity.Logs
import com.idormy.sms.forwarder.database.entity.Msg
import com.idormy.sms.forwarder.database.entity.Rule
import com.idormy.sms.forwarder.entity.MsgInfo
import com.idormy.sms.forwarder.utils.*
import com.idormy.sms.forwarder.utils.DataProvider
import com.idormy.sms.forwarder.utils.HistoryUtils
import com.idormy.sms.forwarder.utils.Log
import com.idormy.sms.forwarder.utils.SendUtils
import com.idormy.sms.forwarder.utils.SettingUtils
import com.idormy.sms.forwarder.utils.Worker
import com.xuexiang.xutil.resource.ResUtils
import com.xuexiang.xutil.security.CipherUtils
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
import java.text.ParsePosition
import java.text.SimpleDateFormat
import java.util.*
import java.util.Calendar
import java.util.Date
class SendWorker(
context: Context,
@ -64,7 +70,7 @@ class SendWorker(
}
}
val msgInfoJson = inputData.getString(Worker.sendMsgInfo)
val msgInfoJson = inputData.getString(Worker.SEND_MSG_INFO)
val msgInfo = Gson().fromJson(msgInfoJson, MsgInfo::class.java)
// 过滤重复消息机制

View File

@ -29,8 +29,8 @@ class SimWorker(context: Context, params: WorkerParameters) : CoroutineWorker(co
override suspend fun doWork(): Result {
try {
val conditionType = inputData.getInt(TaskWorker.conditionType, -1)
val simStateStr = inputData.getString(TaskWorker.msg)
val conditionType = inputData.getInt(TaskWorker.CONDITION_TYPE, -1)
val simStateStr = inputData.getString(TaskWorker.MSG)
val taskList = Core.task.getByType(conditionType)
for (task in taskList) {
Log.d(TAG, "task = $task")
@ -83,7 +83,7 @@ class SimWorker(context: Context, params: WorkerParameters) : CoroutineWorker(co
//TODO: 组装消息体 && 执行具体任务
val msgInfo = MsgInfo("task", task.name, msg.toString().trimEnd(), Date(), task.description)
val actionData = Data.Builder().putLong(TaskWorker.taskId, task.id).putString(TaskWorker.taskActions, task.actions).putString(TaskWorker.msgInfo, Gson().toJson(msgInfo)).build()
val actionData = Data.Builder().putLong(TaskWorker.TASK_ID, task.id).putString(TaskWorker.TASK_ACTIONS, task.actions).putString(TaskWorker.MSG_INFO, Gson().toJson(msgInfo)).build()
val actionRequest = OneTimeWorkRequestBuilder<ActionWorker>().setInputData(actionData).build()
WorkManager.getInstance().enqueue(actionRequest)
}

View File

@ -20,7 +20,7 @@ class UpdateLogsWorker(
) : CoroutineWorker(context, workerParams) {
override suspend fun doWork(): Result = withContext(Dispatchers.IO) {
try {
val sendResponseJson = inputData.getString(Worker.updateLogs)
val sendResponseJson = inputData.getString(Worker.UPDATE_LOGS)
Log.d("UpdateLogsWorker", "UpdateLogsWorker sendResponseJson: $sendResponseJson")
val sendResponse = Gson().fromJson(sendResponseJson, SendResponse::class.java)
if (sendResponse.logId == 0L) {

View File

@ -42,7 +42,7 @@
<string name="menu_about">关于软件</string>
<string name="about_app_version">软件版本:%s</string>
<string name="about_app_version_tips" formatted="false">版本名称:%s\n版本代码%s\n构建时间%s\nGit提交ID:%s</string>
<string name="about_app_version_tips" formatted="false">版本名称:%s\n版本代码%s\n构建时间%s\nGit提交ID%s</string>
<string name="about_cache_size">缓存大小:%s</string>
<string name="about_frpc_version">Frpc版本%s</string>
<string name="about_item_wechat_miniprogram" formatted="false">微信小程序</string>

View File

@ -42,7 +42,7 @@
<string name="menu_about">关于软件</string>
<string name="about_app_version">软件版本:%s</string>
<string name="about_app_version_tips" formatted="false">版本名称:%s\n版本代码%s\n构建时间%s\nGit提交ID:%s</string>
<string name="about_app_version_tips" formatted="false">版本名称:%s\n版本代码%s\n构建时间%s\nGit提交ID%s</string>
<string name="about_cache_size">缓存大小:%s</string>
<string name="about_frpc_version">Frpc版本%s</string>
<string name="about_item_wechat_miniprogram" formatted="false">微信小程序</string>