Compare commits

...

5 Commits

Author SHA1 Message Date
ZhanGSKen f7968e55c6 <powerbell>APK 15.15.23 release Publish. 2026-07-18 05:24:20 +08:00
MiMo 97f42054d2 <powerbell> 优化 ChargeMailNotify 开关联动逻辑
1. SettingsActivity 充电邮件通知开关
   - 开启时:先 stopService 再 startService 重启 ControlCenterService
   - 关闭时:停止 RemindThread 并关闭悬浮窗

2. ControlCenterService 服务销毁
   - onDestroy 中关闭 ChargeMailNotifyFloatWindow 悬浮窗
   - 资源释放顺序:前台服务 → 线程 → 悬浮窗 → 广播接收器 → Handler → 通知
2026-07-18 05:21:48 +08:00
ZhanGSKen 184ea4fd71 <powerbell>APK 15.15.22 release Publish. 2026-07-18 04:46:59 +08:00
MiMo 526fa6c241 - 更新 libaes 依赖至 15.20.21
- 新增 JavaMail/SMTP ProGuard 混淆规则,防止 R8 混淆导致 SMTP 邮件发送失败
- 保留 javax.mail、com.sun.mail 等核心邮件类不被混淆
2026-07-18 04:44:37 +08:00
MiMo a038a2db97 <powerbell>APK 15.15.20 release Publish. 2026-07-18 03:20:47 +08:00
5 changed files with 31 additions and 8 deletions
+1 -1
View File
@@ -84,7 +84,7 @@ dependencies {
//api 'androidx.fragment:fragment:1.1.0'
// WinBoLL库 nexus.winboll.cc 地址
api 'cc.winboll.studio:libaes:15.20.20'
api 'cc.winboll.studio:libaes:15.20.21'
api 'cc.winboll.studio:libappbase:15.20.34'
// WinBoLL备用库 jitpack.io 地址
+4 -4
View File
@@ -1,8 +1,8 @@
#Created by .winboll/winboll_app_build.gradle
#Fri Jul 17 22:37:50 HKT 2026
stageCount=20
#Sat Jul 18 05:24:20 HKT 2026
stageCount=24
libraryProject=
baseVersion=15.15
publishVersion=15.15.19
publishVersion=15.15.23
buildCount=0
baseBetaVersion=15.15.20
baseBetaVersion=15.15.24
+16
View File
@@ -60,6 +60,22 @@
-dontwarn java.util.function.**
# ============================== 第三方框架专项规则 ==============================
# JavaMail / SMTP 邮件发送(APPMSGMailUtils 依赖,防止 R8 混淆导致 SMTP 发送失败)
-keep class javax.mail.** { *; }
-keep class javax.mail.internet.** { *; }
-keep class javax.activation.** { *; }
-keep class com.sun.mail.** { *; }
-keep class com.sun.mail.util.** { *; }
-keep class com.sun.mail.smtp.** { *; }
-keep class com.sun.mail.pop3.** { *; }
-keep class com.sun.mail.imap.** { *; }
-dontwarn javax.mail.**
-dontwarn javax.activation.**
-dontwarn com.sun.mail.**
-dontwarn java.awt.**
-dontwarn javax.naming.**
-dontwarn javax.net.ssl.**
# OkHttp 4.4.1(米盟广告请求依赖,完善Lambda兼容)
-keep class okhttp3.** { *; }
-keep interface okhttp3.** { *; }
@@ -22,6 +22,7 @@ import cc.winboll.studio.powerbell.models.ThoughtfulServiceBean;
import cc.winboll.studio.powerbell.utils.ChargeMailNotifyHelper;
import cc.winboll.studio.powerbell.utils.ChargeMailNotifyFloatWindow;
import cc.winboll.studio.powerbell.threads.RemindThread;
import cc.winboll.studio.powerbell.services.ControlCenterService;
import android.widget.Switch;
import java.lang.reflect.Field;
@@ -262,8 +263,13 @@ public class SettingsActivity extends WinBoLLActivity implements IWinBoLLActivit
LogUtils.d(TAG, "onChargeMailNotifySwitchChanged: 充电邮件通知开关状态=" + isChecked);
ChargeMailNotifyHelper.setEnabled(this, isChecked);
updateSMTPConfigViewEnabled(isChecked);
// 关闭时停止RemindThread并关闭悬浮窗
if (!isChecked) {
if (isChecked) {
// 开启时重启ControlCenterService
LogUtils.d(TAG, "onChargeMailNotifySwitchChanged: 开启充电邮件通知,重启ControlCenterService");
stopService(new Intent(this, ControlCenterService.class));
startService(new Intent(this, ControlCenterService.class));
} else {
// 关闭时停止RemindThread并关闭悬浮窗
LogUtils.d(TAG, "onChargeMailNotifySwitchChanged: 关闭充电邮件通知,停止RemindThread");
RemindThread.stopRemindThread();
LogUtils.d(TAG, "onChargeMailNotifySwitchChanged: 关闭充电邮件通知悬浮窗");
@@ -95,9 +95,10 @@ public class ControlCenterService extends Service {
LogUtils.d(TAG, "onDestroy() 执行:服务销毁流程启动");
super.onDestroy();
// 资源释放顺序:前台服务 → 线程 → 广播接收器 → Handler → 通知 → 引用(避免内存泄漏)
// 资源释放顺序:前台服务 → 线程 → 悬浮窗 → 广播接收器 → Handler → 通知 → 引用(避免内存泄漏)
stopForegroundService();
RemindThread.stopRemindThread();
ChargeMailNotifyFloatWindow.dismissWindow();
releaseBroadcastReceiver();
destroyHandler();
releaseNotificationResource();