16. 彩屏仓功能接口
public interface IChargingCaseOp {
/**
* 是否初始化成功
*
* @param device 操作设备
* @return 结果
*/
boolean isInit(BluetoothDevice device);
/**
* 获取彩屏仓信息
*
* @param device 操作设备
* @return 缓存的彩屏仓信息
*/
ChargingCaseInfo getChargingCaseInfo(BluetoothDevice device);
/**
* 添加彩屏仓事件监听器
*
* @param listener 彩屏仓事件监听器
*/
void addOnChargingCaseListener(OnChargingCaseListener listener);
/**
* 移除彩屏仓事件监听器
*
* @param listener 彩屏仓事件监听器
*/
void removeOnChargingCaseListener(OnChargingCaseListener listener);
/**
* 获取屏幕亮度
*
* @param device 操作设备
* @param callback 操作回调
*/
void getBrightness(BluetoothDevice device, OnRcspActionCallback<Integer> callback);
/**
* 设置屏幕亮度
*
* @param device 操作设备
* @param brightness 屏幕亮度
* @param callback 操作回调
*/
void setBrightness(BluetoothDevice device, int brightness, OnRcspActionCallback<Boolean> callback);
/**
* 获取手电筒状态
*
* @param device 操作设备
* @param callback 操作回调
*/
void getFlashlightState(BluetoothDevice device, OnRcspActionCallback<Boolean> callback);
/**
* 手电筒开关
*
* @param device 操作设备
* @param isOn 是否打开
* @param callback 操作回调
*/
void setFlashlightState(BluetoothDevice device, boolean isOn, OnRcspActionCallback<Boolean> callback);
/**
* 获取绑定设备的状态
*
* @param device 操作设备
* @param callback 操作回调
*/
void getBoundDeviceState(BluetoothDevice device, OnRcspActionCallback<BoundDeviceState> callback);
/**
* 浏览屏保文件
*
* @param device 操作设备
* @param devHandle 存储器句柄
* @param callback 操作回调
*/
void browseScreenSavers(BluetoothDevice device, int devHandle, OnRcspActionCallback<List<RegFile>> callback);
/**
* 获取当前屏幕保护程序信息
*
* @param device 操作设备
* @param callback 操作回调
*/
void getCurrentScreenSaver(BluetoothDevice device, OnRcspActionCallback<ResourceInfo> callback);
/**
* 设置当前屏幕保护程序
*
* @param device 操作设备
* @param devHandle 存储器句柄
* @param filePath 文件路径
* @param callback 操作回调
*/
void setCurrentScreenSaver(BluetoothDevice device, int devHandle, @NonNull String filePath, OnRcspActionCallback<Boolean> callback);
/**
* 获取当前开机动画信息
*
* @param device 操作设备
* @param callback 操作回调
*/
void getCurrentBootAnim(BluetoothDevice device, OnRcspActionCallback<ResourceInfo> callback);
/**
* 设置当前开机动画
*
* @param device 操作设备
* @param devHandle 存储器句柄
* @param filePath 文件路径
* @param callback 操作回调
*/
void setCurrentBootAnim(BluetoothDevice device, int devHandle, @NonNull String filePath, OnRcspActionCallback<Boolean> callback);
/**
* 读取设备屏幕信息
*
* @param device 操作设备
* @param callback 操作回调
*/
void readScreenInfo(BluetoothDevice device, OnRcspActionCallback<ScreenInfo> callback);
/**
* 同步天气信息
*
* @param device 操作设备
* @param weather 天气信息
* @param callback 操作回调
*/
void syncWeatherInfo(BluetoothDevice device, Weather weather, OnRcspActionCallback<Boolean> callback);
/**
* 推送消息
*
* @param device 操作对象
* @param message 消息
* @param callback 操作回调
*/
void pushMessageInfo(BluetoothDevice device, MessageInfo message, OnRcspActionCallback<Boolean> callback);
/**
* 移除消息
*
* @param device 操作对象
* @param message 消息<p>
* (只需要填【包名】和【时间戳】即可)
* </p>
* @param callback 操作回调
*/
void removeMessageInfo(BluetoothDevice device, MessageInfo message, OnRcspActionCallback<Boolean> callback);
/**
* 读取SDK信息
*
* @param device 操作设备
* @param callback 操作回调
*/
void readSDKMessage(BluetoothDevice device, OnRcspActionCallback<SDKMessage> callback);
/**
* 获取在线存储器列表
*
* @param device 操作设备
* @return List\<SDCardBean\> 在线存储器列表
*/
List<SDCardBean> getOnlineStorages(BluetoothDevice device);
/**
* 浏览壁纸文件
*
* @param device 操作设备
* @param devHandle 存储器句柄
* @param callback 操作回调
*/
void browseWallPapers(BluetoothDevice device, int devHandle, OnRcspActionCallback<List<RegFile>> callback);
/**
* 获取当前壁纸信息
*
* @param device 操作设备
* @param callback 操作回调
*/
void getCurrentWallPaper(BluetoothDevice device, OnRcspActionCallback<ResourceInfo> callback);
/**
* 设置当前壁纸
*
* @param device 操作设备
* @param devHandle 存储器句柄
* @param filePath 文件路径
* @param callback 操作回调
*/
void setCurrentWallPaper(BluetoothDevice device, int devHandle, @NonNull String filePath, OnRcspActionCallback<Boolean> callback);
/**
* 删除资源
*
* @param device 操作设备
* @param infoList 删除的资源列表
* @param callback 删除结果回调
*/
void deleteResources(BluetoothDevice device, @NonNull List<ResourceInfo> infoList, DeleteCallback callback);
}
16.1. 彩屏仓事件监听器
public interface OnChargingCaseListener {
/**
* 回调彩屏仓初始化状态
*
* @param device 操作设备
* @param state 设备状态
*/
void onInit(BluetoothDevice device, int state);
/**
* 回调彩屏仓信息改变
*
* @param device 操作设备
* @param func 功能码
* @param info 彩屏仓信息
*/
void onChargingCaseInfoChange(BluetoothDevice device, @ChargingCaseInfo.Function int func, ChargingCaseInfo info);
/**
* 回调彩屏仓事件
*
* @param device 操作设备
* @param function 彩屏仓事件
*/
void onChargingCaseEvent(BluetoothDevice device, SettingFunction function);
}
Note
16.1.1. 设置功能
public class SettingFunction extends SettingData {
/**
* 屏幕亮度
*/
public static final int FUNC_BRIGHTNESS = 0x01;
/**
* 手电筒
*/
public static final int FUNC_FLASHLIGHT = 0x02;
/**
* 绑定设备状态
*/
public static final int FUNC_BOUND_DEVICE_STATE = 0x03;
/**
* 当前功能使用的资源
*/
public static final int FUNC_USING_RESOURCE = 0x04;
/**
* 设备屏幕信息
*/
public static final int FUNC_SCREEN_INFO = 0x07;
/**
* 设备SDK信息
*/
public static final int FUNC_SDK_MESSAGE = 0x08;
/**
* 读取操作
*/
public static final int OP_READ = 0x00;
/**
* 设置操作
*/
public static final int OP_SET = 0x01;
/**
* 通知操作
*/
public static final int OP_NOTIFY = 0x02;
/**
* 功能
*/
private int function;
/**
* 功能版本号
*/
private int funcVersion;
/**
* 操作码
*/
private int op;
/**
* 有效数据
*/
private byte[] payload;
}