java - Android 开发将设备与服务器通信

标签 java android sockets amazon-ec2 communication

我有一个在 Amazon ec2 上运行的服务器,它监听套接字并打印客户端发送的消息(“hello world”) - 这是一个 Activity (android 应用程序)。

我试图在函数中将消息从 Activity 发送到服务器,例如:单击按钮后向服务器发送单击按钮的消息。我创建了一个 ConnectionHandler 类,它扩展了一个线程并处理与服务器的连接并写入“hello world”消息。我想创建一个名为“send”的函数,它接收一个字符串, Activity 可以调用它并将消息传递到服务器。

我的connectionHandler是一个线程,所以当我启动它时,它只执行run()函数,一旦完成我就无法调用其他函数来发送消息。

我希望我的问题很清楚, 谢谢,伊泰。

最佳答案

通过线程调用从 Android 设备连接到服务器是一种非常错误的方法。 您应该使用 Asynctask 或名为 volley 的库,它可以使您的工作更轻松。

使用Asynctask的引用链接:http://developer.android.com/training/basics/network-ops/connecting.html

使用 Volley 的引用链接:http://www.michenux.net/android-volley-and-gson-tutorial-797.html

关于java - Android 开发将设备与服务器通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23308256/

相关文章:

arrays - Delphi 中以空终止整数的 BYTE 数组 (BYTE[]) 相当于什么?

Java 扩展泛型类型参数

java - 我无法获取请求参数的值

java - Android 日期时间操作库

android - 理解Android Async Http Client的用处

android - fragment 中的 runOnUiThread() 方法

node.js - 在同一端口上运行socket.io 2.0和Express 4.0+

c++ - cpp Linux套接字编程错误与接受

Java - 未获取特定时区的时间戳

java - CompletableFuture recoverWith 等效?即异常但返回 CompletableFuture<U>