我正嘗試在我的android應用上使用線性加速度融合傳感器。但是,它無法找到Sensor.TYPE_LINEAR_ACCELERATION的傳感器。手機無法找到Sensor.TYPE_LINEAR_ACCELERATION的傳感器
我執行這些調用:
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
mLinearAcceleration = mSensorManager.getDefaultSensor(Sensor.TYPE_LINEAR_ACCELERATION);
,mAccelerometer被定義在上述過程之後,但mLinearAcceleration爲空。我知道不加入TYPE_LINEAR_ACCELERATION直到API 9級,但是我想我至少在API層面9.以下運行是我的清單文件的一個片段:
<uses-sdk
android:minSdkVersion="9"
android:targetSdkVersion="17" />
所以我相信我下了正確的工作API級別。
但是,當我嘗試列出所有可用的傳感器時,我沒有找到應該可用於此API級別的所有傳感器。
當我打電話......
List<Sensor> l = mSensorManager.getSensorList(Sensor.TYPE_ALL);
for(Sensor s : l)
System.out.println(s.getName());
我得到
Goldfish 3-axis Accelerometer
Goldfish 3-axis Magnetic field sensor
Goldfish Orientation sensor
Goldfish Temperature sensor
Goldfish Proximity sensor
這些都不是直線加速,一個是方向,不推薦使用的傳感器。看起來我的傳感器像API級別9之前一樣運行,但我不知道這是爲什麼。我的項目中是否存在可能迫使應用程序充當舊API的字段? (比在AndroidManifest.xml文件支持的最低API場,這已經是設置爲9等)
那麼你的手機沒有實現傳感器TYPE_LINEAR_ACCELERATION – 2013-03-19 06:59:20