gpt4 book ai didi

java - 如何在线程中使用 SensorManager 正确实现传感器?

转载 作者:行者123 更新时间:2023-12-02 02:17:54 25 4
gpt4 key购买 nike

我的线程上有此命令,但它不起作用:sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);

我想在不打开我的应用程序的情况下创建传感器后台监听器。

public class myThread extends Thread implements SensorEventListener{
public SensorManager sensorManager;
@Override
public void run()
{
sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
sensorManager.registerListener(this, sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_NORMAL);

我遇到错误无法解析方法“getSystemService(?)”

最佳答案

在 Activity 之外,getSystemService() 需要 Context。初始化线程时传递 Context 并使用 context.getSystemService()。

class MyThread extends Thread {

private Context context;
public SensorManager sensorManager;

public MyThread(Context context) {
this.context = context;
}

@Override
public void run()
{
sensorManager = (SensorManager) context.getSystemService(SENSOR_SERVICE);
sensorManager.registerListener(this,sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_NORMAL);
}
/** In Activity **/
public static void main(String[] args) {
new MyThread(getContext()).start();
}

关于java - 如何在线程中使用 SensorManager 正确实现传感器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57290262/

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