如何解决无法从 AdbBridge 配置 LSM6DS3
我正在尝试通过 Showcase App 的 AdbBridge 功能配置 LSM6DS3 的 TapParams。
我用
.\adb.exe shell am broadcast -a "android.intent.action.MOVESENSE" --es type get --es path Component/LSM6DS3/TapParams --es value '''{}'''
但是当我尝试用
写回我的配置(甚至是我用上一个命令得到的配置)时.\adb.exe shell am broadcast -a "android.intent.action.MOVESENSE" --es type put --es path Component/LSM6DS3/TapParams --es value '''{\"doubleTapDur\": 0,\"doubleTapQuiet\": 0,\"tapThs\": 2,\"axes\": 0}'''
我在 logcat 上收到此错误
2021-06-14 16:48:42.735 22813-22813/com.movesense.showcaseapp E/AdbBridge: onError()
com.movesense.mds.mdsException: Failed status: 400,reason: BAD_REQUEST
at com.movesense.mds.internal.operation.mdsRestOperation.onResponse(mdsRestOperation.java:81)
at com.movesense.mds.internal.operation.mdsResponSEOperation.protectedRun(mdsResponSEOperation.java:26)
at com.movesense.mds.internal.workqueue.QueueOperation.run(QueueOperation.java:70)
at com.movesense.mds.internal.workqueue.WorkQueueImpl.runoperation(WorkQueueImpl.java:79)
at com.movesense.mds.internal.workqueue.WorkQueueImpl$1.run(WorkQueueImpl.java:30)
at java.lang.Thread.run(Thread.java:760)
我的请求有什么问题?
解决方法
LSM6DS API 定义了一个名为“newParams”的放置参数。所以你的对象需要提供这样的正确名称(就像使用 MDS 从代码调用一样):
{\"newParams\":{\"doubleTapDur\": 0,\"doubleTapQuiet\": 0,\"tapThs\": 2,\"axes\": 0}}
完全披露:我为 Movesense 团队工作
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。