我在模拟器上获取可用传感器列表时遇到问题
我的代码:
mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
List<Sensor> sensList = mSensorManager.getSensorList(Sensor.TYPE_ALL);
Sensor s1 = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
我在两个地方都得到空列表。
我通过检查模拟器日志来验证模拟器是否有传感器:
也。 连接到模拟器(使用telnet)并使用传感器状态,我得到以下输出。
acceleration: enabled.
magnetic-field: enabled.
orientation: enabled.
temperature: enabled.
proximity: enabled.
清单中的权限是:
非常感谢任何帮助。
答案 0 :(得分:0)
public class AndroidSensorList extends ListActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SensorManager sensorManager
= (SensorManager)getSystemService(Context.SENSOR_SERVICE);
List<Sensor> listSensor
= sensorManager.getSensorList(Sensor.TYPE_ALL);
List<String> listSensorType = new ArrayList<String>();
for(int i=0; i<listSensor.size(); i++){
listSensorType.add(listSensor.get(i).getName());
}
setListAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1,
listSensorType));
getListView().setTextFilterEnabled(true);
}
}
同样在您的模拟器中,您必须通过编辑avd添加硬件属性并单击硬件属性下的新功能,您可以添加:
加速度计,磁场支持,方向支持,温度......不要忘记将值设置为true