从Accelerometer类获取值到主活动类

时间:2012-06-06 16:45:41

标签: java android class accelerometer

我正在尝试创建一个读取加速度计值并将它们发送到服务器的Android应用程序。我在两个文件中有两个类 - 带有httpget方法的Main类和加速度计类。

我从onSensorChanged方法中得不到任何东西(我通过从accellerometer类制作新对象来发送值),或者我的accellerometer类不起作用。

问题: 1)当我有一个Accelerometer类并且我在另一个类中读取值时,你能给我一个小例子吗?

2)我应该从主要活动开始加速计吗?

如果你能回答我的问题并给我一个小例子,我将非常感激!

2 个答案:

答案 0 :(得分:0)

请查看源代码。以下是有关Accelerometer的示例源代码。

Link

我认为它会对你有所帮助。

答案 1 :(得分:0)

问题有点不清楚,所以从以下假设出发:

文件1:带有httpget的服务器线程

文件2:读取加速度计数据并将其发送到服务器线程

您处于调试环境中,您将它们一起运行以进行测试。

这里的名字似乎有些混乱。仅仅因为你有一个Accelerometer类,并不意味着代码是活动的并且正在运行。如果你只使用main方法启动一个,并且它没有引用另一个对象,那么该代码将永远不会运行。

public class Server
{
  public void onSensorChanged()
  {
    //do stuff to listen for accelerometer data
  }
  public static void main(String args[])
  {
    onSensorChanged();
  }
}

如果只是这样运行,则无法读取加速度计数据。

public class Accelerometer implements Runnable
{
  public void run()
  {
    while (!dead)
    {
      //read data
      //send to server
      //wait for a bit?
    } 
  }
}

因此我们在Server main方法中添加一行

new Thread(new Accelerometer()).start();

1)我不确定你在问什么。 Class 1从传感器获取数据,class 2从class 1读取它以将其发送到服务器? 2)是的,如果您需要运行多个线程,您的入口点将需要同时启动。或者他们需要单独启动