# boost **Repository Path**: crassus/boost ## Basic Information - **Project Name**: boost - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-07 - **Last Updated**: 2026-03-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 机器人管理SDK 这是一个用于Android 12机器人的管理SDK,提供开机时长统计、浏览信息记录、开关机信息、设置使用时长、禁用话题、密码设置等功能。 ## 功能特性 - ✅ **开机时长统计**: 记录和统计设备开机时长 - ✅ **浏览信息记录**: 记录用户浏览的网页信息 - ✅ **开关机信息**: 记录设备开关机事件 - ❌ **使用时长设置**: 功能已移除 - ❌ **话题禁用**: 功能已移除 - ❌ **密码保护**: 功能已移除 - ✅ **固件更新**: 支持固件更新功能 ## 集成方式 ### 1. 添加AAR依赖 将生成的AAR文件放入项目的`libs`目录,然后在`build.gradle`中添加: ```gradle dependencies { implementation files('libs/robot-manager.aar') // 必需的依赖 implementation 'androidx.room:room-runtime:2.4.3' implementation 'androidx.room:room-compiler:2.4.3' implementation 'androidx.appcompat:appcompat:1.6.1' } ``` ### 2. 初始化SDK 在Application类中初始化: ```java public class MyApplication extends Application { @Override public void onCreate() { super.onCreate(); // 初始化机器人管理SDK RobotManager.getInstance(this); } } ``` ### 3. 添加权限 在`AndroidManifest.xml`中添加必要权限: ```xml ``` ### 4. 注册广播接收器 在`AndroidManifest.xml`中注册开机和关机广播接收器: ```xml ``` ## API使用示例 ### 开机时长统计 ```java RobotManager robotManager = RobotManager.getInstance(context); // 获取当前开机时长 long currentUptime = robotManager.getCurrentUptime(); String formattedUptime = robotManager.formatUptime(currentUptime); Log.d("Uptime", "当前开机时长: " + formattedUptime); // 异步获取开机时长 robotManager.getCurrentUptimeAsync(new UptimeStatsService.UptimeCallback() { @Override public void onUptimeReceived(long uptime) { String formatted = robotManager.formatUptime(uptime); Log.d("Uptime", "当前开机时长: " + formatted); } }); // 获取平均开机时长 long averageUptime = robotManager.getAverageUptime(10); Log.d("Uptime", "平均开机时长: " + robotManager.formatUptime(averageUptime)); ``` ### 设置使用时长 ```java RobotManager robotManager = RobotManager.getInstance(context); // 设置静默时间(晚上10点到早上7点) robotManager.setQuietHours(22, 7); // 检查当前是否在静默时间 boolean isQuietTime = robotManager.isWithinQuietHours(); if (isQuietTime) { Log.d("Quiet", "当前在静默时间内"); } // 获取静默时间设置 int startHour = robotManager.getQuietStartHour(); int endHour = robotManager.getQuietEndHour(); Log.d("Quiet", "静默时间: " + startHour + ":00 - " + endHour + ":00"); ``` ### 禁用话题 ```java RobotManager robotManager = RobotManager.getInstance(context); // 设置禁用的话题 Set blockedTopics = new HashSet<>(); blockedTopics.add("游戏"); blockedTopics.add("娱乐"); robotManager.setBlockedTopics(blockedTopics); // 检查话题是否被禁用 boolean isBlocked = robotManager.isTopicBlocked("游戏"); if (isBlocked) { Log.d("Block", "话题被禁用"); } // 获取所有禁用话题 Set topics = robotManager.getBlockedTopics(); Log.d("Block", "禁用话题: " + topics.toString()); ``` ### 密码设置 ```java RobotManager robotManager = RobotManager.getInstance(context); // 设置密码 robotManager.setPassword("123456"); // 验证密码 boolean isValid = robotManager.verifyPassword("123456"); if (isValid) { Log.d("Password", "密码正确"); } // 获取密码 String password = robotManager.getPassword(); Log.d("Password", "当前密码: " + password); ``` ### 浏览信息记录 ```java RobotManager robotManager = RobotManager.getInstance(context); // 记录浏览事件 robotManager.logBrowseEvent("https://www.example.com", "示例网站"); // 获取最近浏览记录 List browseEvents = robotManager.getRecentBrowseEvents(); for (BrowseEvent event : browseEvents) { Log.d("Browse", "浏览: " + event.title + " - " + event.url); } ``` ### 开关机信息 ```java RobotManager robotManager = RobotManager.getInstance(context); // 手动记录开机事件 robotManager.logBootEvent(); // 手动记录关机事件 robotManager.logShutdownEvent(); // 获取最近电源事件 List powerEvents = robotManager.getRecentPowerEvents(); for (PowerEvent event : powerEvents) { Log.d("Power", "电源事件: " + event.type + " at " + new Date(event.timestamp)); } ``` ### 聊天消息记录 ```java RobotManager robotManager = RobotManager.getInstance(context); // 记录聊天消息 robotManager.logChatMessage("你好,机器人!", "用户"); // 获取最近聊天记录 List messages = robotManager.getRecentChatMessages(); for (ChatMessage message : messages) { Log.d("Chat", message.sender + ": " + message.message); } ``` ### 打开管理界面 ```java RobotManager robotManager = RobotManager.getInstance(context); // 打开应用使用统计界面 robotManager.openAppUsageActivity(); // 打开设备开关机信息界面 robotManager.openDevicePowerInfoActivity(); // 打开系统控制界面 robotManager.openSystemControlActivity(); // 打开下载管理界面 robotManager.openDownloadsActivity(); ``` ## 高级用法 ### 直接访问数据库 ```java RobotManager robotManager = RobotManager.getInstance(context); // 获取数据库实例进行高级操作 LogDatabase database = robotManager.getDatabase(); LogDao logDao = database.logDao(); // 自定义查询 List customQuery = logDao.getRecentBootEvents(5); ``` ### 获取服务实例 ```java RobotManager robotManager = RobotManager.getInstance(context); // 获取开机时长统计服务 UptimeStatsService uptimeService = robotManager.getUptimeStatsService(); // 获取数据库实例(用于高级操作) LogDatabase database = robotManager.getDatabase(); ``` ## 注意事项 1. **Android 12兼容性**: 此SDK专为Android 12设计,确保目标设备运行Android 12或更高版本。 2. **权限要求**: 确保应用具有必要的权限,特别是开机自启动权限。 3. **数据库初始化**: SDK会自动初始化Room数据库,无需手动处理。 4. **线程安全**: 所有数据库操作都在后台线程执行,UI操作会自动切换到主线程。 5. **内存管理**: SDK使用单例模式,确保在Application级别初始化一次即可。 ## 版本信息 - 版本: 1.0.0 - 最低Android版本: API 26 (Android 8.0) - 目标Android版本: API 33 (Android 13) - 编译SDK版本: API 34 (Android 14) ## 技术支持 如有问题或建议,请联系开发团队。