gpt4 book ai didi

java - Android:替代 onSensorChanged?当手机仰面放在 table 上时(没有移动时)没有加速计数据

转载 作者:搜寻专家 更新时间:2023-11-01 08:14:48 24 4
gpt4 key购买 nike

所以我使用这段代码来获取加速计数据。当我在 DDMS 模式下检查我的打印语句正在打印什么时,我注意到手机不动时什么也没有打印。 IE。它在 table 上。我认为原因是当手机不动时不调用 onSensorChanged ,然后在手机再次开始移动时调用它。如果无论手机是否移动我都想捕获数据,我应该使用其他功能吗?任何替代品?或任何解决方案?任何帮助表示赞赏。

谢谢!

public void onSensorChanged(SensorEvent event) {  

StringBuffer buff = new StringBuffer();
buff.append(String.valueOf(event.timestamp));
buff.append(comma);
buff.append(String.valueOf(event.values[0]));
buff.append(comma);
buff.append(String.valueOf(event.values[1]));
buff.append(comma);
buff.append(String.valueOf(event.values[2]));

mCurrentFile.println(buff.toString());
mCurrentFile.write(buff.toString()+ '\n');

System.out.println( "**" + buff.toString());

}

最佳答案

您可以让一个线程监听传感器变化(即 onSensorChanged(),它将把数据写入全局变量),让另一个线程运行计时器(查看 postDelayed, http://developer.android.com/reference/android/os/Handler.html ) 将在设定的时间读取它。如果没有变化,那么它将再次读取相同的数据。简单、干净且对电池友好。

关于java - Android:替代 onSensorChanged?当手机仰面放在 table 上时(没有移动时)没有加速计数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5804142/

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