mirror of
https://github.com/pppscn/SmsForwarder
synced 2025-08-03 09:27:41 +08:00
转发到其他手机短信取消延时重试(没有实际意义)
This commit is contained in:
parent
447b164759
commit
c4effff4cb
@ -4,16 +4,9 @@ import android.os.Handler;
|
|||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import com.idormy.sms.forwarder.utils.LogUtil;
|
import com.idormy.sms.forwarder.utils.LogUtil;
|
||||||
import com.idormy.sms.forwarder.utils.SettingUtil;
|
|
||||||
import com.idormy.sms.forwarder.utils.SimUtil;
|
import com.idormy.sms.forwarder.utils.SimUtil;
|
||||||
import com.idormy.sms.forwarder.utils.SmsUtil;
|
import com.idormy.sms.forwarder.utils.SmsUtil;
|
||||||
|
|
||||||
import java.util.concurrent.TimeUnit;
|
|
||||||
|
|
||||||
import io.reactivex.rxjava3.core.Observable;
|
|
||||||
import io.reactivex.rxjava3.core.ObservableEmitter;
|
|
||||||
|
|
||||||
@SuppressWarnings("ResultOfMethodCallIgnored")
|
|
||||||
public class SenderSmsMsg extends SenderBaseMsg {
|
public class SenderSmsMsg extends SenderBaseMsg {
|
||||||
|
|
||||||
static final String TAG = "SenderSmsMsg";
|
static final String TAG = "SenderSmsMsg";
|
||||||
@ -23,35 +16,16 @@ public class SenderSmsMsg extends SenderBaseMsg {
|
|||||||
|
|
||||||
//TODO:simSlot转subId
|
//TODO:simSlot转subId
|
||||||
final int subId = SimUtil.getSubscriptionIdBySimId(simSlot);
|
final int subId = SimUtil.getSubscriptionIdBySimId(simSlot);
|
||||||
|
String res = SmsUtil.sendSms(subId, mobiles, text);
|
||||||
|
|
||||||
Observable
|
//TODO:粗略解析是否发送成功
|
||||||
.create((ObservableEmitter<Object> emitter) -> {
|
if (res == null) {
|
||||||
Toast(handError, TAG, "开始发送短信...");
|
LogUtil.updateLog(logId, 1, "发送成功");
|
||||||
|
} else {
|
||||||
|
LogUtil.updateLog(logId, 0, res);
|
||||||
|
Toast(handError, TAG, "短信发送失败");
|
||||||
|
}
|
||||||
|
|
||||||
String res = SmsUtil.sendSms(subId, mobiles, text);
|
|
||||||
|
|
||||||
//TODO:粗略解析是否发送成功
|
|
||||||
if (res == null) {
|
|
||||||
LogUtil.updateLog(logId, 1, "发送成功");
|
|
||||||
} else {
|
|
||||||
LogUtil.updateLog(logId, 0, res);
|
|
||||||
Toast(handError, TAG, "短信发送失败");
|
|
||||||
emitter.onError(new RuntimeException("短信发送异常..."));
|
|
||||||
}
|
|
||||||
|
|
||||||
}).retryWhen((Observable<Throwable> errorObservable) -> errorObservable
|
|
||||||
.zipWith(Observable.just(
|
|
||||||
SettingUtil.getRetryDelayTime(1),
|
|
||||||
SettingUtil.getRetryDelayTime(2),
|
|
||||||
SettingUtil.getRetryDelayTime(3),
|
|
||||||
SettingUtil.getRetryDelayTime(4),
|
|
||||||
SettingUtil.getRetryDelayTime(5)
|
|
||||||
), (Throwable e, Integer time) -> time)
|
|
||||||
.flatMap((Integer delay) -> {
|
|
||||||
Toast(handError, TAG, "短信发送异常," + delay + "秒后重试");
|
|
||||||
return Observable.timer(delay, TimeUnit.SECONDS);
|
|
||||||
}))
|
|
||||||
.subscribe(System.out::println);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user