SensorEventListener在2.1(API 7)的虚拟设备上挂起但在真实设备上没有,为什么?

时间:2012-08-21 13:38:11

标签: android eclipse avd android-sdk-2.1

***答案:正如DeeV指出的那样,这个问题已经涵盖here。我无法弄清楚如何以DUPLICATE结束这个问题

我一直在测试运动检测,我的效果很好。但有一个小错误,我完全不知道如何排除故障。当我实施以下内容时:

public class MainActivity extends Activity implements SensorEventListener 

private SensorManager mSensorManager;

// ... OnCreate..

mSensorManager = (SensorManager) getSystemService(this.SENSOR_SERVICE);

在任何活动中,它在Android设备上使用androd 2.1-upate1(4.0.3)执行得很好。但是,在模拟器上,它仅适用于4.0.3。在2.1上虚拟设备只是暂停执行,在logcat上没有消息。删除此行:

mSensorManager = (SensorManager) getSystemService(this.SENSOR_SERVICE);

然后允许活动开始。

我现在的问题必须是我的环境;我重新安装sdk,但问题仍然存在。我只在我的电脑上试过这个。谁能让我知道发生了什么?

1 个答案:

答案 0 :(得分:1)

简单回答,You can't use some emulators to test sensors.从那以后,他们似乎已经修复了,但2.1模拟器仍然没用。根据{{​​3}},您可以通过禁用您尝试检索的传感器来绕过它。它会像传感器不存在一样工作,因此您至少可以测试您的应用程序,就像它是一台无法使用加速度计的设备一样。