使用SignalR推送服务在Android的实现 SignalA
程序员文章站
2022-06-04 12:18:13
由于我的版本最低是2.2,所以只有把源码下下来自己改,如果你觉得太多了可自己编译成jar引用,本人不才,对java不是很熟悉,如果此版本中有错误还请大家指出来,此图显示的是...
由于我的版本最低是2.2,所以只有把源码下下来自己改,如果你觉得太多了可自己编译成jar引用,本人不才,对java不是很熟悉,如果此版本中有错误还请大家指出来,此图显示的是安卓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; /** * 开启推送服务 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服务器端代码参照来写
推荐阅读
-
Android开发使用json实现服务器与客户端数据的交互功能示例
-
使用SignalR推送服务在Android的实现 SignalA
-
在asp.net core中使用类似Application的服务的实现
-
Android使用OKHttp库实现视频文件的上传到服务器
-
android硬编码h264数据,并使用rtp推送数据流,实现一个简单的直播-MediaCodec(二)
-
Erlang实现的百度云推送Android服务端实例
-
android硬编码h264数据,并使用rtp推送数据流,实现一个简单的直播-MediaCodec
-
在 Asp.NET MVC 中使用 SignalR 实现推送功能
-
使用SignalR推送服务在Android的实现 SignalA
-
如何使用SAP云平台的Notification服务给Android应用推送通知消息 SAP成都研究院SAP Cloud PlatformSAP云平台CloudABAP