我正在我的手机上构建一个Android应用程序,它使用加速计来检测震动。然而,当我摇着手机的时候,onSensorChanged从来没有被打过电话。这意味着它不能侦测到任何震动!我怀疑我的手机上连个加速度计都没有!
我的手机是运行Android4.3的索尼Xperia C5303。我怎么知道我的设备上是否有加速度计?
发布于 2015-12-04 11:09:00
要识别设备上的传感器,必须创建SensorManager类的实例并传递SENSOR_SERVICE参数。例如:
private SensorManager mSensorManager;
...
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);然后,例如,通过使用getSensorList()方法调用TYPE_ALL,可以获得设备上每个传感器的列表。例如:
List<Sensor> deviceSensors = mSensorManager.getSensorList(Sensor.TYPE_ALL);如果要列出加速度计,则需要使用TYPE_ACCELEROMETER而不是TYPE_ALL。
更多信息这里
https://stackoverflow.com/questions/34087609
复制相似问题