欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用SignalR推送服務(wù)在Android的實(shí)現(xiàn) SignalA

 更新時(shí)間:2014年07月24日 09:56:09   投稿:hebedich  
SignalA是老外寫(xiě)的用于實(shí)現(xiàn).net端推送消息至安卓端的實(shí)現(xiàn),支持版本為android 2.3或以上

由于我的版本最低是2.2,所以只有把源碼下下來(lái)自己改,如果你覺(jué)得太多了可自己編譯成jar引用,本人不才,對(duì)java不是很熟悉,如果此版本中有錯(cuò)誤還請(qǐng)大家指出來(lái),此圖顯示的是安卓2.2與4.0的版本。

chat_hub代碼:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  android:layout_width="match_parent" 
  android:layout_height="match_parent" 
  android:orientation="vertical" > 
  <EditText 
    android:id="@+id/chat_text" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_margin="20dp" 
    android:gravity="top" 
    android:inputType="textMultiLine" 
    android:text="" /> 
 
</LinearLayout>

ChatHub.java代碼:

package com.loan.zhironghuimobile; 
 
import org.json.JSONArray; 
 
import com.zsoft.SignalA.Hubs.HubConnection; 
import com.zsoft.SignalA.Hubs.HubOnDataCallback; 
import com.zsoft.SignalA.Hubs.IHubProxy; 
import com.zsoft.SignalA.Transport.StateBase; 
import com.zsoft.SignalA.Transport.Longpolling.LongPollingTransport; 
 
import android.app.Activity; 
import android.content.OperationApplicationException; 
import android.os.Bundle; 
import android.widget.EditText; 
 
public class ChatHub extends Activity { 
   
  private final static String HUB_URL="http://192.168.1.200:82/signalr/hubs"; 
  @Override 
  protected void onCreate(Bundle savedInstanceState) { 
    // TODO Auto-generated method stub 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.chat_hub); 
    beginConnect(); 
  } 
  /**
   * hub鏈接
   */ 
  private HubConnection conn=new HubConnection(HUB_URL, this, new LongPollingTransport()) { 
    @Override 
    public void OnError(Exception exception) { 
    } 
    @Override 
    public void OnMessage(String message) { 
    } 
    @Override 
    public void OnStateChanged(StateBase oldState, StateBase newState) { 
    } 
  }; 
  /**
   * hub代理 panderman 2013-10-25
   */ 
  private IHubProxy hub = null; 
  /**
   * 開(kāi)啟推送服務(wù) panderman 2013-10-25
   */ 
  private void beginConnect(){ 
    try { 
      hub=conn.CreateHubProxy("ChatHub"); 
    } catch (OperationApplicationException e) { 
      e.printStackTrace(); 
    } 
    hub.On("addNewMessageToPage", new HubOnDataCallback() 
    { 
      @Override 
      public void OnReceived(JSONArray args) { 
        EditText chatText=(EditText)findViewById(R.id.chat_text); 
        //chatText.setText(args.toString()); 
        for(int i=0; i<args.length(); i++) 
        { 
          chatText.append(args.opt(i).toString()); 
        } 
      } 
    }); 
    conn.Start(); 
  } 
}

SignalR服務(wù)器端代碼參照http://www.asp.net/signalr來(lái)寫(xiě)

更多用法參照SignalA官方文檔

相關(guān)文章

最新評(píng)論