繁体   English   中英

Android应用程序中的客户端服务器

[英]Client-Server in an Android Application

我正在尝试做一个本地Java服务器和一个连接到服务器的Android应用程序。 我搜索了一下,发现可以使用WebSocket来创建连接,但是我没有找到有关rmi注册表的任何信息。 我尝试使用它,但是我无法使用它,所以我不得不使用WebSocket和此代码

>               int port=2111;       
>               try {
>               ServerSocket servSock;
>               servSock = new ServerSocket(port);
>               System.out.println("[+] Server ready.");
>               
>               while(true) 
>               {
>                    //Assigns a new thread to any client connected
>                   Socket socket = servSock.accept();
>                   new MySocketServer(socket).start();
>               }
>           
>               }catch (IOException e) {
>                   e.printStackTrace();}

是否还有适用于Android应用程序的rmi之类的东西,还是我必须使用WebSocket进行连接? 谢谢您的帮助。

您需要进行一些网络背景研究...您可以将TCP或UDP用于传输程序包。 将SOCKET用于TCP,将DATAGRAM用于UDP,其速度比TCP快得多,但面向连接的方式较少。

在Android方面,请使用Threading进行网络通信,否则会因阻止UI线程而出错。

搜索谷歌有很多示例JAVA / ANDROID TCP / UDP服务器-客户端示例

您也可以使用http协议来实现长连接。 也。 MBaaS平台很多,例如parse,stackMob。 这些平台提供了许多开放的API,您可以直接调用这些API

尝试使用Netty框架( http://netty.io )。 我所有的客户端服务器编程都花了很多时间。 Netty对于服务器端来说很好。 对于android,当服务器不要求任何推送通知时,我使用HttpClient。 如果您需要推送通知,请访问: https : //code.google.com/p/android-random/ (KeepAliveService)。 这是一个好的开始。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM