Skip to content

🛡️ KeepAlive(应用保活)模块 · 开发者指南


🧠 模块介绍

KeepAlive(应用保活)模块,用于批量配置、管理和查询设备应用的保活状态,支持优先级策略,保障关键应用持续运行。


🛠️ PanelSDK 初始化

java
// 推荐在 Application 或 Activity 中初始化,确保全局唯一
PanelSDK panelSDK = new PanelSDK(this);

🧩 核心方法 · 专业解读

🔵 EnableKeepAlive — 设置应用保活开关

java
int EnableKeepAlive(boolean enable)
参数说明
参数类型说明
enablebooleantrue 启用,false 关闭
返回值说明
返回值说明
0设置成功
其他参考错误码表
典型场景代码
java
// 启用保活功能
int result = panelSDK.EnableKeepAlive(true);
if (result == 0) {
    // 🎉 启用成功
    Log.d("KeepAlive", "保活功能已启用");
} else {
    // ❌ 启用失败
    Log.e("KeepAlive", "启用失败,错误码: " + result);
}

🟢 isKeepAliveOpen — 判断是否开启保活

java
boolean isKeepAliveOpen()
返回值说明
返回值说明
true/falsetrue 启用,false 关闭或失败
典型场景代码
java
// 查询保活功能是否已开启
boolean isOpen = panelSDK.isKeepAliveOpen();
if (isOpen) {
    // ✅ 保活功能已启用
    Log.d("KeepAlive", "保活功能已开启");
} else {
    // ⚠️ 保活功能未启用或查询失败
    Log.w("KeepAlive", "保活功能未开启");
}

📨 addKeepAliveAPP — 添加保活应用

java
int addKeepAliveAPP(ArrayList<StKeepAliveApp> keepAliveList)
参数说明
参数类型说明
keepAliveListArrayList<StKeepAliveApp>待添加应用列表
返回值说明
返回值说明
0添加成功
其他参考错误码表
典型场景代码
java
// 批量添加保活应用
ArrayList<StKeepAliveApp> list = new ArrayList<>();
StKeepAliveApp app1 = new StKeepAliveApp();
app1.packageName = "com.example.app1";
app1.priority = 1;
list.add(app1);

StKeepAliveApp app2 = new StKeepAliveApp();
app2.packageName = "com.example.app2";
app2.priority = 2;
list.add(app2);

int result = panelSDK.addKeepAliveAPP(list);
if (result == 0) {
    // ✅ 添加成功
    Log.d("KeepAlive", "成功添加 " + list.size() + " 个保活应用");
} else {
    // ❌ 添加失败
    Log.e("KeepAlive", "添加失败,错误码: " + result);
}

🗑️ removeKeepAliveAPP — 移除保活应用

java
int removeKeepAliveAPP(ArrayList<StKeepAliveApp> keepAliveList)
参数说明
参数类型说明
keepAliveListArrayList<StKeepAliveApp>待移除应用列表
返回值说明
返回值说明
0移除成功
其他参考错误码表
典型场景代码
java
// 批量移除保活应用
ArrayList<StKeepAliveApp> list = new ArrayList<>();
StKeepAliveApp app = new StKeepAliveApp();
app.packageName = "com.example.app1";
list.add(app);

int result = panelSDK.removeKeepAliveAPP(list);
if (result == 0) {
    // ✅ 移除成功
    Log.d("KeepAlive", "成功移除 " + list.size() + " 个保活应用");
} else {
    // ❌ 移除失败
    Log.e("KeepAlive", "移除失败,错误码: " + result);
}

📋 getKeepAliveAPP — 获取保活应用列表

java
ArrayList<StKeepAliveApp> getKeepAliveAPP()
返回值说明
返回值说明
ArrayList<StKeepAliveApp>当前所有保活应用
典型场景代码
java
// 获取所有保活应用列表
ArrayList<StKeepAliveApp> apps = panelSDK.getKeepAliveAPP();
if (apps != null && !apps.isEmpty()) {
    // ✅ 获取成功
    Log.d("KeepAlive", "当前保活应用数: " + apps.size());
    for (StKeepAliveApp app : apps) {
        Log.d("KeepAlive", "包名: " + app.packageName + ", 优先级: " + app.priority);
    }
} else {
    // ⚠️ 无保活应用或获取失败
    Log.w("KeepAlive", "无保活应用");
}

🧐 isKeepAliveApp — 判断应用是否设置保活

java
int isKeepAliveApp(String packageName)
参数说明
参数类型说明
packageNameString应用包名
返回值说明
返回值说明
0未设置保活
1已设置保活
其他参考错误码表
典型场景代码
java
// 检查应用是否已设置保活
String packageName = "com.example.app";
int result = panelSDK.isKeepAliveApp(packageName);
if (result == 1) {
    // ✅ 已设置保活
    Log.d("KeepAlive", packageName + " 已设置保活");
} else if (result == 0) {
    // ⚠️ 未设置保活
    Log.w("KeepAlive", packageName + " 未设置保活");
} else {
    // ❌ 查询失败
    Log.e("KeepAlive", "查询失败,错误码: " + result);
}

🟢 getCurrentKeepAliveAppInfo — 获取当前保活应用信息

java
StKeepAliveApp getCurrentKeepAliveAppInfo()
返回值说明
返回值说明
StKeepAliveApp当前保活应用信息
典型场景代码
java
// 获取当前保活应用信息
StKeepAliveApp app = panelSDK.getCurrentKeepAliveAppInfo();
if (app != null) {
    // ✅ 获取成功
    Log.d("KeepAlive", "当前保活应用: " + app.packageName + ", 优先级: " + app.priority);
} else {
    // ⚠️ 无当前保活应用或获取失败
    Log.w("KeepAlive", "无当前保活应用");
}

🏷️ getKeepAliveAppInfo — 根据包名获取保活应用信息

java
StKeepAliveApp getKeepAliveAppInfo(String packageName)
参数说明
参数类型说明
packageNameString应用包名
返回值说明
返回值说明
StKeepAliveApp保活应用信息
典型场景代码
java
// 根据包名获取保活应用信息
String packageName = "com.example.app";
StKeepAliveApp app = panelSDK.getKeepAliveAppInfo(packageName);
if (app != null) {
    // ✅ 获取成功
    Log.d("KeepAlive", "应用: " + app.packageName + ", 优先级: " + app.priority);
} else {
    // ⚠️ 应用未设置保活或获取失败
    Log.w("KeepAlive", packageName + " 未设置保活或获取失败");
}

⚡ 专业进阶 · 技术要点

所有方法均为同步调用,返回值可直接判断结果,适合批量自动化脚本。 推荐在具备系统权限的环境下调用,部分功能需 Root 或系统签名。 依赖底层 StKeepAliveManager,请确保相关依赖已集成并兼容目标设备。 支持企业级批量部署、远程保活策略下发。


🏆 专业总结

只需一个 PanelSDK 实例,应用保活策略一站式配置。无论是关键业务保障、批量运维还是实时监控,KeepAlive 模块让你的设备更稳定、更高效!