Java 最快的android服务器通信

Java 最快的android服务器通信,java,android,protocols,google-cloud-messaging,Java,Android,Protocols,Google Cloud Messaging,我正在创建一个android应用程序,以便尽可能快地从服务器获取信息。 我对安全性或保持电池寿命不感兴趣。消息很可能很小,但很快就会出现(每隔几秒钟)。通信将主要是单向的,但是应用程序与服务器通信的能力将是一个额外的好处 我一直在关注谷歌云消息(GCM),但关于这一速度的报道好坏参半 这与HTTP/JSON连接的速度相比如何?或者设置服务器连接并将消息推送到的套接字 还有其他我没有考虑过的选择吗 编辑: 这将完全通过WiFi运行,它提供与服务器的持续连接,因此速度非常快(每次连接都不会出现时间延

我正在创建一个android应用程序,以便尽可能快地从服务器获取信息。 我对安全性或保持电池寿命不感兴趣。消息很可能很小,但很快就会出现(每隔几秒钟)。通信将主要是单向的,但是应用程序与服务器通信的能力将是一个额外的好处

我一直在关注谷歌云消息(GCM),但关于这一速度的报道好坏参半

这与HTTP/JSON连接的速度相比如何?或者设置服务器连接并将消息推送到的套接字

还有其他我没有考虑过的选择吗

编辑:
这将完全通过WiFi运行,它提供与服务器的持续连接,因此速度非常快(每次连接都不会出现时间延迟)

您可以通过使用名为

典型的实现如下所示:

    @Override
    protected String doInBackground(String... arg0) {
     String result= TIME_OUT;   //public static final String TIME_OUT = time_out_error" 
     while(result.equals(TIME_OUT))
         result = getServerInformation();

     return result;
    }




public String  getServerInformation(){
         String result = null;
        DefaultHttpClient def = new DefaultHttpClient();
        HttpParams httpParams = def.getParams();
        HttpConnectionParams.setConnectionTimeout(httpParams, CONNECTION_TIMEOUT);

        ConnManagerParams.setTimeout(httpParams, CONNECTION_TIMEOUT);
        HttpPost httpPost = new HttpPost(mPushURL);
        httpPost.addHeader("Accept", "application/json");

        try {
            Log.i(TAG, "Executing POST(PUSH) request " + httpPost.getRequestLine());

            HttpResponse httpResponse = def.execute(httpPost);
            Log.i(TAG, result);
            Log.i(TAG, String.valueOf(httpResponse.getProtocolVersion()));
            Log.i(TAG, String.valueOf(httpResponse.getEntity().getContent())); //For testing purposes


        } catch (ClientProtocolException e) {
                 e.printStackTrace();
       } catch (IOException e) {
            e.printStackTrace();
        }
//HERE YOU SHOULD TURN result = TIME_OUT or whatever you want
        return result;

  }

您应该尝试web套接字,而不是简单的HTTP web服务调用。只要服务器上有东西要共享,web套接字就会与服务器建立持久连接。服务器应该广播它,以便客户端可以在已经建立的连接上接收该数据。