【发布时间】:2013-02-12 03:25:14
【问题描述】:
我正在开发一个应用程序如下: Android APP(作为客户端)..它将数据发送到服务器(在 PC 上运行的 Java 应用程序)。 我使用套接字编程实现了这个并且它正在工作。我有以下问题:
当我单击应用程序上的发送按钮时,应用程序 UI 会冻结约 7 秒。它能够 ping 并连接到服务器,但在此期间 UI 冻结,如果我单击应用程序上的任何其他按钮,我会收到一条消息应用程序被卡住(但应用程序在 7 秒后恢复正常)。解决它的最佳方法是什么。
一旦在 PC 上接收到数据(字符串),我想以列表框 UI 的形式显示它,以便用户可以选择/双击特定字符串并打开一个消息框,显示特定的字符串被选中。开发此 UI 的最佳方法是什么,以及如何在服务器从客户端(Android 应用程序)接收到数据并且此 UI 应该显示后直接调用它。
请告诉我。感谢所有帮助。
【问题讨论】:
-
For 1: 使用
AsyncTask这样你就不会冻结 UI 也不会得到NetworkOnMainthreadExceptions 另外,这个问题在这里不太适合,我们希望问题是得到某种试验的支持(因此流行的问题“你试过什么?”)。 -
如果后台进程长时间运行,不建议使用 AsyncTask。它可以简单地在单独的线程或服务中实现(这对我开发类似的应用程序很有用)。
-
关于你的第二个问题,你想在客户端即安卓端这样做吗?如果你想在客户端做类似的事情,那么你可以让服务器应用程序在收到一些数据后向客户端发送通知。
-
感谢您的回复。我尝试在 Activity 中使用它,还使用套接字程序进行客户端服务器连接。对于第二个问题,我希望它在服务器端实现它。请指教..thnx.
标签: android client-server