我正在使用手持设备上的WearableListenerService来检索可穿戴设备的数据。我最近更新了我的代码,并从发送一大组DataMap对象切换到保存一个字节数组的单个DataMap。
代码正在工作,但是当我继续测试时,我开始在可穿戴设备上得到一个空字节数组。这是我允许的情况,但我检查了手持设备上的DataMap,它正在发送数据。
因此,我将手持设备和可穿戴设备上的代码切换回一组DataMap对象的旧实现。设备正在发送正确的数据,但可穿戴设备抛出一个java.lang.ClassCastException,表示byte[] cannot be cast to java.lang.String。因此,可穿戴设备仍然得到我以前得到的空字节数组。
我正在可穿戴仿真器上进行测试,而且我没有物理设备可以测试。我做错了什么吗?是否有任何方法确保数据层已经更新了数据?
发布于 2016-01-30 01:53:19
我以前遇到过这个问题,我用MessageApi代替MessageApi解决了这个问题,我使用Gson库https://github.com/google/gson (可以用来将Java对象转换成JSON表示)在移动和磨损之间发送java对象和自定义对象。我希望这对你有帮助
发布于 2016-01-30 17:57:42
这是数据API长期存在的问题,虽然它比以前更好,但仍然会发生。我所知道的唯一解决方案是完全清除数据层,然后按照http://www.tinmith.net/wayne/blog/2014/08/android-wear-total-reset.htm的说明重新开始
https://stackoverflow.com/questions/35088511
复制相似问题