gpt4 book ai didi

java - 三星 xcover 3 TYPE_GYROSCOPE 不工作

转载 作者:行者123 更新时间:2023-11-29 23:54:40 32 4
gpt4 key购买 nike

当我查看 xcover 3 中的规范时,他们写道该模型具有陀螺仪。

我尝试编写代码(我使用 android studio)来查看它是如何工作的,但它没有向我显示此模型或 android 虚拟设备上的传感器。

public class Menu extends AppCompatActivity implements SensorEventListener{




boolean running = false;
SensorManager sensorManager;
ToggleButton btn;
TextView textView;
TextView x1;
TextView y1;
TextView z1;



@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_menu);

btn = (ToggleButton) findViewById(R.id.toggleButton);
sensorManager = (SensorManager)getSystemService(Context.SENSOR_SERVICE);

btn.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){

running = true;

}


else{

running = false;


}}
});
}

@Override
protected void onResume() {
super.onResume();
Sensor countsensor = sensorManager.getDefaultSensor(Sensor.TYPE_GYROSCOPE);
if(countsensor != null){
sensorManager.registerListener(this,countsensor,SensorManager.SENSOR_DELAY_FASTEST);
}
else{

Toast.makeText(this, "Brak sensora",Toast.LENGTH_SHORT).show();
}
}

@Override
public void onSensorChanged(SensorEvent event) {

if(running){


x1 =(TextView) findViewById(R.id.textViewX1);
y1 =(TextView) findViewById(R.id.textViewY1);
z1 =(TextView) findViewById(R.id.textViewZ1);

x1.setText(String.valueOf(event.values[0]));
y1.setText(String.valueOf(event.values[1]));
z1.setText(String.valueOf(event.values[2]));



}
}

@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}}

在这部分中,countsensor 返回 null。

     @Override
protected void onResume() {
super.onResume();
Sensor countsensor = sensorManager.getDefaultSensor(Sensor.TYPE_GYROSCOPE);
if(countsensor != null){
sensorManager.registerListener(this,countsensor,SensorManager.SENSOR_DELAY_FASEST);
}
else{

Toast.makeText(this, "Brak sensora",Toast.LENGTH_SHORT).show();
}
}

当我将 Sensor.TYPE_GYROSCOPE 更改为 Sensor.TYPE_ACCELEROMETER 时,一切正常。我很困惑为什么它不起作用。

最佳答案

根据这个网站,这个设备没有陀螺仪:

https://www.gsmarena.com/samsung_galaxy_xcover_3-6990.php

您可以使用以下几行代码简单地检查您的设备中是否存在陀螺仪:

boolean gyro;

gyro = sensorMgr.registerListener(this,sensorMgr.getDefaultSensor(Sensor.TYPE_GYROSCOPE);

if(gyro)
{
//code to execute if gyro is present
}

关于java - 三星 xcover 3 TYPE_GYROSCOPE 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50486956/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com