- 检查小度音箱登录的百度账号和DBP上登录百度账号是否为同一个百度账号
- 检查DBP上创建的技能是否有打开“技能调试开关”,检查方式,在DPB平台查看技能信息,点左边工具栏的 测试验证 -> 真机测试 -> 按照步骤1,2,3操作打开技能调试模式。
- 语音打开应用之前是否在小度音箱上说了“小度小度,打开调试技能模式”
- 以上都检查了,还是不行。抓日志找小度接口人解决。抓日志直接使用 adb logcat > log.txt 来抓,千万不要单抓某个进程的日志,也不要做任何过滤,抓全部日志。
通过BotSkd接入的APP,测试阶段必须使用语音指令调起。所有使用adb拉起或者IDE拉起的应用都会被认为是异常启动的应用,和宿主的通信链路建立会失败,会出现应用被杀,指令分发异常等问题,所以一定要使用语音指令拉起App,一定不可使用adb或者IDE拉起app。
如果测试阶段可以不依赖BotSdk相关功能,可以把BotSdk相关代码先注释掉,之后使用adb或者IDE拉起就不会被宿主侦测到,也就不会被杀进程了。
- 首先确认设备已经处于最新版本:下拉进设置-> 本机信息 -> 检查更新。在网络正常的情况下,提示已经是最新版本,就可以。
- 确认用的数据线是可以调试用的数据线(劣质数据线只有充电能力,没有调试能力)
- 按照文档开启调试开关,流程优化,不需要再升级开发版本ROM,直接开启adb 调试开关即可。文档地址:https://mp.weixin.qq.com/s/B6zKjIgDCyZmltn8bTwXug
- 如果之前能用,忽然不能用了。adb devices提示unauthorize,可能是设备授权过期。需要打开技能开发助手,先关闭调试技能模式,再打开技能调试模式。重新开关一次之后,再按照步骤 3 去开放平台下载新的adbky就可以。
- 使用adb命令发起模拟语音指令,注意这里adb指令是模拟语音指令,不是直接通过ams拉起activity,所以不算做adb拉起引用。不可以用命令行模拟发送:打开调试技能模式,不会生效,无法进入调试技能模式
- 命令:adb shell am broadcast -a com.baidu.duer.query -e q 打开XXX
- 临时使用比较不容易识别错的调用名称顶替一下,比如:"苹果测试",“测试苹果”之类的
- 小度设备就是一个普通的Android设备,可以通过MicroUSB线连接电脑。设备接口位置比较隐蔽,基本都藏在设备底部后者底部背板附近,或者被缓震脚垫覆盖,或者被标签覆盖。可以参考下图寻找接口位置

- 连接插线连接设备之后,就可以通过adb 安装和调试应用了。如果出现电脑不识别设备的情况,请换插孔,换线尝试连接。推荐使用Mac,Ubuntu等linux电脑连接设备,windows电脑可能有驱动问题(驱动问题请自行解决)。
在小度生态中,设备硬件序列号属于受保护信息。不允许三方App读取小度设备硬件序列号。参考:Android-Build.getSerial()
目前系统侧没有配置表明当前是一台小度设备。因为接入小度设备需要集成BotSdk,所以建议针对小度设备单独打渠道包,通过flavor判定是小度设备。
- 开发者可以按照原生动态权限申请逻辑,申请Camera,读写存储空间,麦克风等高危权限
- 小度设备不允许应用自更新,所以应用也无法申请安装应用的权限
- 小度设备存储空间有限(可用空间2G多),所以不建议在sd卡目录下随便创建文件,如果有写本地文件的需求,请写到应用私有目录,如:data/data/$pacakgeName
小度设备没有gps模块。建议直接获取网络定位。
- 小度桌面不同于传统Android Launcher,不会显示应用图标。
- 小度设备桌面的图标都是一些云端配置的链接,不是真正应用图标,点击链接是发起一次云端交互,下发指令打开对应内容(有可能是浏览器,有可能是三方页面,也有可能是系统设置页......)
- 调试阶段,如果未集成BotSdk,可以用AndroidStudio或者adb 拉起。集成BotSdk之后,应该通过语音指令调起。原因详见问题(1)