fix: 移除前台服务/电池白名单/AlarmManager,恢复旧版MQTT直连方案
定制ROM+Launcher应用不会被系统杀死,保活机制是多余的耗电源头。 回到和旧版一样的方案:SplashFragment直连MQTT + Paho自动重连。 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,12 +1,7 @@
|
||||
package com.xiaoqu.watch.app
|
||||
|
||||
import android.content.Intent
|
||||
import android.content.pm.ActivityInfo
|
||||
import android.net.Uri
|
||||
import android.os.Build
|
||||
import android.os.Bundle
|
||||
import android.os.PowerManager
|
||||
import android.provider.Settings
|
||||
import android.view.MotionEvent
|
||||
import android.view.View
|
||||
import androidx.navigation.findNavController
|
||||
@@ -98,9 +93,6 @@ class MainActivity : AppCompatActivity() {
|
||||
// 监听 MQTT type=1 → 处理通知 + 显示横幅
|
||||
observeMqttMessages()
|
||||
|
||||
// 请求电池优化白名单(绕过 Doze 模式限制)
|
||||
requestBatteryWhitelist()
|
||||
|
||||
Timber.d("MainActivity created")
|
||||
}
|
||||
|
||||
@@ -235,31 +227,6 @@ class MainActivity : AppCompatActivity() {
|
||||
}
|
||||
}
|
||||
|
||||
// ===== 电池优化白名单 =====
|
||||
|
||||
/**
|
||||
* 请求加入电池优化白名单(Doze 模式下允许后台网络访问)
|
||||
* 已在白名单中则跳过,避免重复弹窗
|
||||
*/
|
||||
private fun requestBatteryWhitelist() {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
||||
val pm = getSystemService(PowerManager::class.java)
|
||||
if (!pm.isIgnoringBatteryOptimizations(packageName)) {
|
||||
try {
|
||||
val intent = Intent(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS).apply {
|
||||
data = Uri.parse("package:$packageName")
|
||||
}
|
||||
startActivity(intent)
|
||||
Timber.d("电池白名单: 已请求")
|
||||
} catch (e: Exception) {
|
||||
Timber.w(e, "电池白名单: 请求失败")
|
||||
}
|
||||
} else {
|
||||
Timber.d("电池白名单: 已在白名单中")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ===== OTA 更新 =====
|
||||
|
||||
/** 设置更新弹窗按钮回调 */
|
||||
|
||||
Reference in New Issue
Block a user