无法从 AdbBridge 配置 LSM6DS3
Cannot configure LSM6DS3 from AdbBridge
我正在尝试通过 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.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 团队工作
我正在尝试通过 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.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 团队工作