改进低电量预警方式

pull/67/head
pppscn 3 years ago
parent de5e8d2f8b
commit 0727ef8bf0

@ -219,6 +219,7 @@
+ [v1.7.3] 修复“设置匹配模式”默认选择BUG & 转发到webhook时返回http状态200即为成功 & 转发到其他手机短信支持长短信合并
+ [v1.7.4] 修复转发企业微信群机器人碰到"被截断问题 & 转发到webhook时忽略ssl证书校验提高自建服务端兼容性 & 转发telegram时将 # 替换为 井,避免被当作标签 & 隐私保护,发送方设置中敏感信息(密码/token/secret等)用星号显示 & 更新友盟基础组件库 & 解决“设置页面关闭卡槽信息,同时使用默认模板时,发送消息卡槽信息仍显示”
+ [v2.0.0] 来电提醒转发 & 接口请求失败后延时重试5次可配置间隔时间& 转发到飞书机器人 & 自定义 Schemeforwarder://main用于唤起App & 低电量预警 & 重新梳理代码消灭waring& Bark增加支持分组 & 引入Lombok & 升级gradle版本 & 增加电池优化白名单设置和权限 & 转发到webhook增加支持自定义post数据并支持Json数据提交
+ [v2.0.1] 改进低电量预警方式按需设置一下转发规则不再遍历所有发送方【号码88888888、内容当前剩余电量xx%已经到达低电量预警阈值请及时充电、卡槽sim1】
--------

@ -18,6 +18,7 @@ import java.util.Date;
import java.util.List;
public class PhoneStateReceiver extends BroadcastReceiver {
private static final String TAG = "PhoneStateReceiver";
private TelephonyManager mTelephonyManager;
@Override
@ -33,7 +34,7 @@ public class PhoneStateReceiver extends BroadcastReceiver {
(TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
}
int state = mTelephonyManager.getCallState();
Log.d("PhoneStateReceiver", "onReceive state=" + state + " phoneNumber = " + phoneNumber);
Log.d(TAG, "onReceive state=" + state + " phoneNumber = " + phoneNumber);
switch (state) {
case TelephonyManager.CALL_STATE_RINGING:
if (!TextUtils.isEmpty(phoneNumber)) {
@ -60,7 +61,7 @@ public class PhoneStateReceiver extends BroadcastReceiver {
name = context.getString(R.string.unknown_number);
}
SmsVo smsVo = new SmsVo(phoneNumber, name + context.getString(R.string.calling), new Date(), name);
Log.d("PhoneStateReceiver", "send_msg" + smsVo.toString());
Log.d(TAG, "send_msg" + smsVo.toString());
SendUtil.send_msg(context, smsVo, 1);
}
}

@ -9,7 +9,7 @@ import android.util.Log;
public class SenderBaseMsg {
public static void Toast(final Handler handError, final String Tag, String data) {
public static void Toast(Handler handError, String Tag, String data) {
Log.i(Tag, data);
if (handError != null) {
Message msg = new Message();

@ -6,6 +6,7 @@ import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.Service;
import android.content.Context;
import android.content.ContextWrapper;
import android.content.Intent;
import android.content.IntentFilter;
@ -19,17 +20,13 @@ import androidx.annotation.Nullable;
import com.idormy.sms.forwarder.MainActivity;
import com.idormy.sms.forwarder.MyApplication;
import com.idormy.sms.forwarder.R;
import com.idormy.sms.forwarder.model.LogModel;
import com.idormy.sms.forwarder.model.SenderModel;
import com.idormy.sms.forwarder.model.vo.SmsVo;
import com.idormy.sms.forwarder.sender.SendUtil;
import com.idormy.sms.forwarder.sender.SenderUtil;
import com.idormy.sms.forwarder.utils.LogUtil;
import com.idormy.sms.forwarder.utils.PhoneUtils;
import com.idormy.sms.forwarder.utils.SettingUtil;
import java.util.Date;
import java.util.List;
import java.util.Timer;
import java.util.TimerTask;
@ -88,26 +85,26 @@ public class FrontService extends Service {
// 低电量预警
final int[] alarmTimes = {0}; //通知次数只通知2次
SenderUtil.init(this);
Context context1 = this;
SenderUtil.init(context1);
new Timer().schedule(new TimerTask() {
@Override
public void run() {
int batteryLevel = getBatteryLevel();
//System.out.println("当前剩余电量:" + batteryLevel + "%");
System.out.println("当前剩余电量:" + batteryLevel + "%");
int batteryLevelAlarm = SettingUtil.getBatteryLevelAlarm();
if (alarmTimes[0] <= 1 && batteryLevelAlarm > 0 && batteryLevelAlarm <= 100 && batteryLevel == batteryLevelAlarm) {
Date date = new Date();
String msg = "当前剩余电量:" + batteryLevel + "%,已经到达低电量预警阈值,请及时充电!";
System.out.println(msg);
SmsVo smsVo = new SmsVo("888888", msg, date, "");
List<SenderModel> senderModels = SenderUtil.getSender(null, null);
for (SenderModel senderModel : senderModels
) {
long ruleId = 0;
long logId = LogUtil.addLog(new LogModel(smsVo.getMobile(), smsVo.getContent(), smsVo.getSimInfo(), ruleId));
SendUtil.senderSendMsgNoHandError(smsVo, senderModel, logId);
if (alarmTimes[0] <= 1 && batteryLevelAlarm > 0 && batteryLevelAlarm <= 100 && (batteryLevel == batteryLevelAlarm || batteryLevel == batteryLevelAlarm - 1)) {
try {
alarmTimes[0] = alarmTimes[0] + 1;
SmsVo smsVo = new SmsVo("88888888",
"当前剩余电量:" + batteryLevel + "%,已经到达低电量预警阈值,请及时充电!",
new Date(),
"低电量预警");
Log.d(TAG, "send_msg" + smsVo.toString());
SendUtil.send_msg(context1, smsVo, 1);
} catch (Exception e) {
Log.e(TAG, "getLog e:" + e.getMessage());
}
alarmTimes[0] = alarmTimes[0] + 1;
}
if (batteryLevelAlarm > 0 && batteryLevelAlarm <= 100 && batteryLevel > batteryLevelAlarm) {

@ -1,3 +1,3 @@
#Fri Jul 16 10:33:23 CST 2021
versionName=2.0.0
versionCode=26
versionName=2.0.1
versionCode=27

Loading…
Cancel
Save