跳到内容 跳到主导航 跳到页脚

系统功能

系统状态监控

机器人有非常多的状态、事件可以监控,来辅助完成工作。监控主要使用下面函数来完成。

RobotApi.getInstance().registerStatusListener(
        Definition.STATUS_POSE_ESTIMATE, mStatusPoseListener);

能监控到的事件定义可以在SDK的Definition.Java 中找到。目前提供的监控状态如下:

STATUS_POSE = "navi_pose"; //位置改变
STATUS_MAP = "navi_map"; //地图改变
STATUS_EMERGENCY = "status_emergency"; //紧急状态
STATUS_POSE_ESTIMATE = "status_pose_estimate"; //机器人定位状态
STATUS_AVOID_STOPPING = "status_avoid_stopping";//动态避停
STATUS_SWITCH_MAP = "status_switch_map"; //地图切换
STATUS_RADAR = "status_radar"; //雷达状态
STATUS_BATTERY = "status_battery"; //电池充电状态
STATUS_MULTIPLE_ROBOT_WORKING = "status_multiple_robot_working"; //多机状态信息
STATUS_MAP_OUTSIDE = "status_map_outside_report"; //机器出地图(目前仅限招财)
STATUS_ROBOT_BEING_PUSHED = "status_robot_being_pushed"; //机器被推动(目前仅限招财)

获取本机SN

方法名称:getRobotSn

调用方式:

boolean status = RobotApi.getInstance().getRobotSn(
    new CommandListener(){
        @Override
        public void onResult(int result, String message) {
            if (Definition.RESULT_OK == result) {
                String serialNum = message;
            } else {

            }

        }
  });

参数

  • listener CommandListener 消息回调{“code”:0, “message”:”err msg”}

返回值

  • int result 1 命令执行 / -1 没有执行

适用平台:

豹小秘mini
招财豹
豹小递max豹小秘DP

获取系统版本

方法名称:getVersion

调用方式:

String version = RobotApi.getInstance().getVersion();

适用平台:

豹小秘mini
招财豹
豹小递max豹小秘DP

禁止系统功能

系统不再接管急停事件,没有急停画面,可用于用户自定义急停画面。在急停状态下,所以底盘相关功能API不可使用,唤醒、休眠等切换机器人状态的API也不生效。

方法名称:disableEmergency

调用方式:

RobotApi.getInstance.disableEmergency();

获取Emergency状态的API:

RobotApi.getInstance().getRobotStatus(Definition.STATUS_EMERGENCY,new StatusListener(){
            @Override
            public void onStatusUpdate(String type, String data) throws RemoteException {
                Log.d("onStatusUpdate","Status:"+data);
            }
        });
//或者使用下面方法注册急停状态事件
RobotApi.getInstance().registerStatusListener(Definition.STATUS_EMERGENCY,new StatusListener(){
        @Override
        public void onStatusUpdate(String type, String data) throws RemoteException {
               Log.d("onStatusUpdate","status:"+type+";value:"+data);
        }
});

适用平台:

豹小秘mini
招财豹
豹小递max豹小秘DP

禁用当前电池界面,充电时可使用除底盘外client app任何能力

如果确认不需要充电接管,推荐在APP启动连上RobotAPI成功之后,直接调用此接口禁用。此后直到APP退出,充电接管画面都会处于禁用状态。

方法名称:disableBattery

调用方式:

RobotApi.getInstance().disableBattery();

获取Battery状态的API:

RobotSettingApi.getInstance().getRobotString(Definition.ROBOT_SETTINGS_BATTERY_INFO);
//或使用下面方法监听电池状态变化
RobotApi.getInstance().registerStatusListener(Definition.STATUS_BATTERY,listener);

适用平台:

豹小秘mini
招财豹
豹小递max豹小秘DP

禁用功能键,招财豹头部后面按钮

方法名称:disableFunctionKey

调用方式:

RobotApi.getInstance().disableFunctionKey();

适用平台:

豹小秘mini
招财豹
豹小递max豹小秘DP

休眠

场景介绍:

休眠是让机器人在没有任务或者低电量的时候,保持低功耗运行的一种模式。使用休眠API需要添加如下权限:
<uses-permission android:name="com.ainirobot.coreservice.robotSettingProvider" />

适用平台:

豹小秘mini
招财豹
豹小递max豹小秘DP

开始休眠

方法名称:robotStandby

调用方式:

RobotApi.getInstance().robotStandby(0, new CommandListener() {
    @Override
    public void onStatusUpdate(int status, String data, String extraData) {
        super.onStatusUpdate(status, data, extraData);
    }
});

停止休眠

方法名称:robotStandbyEnd

调用方式:

RobotApi.getInstance().robotStandbyEnd(reqId);

安装APK

方法名称:installApk

调用方式:

RobotApi.getInstance().installApk(reqid, fullPathName, taskID);

参数:

  • reqId: int类型 命令id
  • fullPathName:安装包路径
  • taskID:taskID,非空的任意字符串内容

适用平台:

豹小秘mini
招财豹
豹小递max豹小秘DP

这篇文章是否有帮助?

2