我正在开发一款Android应用程序,用于从智能手表接收数据,并通过互联网将其上传到远程服务器。该应用程序适用于Android 4.2.2和4.1.2(目前在这两个版本上测试),但它不适用于Android 4.3(在两个不同的4.3手机上测试)。 logcat结果如下。
12-23 18:13:24.560: D/dalvikvm(18980): Late-enabling CheckJNI
12-23 18:13:27.040: D/dalvikvm(18980): GC_FOR_ALLOC freed 51K, 11% free 9447K/10576K, paused 188ms, total 188ms
12-23 18:13:27.040: I/dalvikvm-heap(18980): Grow heap (frag case) to 11.294MB for 1067024-byte allocation
12-23 18:13:27.055: D/dalvikvm(18980): GC_FOR_ALLOC freed <1K, 10% free 10489K/11620K, paused 16ms, total 16ms
12-23 18:13:29.135: D/SensorManager(18980): registerListener :: create queue :: handler = 0, name = LSM330DLC 3-axis Accelerometer, delay = 66667,
12-23 18:13:30.160: D/libEGL(18980): loaded /system/lib/egl/libEGL_mali.so
12-23 18:13:30.180: D/libEGL(18980): loaded /system/lib/egl/libGLESv1_CM_mali.so
12-23 18:13:30.185: D/libEGL(18980): loaded /system/lib/egl/libGLESv2_mali.so
12-23 18:13:30.190: E/(18980): Device driver API match
12-23 18:13:30.190: E/(18980): Device driver API version: 23
12-23 18:13:30.190: E/(18980): User space API version: 23
12-23 18:13:30.190: E/(18980): mali: REVISION=Linux-r3p2-01rel3 BUILD_DATE=Wed Oct 9 21:05:57 KST 2013
我已经搜索了一段时间但找不到有用的解决方案。我在论坛中对此问题提出了三个问题:Device driver API match error; Android 4.3 Device driver API Match error; Android Error: Device driver API match但没有解决方案。 我试图将targetSDKVersion更改为更低或更高,但仍然无法正常工作。
有什么建议吗?感谢。
答案 0 :(得分:0)
最后我解决了这个问题。主要有两个原因: 1)我开发的Android App是从Pebble手表接收数据。这取决于Pebble Android SDK。有一个SDK的更新,但我没有及时更新。因此,第一步是下载最新的SDK pebblekit-2.6.0-eclipse并将其导入项目。
2)更新SDK后,我遇到了另一个问题。出现错误“导入com.google.common无法解析”。我遵循stackoverflow的一些建议添加谷歌播放服务等。他们都没有为我工作。经过多次尝试,我找到了根本原因:2014年11月更新后,数据记录API发生了变化。“| receiveData()|现在需要| java.lang.Long |而不是| com.google.common.primitives.UnsignedInteger |“,如此处所示https://github.com/pebble/pebble-android-sdk。我没有意识到,因为这些信息没有在他们的官方文件中更新。因此,在将数据类型从UnsignedInteger更新为Long后,问题将得到解决。小心上面的字母。