Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Android中,我可以通过编程检测指南针是否尚未校准?_Android_Compass Geolocation - Fatal编程技术网

在Android中,我可以通过编程检测指南针是否尚未校准?

在Android中,我可以通过编程检测指南针是否尚未校准?,android,compass-geolocation,Android,Compass Geolocation,我发现当我开始游戏时,指南针经常会出毛病。物体会四处飞行,而不是它们应该在的地方。但是,如果我以8字形移动手机(或者只是在随机方向上挥动手机),一切都会在半分钟内就位 硬件是否知道罗盘何时未校准?我是否可以检测到这一点并弹出一条消息,告诉用户“您的android指南针需要校准。请以8字形水平移动手机,直到此消息消失。”在SensorEventListener中有一个函数onAccuracyChanged(传感器,int-Accurance)您可以在其中检查设备磁强计的准确性。有4个精度级别(来自

我发现当我开始游戏时,指南针经常会出毛病。物体会四处飞行,而不是它们应该在的地方。但是,如果我以8字形移动手机(或者只是在随机方向上挥动手机),一切都会在半分钟内就位


硬件是否知道罗盘何时未校准?我是否可以检测到这一点并弹出一条消息,告诉用户“您的android指南针需要校准。请以8字形水平移动手机,直到此消息消失。”

SensorEventListener
中有一个函数
onAccuracyChanged(传感器,int-Accurance)
您可以在其中检查设备磁强计的准确性。有4个精度级别(来自class
SensorManager
):

SENSOR_STATUS_ACCURACY_HIGH = 3
SENSOR_STATUS_ACCURACY_MEDIUM = 2
SENSOR_STATUS_ACCURACY_LOW = 1
SENSOR_STATUS_UNRELIABLE = 0