Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
开发Android客户端服务器应用程序_Android_Client Server - Fatal编程技术网

开发Android客户端服务器应用程序

开发Android客户端服务器应用程序,android,client-server,Android,Client Server,我正在开发一个应用程序,如下所示: Android应用程序(作为客户端)…它将数据发送到服务器(在PC上运行的Java应用程序)。 我使用socket编程实现了这一点,它正在工作。我有以下问题: 当我单击应用程序上的“发送”按钮时,应用程序界面会冻结约7秒。它能够ping并连接到服务器,但在此期间,UI冻结,如果我单击应用程序上的任何其他按钮,我会收到一条消息,应用程序被卡住(但应用程序在约7秒后恢复正常)。最好的解决方法是什么 在PC上接收到数据(字符串)后,我希望以列表框UI的形式显示它,以

我正在开发一个应用程序,如下所示: Android应用程序(作为客户端)…它将数据发送到服务器(在PC上运行的Java应用程序)。 我使用socket编程实现了这一点,它正在工作。我有以下问题:

  • 当我单击应用程序上的“发送”按钮时,应用程序界面会冻结约7秒。它能够ping并连接到服务器,但在此期间,UI冻结,如果我单击应用程序上的任何其他按钮,我会收到一条消息,应用程序被卡住(但应用程序在约7秒后恢复正常)。最好的解决方法是什么

  • 在PC上接收到数据(字符串)后,我希望以列表框UI的形式显示它,以便用户可以选择/双击特定字符串,并打开一个消息框,显示已选择该特定字符串。开发此UI的最佳方式是什么?当服务器从客户端(android应用程序)接收到数据并显示此UI时,如何直接调用此UI


  • 请让我知道。非常感谢您的帮助。

    将所有与网络相关的代码放在一个单独的线程中,或者(更容易)和。否则,正如您所注意到的,您将阻塞UI,并且应用程序将在较新的Android版本(ICS和JB)上崩溃


    如果你搜索SO和interwebs,你会发现很多例子。

    对于1:使用
    AsyncTask
    ,这样你就不会冻结UI,也不会得到
    NetworkOnMainthreadException
    s同样,这个问题不太适合这里,我们希望问题得到某种尝试的支持(因此是流行的问题)“您尝试了什么?”)。如果后台进程长期运行,则不建议使用AsyncTask。它可以简单地在单独的线程或服务中实现(这在我开发类似应用程序时很有用).关于您的第二个问题,您是否希望在客户端(即android端)执行此操作?如果您希望在客户端执行类似操作,则可以让服务器应用程序在接收到某些数据后向客户端发送通知。感谢您的答复。我尝试在活动中使用它,并且还使用了客户端服务器connec的套接字程序对于第二个问题,我希望它在服务器端实现。请建议..thnx。