Java 通过网络从活动发送信息

Java 通过网络从活动发送信息,java,android,Java,Android,我想通过tcp/ip发送在onLocationChanged()中获取的数据。我也可以阅读位置和网络作品:我可以连接和发送数据。 问题是:网络不能在活动线程中,但必须在onLocationChanged()中。现在我的问题是: 如何从活动线程到网络线程获取位置信息 提前谢谢 编辑:我必须一次又一次地发送数据,不想每秒都重新连接。您需要启动一个单独的线程或使用异步任务来执行网络操作,因为您不允许将UI线程与可能长期运行的操作捆绑在一起。好的,似乎我可以直接从活动线程访问在网络线程中创建的套接字。(

我想通过tcp/ip发送在onLocationChanged()中获取的数据。我也可以阅读位置和网络作品:我可以连接和发送数据。 问题是:网络不能在活动线程中,但必须在onLocationChanged()中。现在我的问题是: 如何从活动线程到网络线程获取位置信息

提前谢谢


编辑:我必须一次又一次地发送数据,不想每秒都重新连接。

您需要启动一个单独的线程或使用
异步任务来执行网络操作,因为您不允许将UI线程与可能长期运行的操作捆绑在一起。

好的,似乎我可以直接从活动线程访问在网络线程中创建的套接字。(至少我还没有得到任何虚假的行为…)

onLocationChanged()
{
     new Thread(){
              public void run(){
                       //POST YOUR DATA.
              }
     }.start();
}

起初它不起作用,但那是因为一个不相关的错误。

我需要反复发送数据。每次获得新数据时是否都必须重新连接?如何连接?当每次我获取数据时新创建线程时,我每次都必须重新连接,对吗?是的,我知道。但是AsyncTask只允许网络线程与UI对话,而不允许UI与网络线程对话,或者我错了吗?正确,但UI线程可以启动
AsyncTask
,并将所需信息传递给它。因此,每次有新信息时,我都必须重新连接?(可能每秒钟)您可以考虑使用<代码>服务<代码>