我正在尝试制作一个读取加速度计值并将它们发送到服务器的 Android 应用程序。我在两个文件中有两个类 - 带有 httpget 方法的主类和加速度计类。
我从 onSensorChanged 方法中没有收到任何信息(我通过从加速度计类创建新对象来发送值),或者我的加速度计类不起作用。
问题:1)你能给我一个小例子,当我有一个加速度计类并且我在另一个类中读取值时?
2)我应该从主要活动开始加速计类吗?
如果您能回答我的问题并举个小例子,我将不胜感激!
我正在尝试制作一个读取加速度计值并将它们发送到服务器的 Android 应用程序。我在两个文件中有两个类 - 带有 httpget 方法的主类和加速度计类。
我从 onSensorChanged 方法中没有收到任何信息(我通过从加速度计类创建新对象来发送值),或者我的加速度计类不起作用。
问题:1)你能给我一个小例子,当我有一个加速度计类并且我在另一个类中读取值时?
2)我应该从主要活动开始加速计类吗?
如果您能回答我的问题并举个小例子,我将不胜感激!
这个问题有点不清楚,所以从以下假设:
文件 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主方法中添加一行
new Thread(new Accelerometer()).start();
1)我不确定你在问什么。第 1 类从传感器获取数据,第 2 类从第 1 类读取数据并将其发送到服务器?2) 是的,如果您需要运行多个线程,您的入口点将需要同时启动这两个线程。或者他们需要单独启动