我有一个指南针页面在我的应用程序,但据我所知,有一些设备不支持指南针(没有内置传感器)
我在这里要做的是将用户导航到另一个页面,以防他们的设备中没有传感器,如下所示:
val msensorManager = getSystemService(SENSOR_SERVICE) as SensorManager
if (msensorManager.getSensorList(Sensor.TYPE_ACCELEROMETER).size > 0) {
} else {
}
但我不确定哪种传感器类型负责罗盘功能
以上代码正确吗?
对于罗盘功能,您必须检查Sensor.TYPE_MAGNETIC_FIELD
:
sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
if (sensorManager.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD) != null){
// Success! There's a magnetometer.
} else {
// Failure! No magnetometer.
}