从网络上搜索到的Demo,自己进行了稍微的改动

Signala类库从https://github.com/erizet/SignalA获得,不过相关引用有错误,需要手动修正。

下载相关源码

  1. package com.zsoft.SignalADemo;
  2. import android.app.Activity;
  3. import org.json.JSONArray;
  4. import com.zsoft.signala.hubs.*;
  5. import com.zsoft.signala.hubs.HubConnection;
  6. import com.zsoft.signala.transport.StateBase;
  7. import com.zsoft.signala.transport.longpolling.*;
  8. import android.content.OperationApplicationException;
  9. import android.os.Bundle;
  10. import android.util.Log;
  11. import android.widget.EditText;
  12. /**
  13. * Created by King on 2016/8/3.
  14. */
  15. public class chatHubActivity extends Activity {
  16. private final static String TAG = "KING";
  17. private final static String HUB_URL = "http://192.168.1.110:8022/signalr/hubs";
  18. @Override
  19. protected void onCreate(Bundle savedInstanceState) {
  20. super.onCreate(savedInstanceState);
  21. setContentView(R.layout.chat_hub);
  22. beginConnect();
  23. }
  24. /**
  25. * hub链接
  26. */
  27. private HubConnection conn = new HubConnection(HUB_URL, this, new LongPollingTransport()) {
  28. @Override
  29. public void OnError(Exception exception) {
  30. Log.d(TAG, "OnError=" + exception.getMessage());
  31. }
  32. @Override
  33. public void OnMessage(String message) {
  34. Log.d(TAG, "message=" + message);
  35. }
  36. @Override
  37. public void OnStateChanged(StateBase oldState, StateBase newState) {
  38. Log.d(TAG, "OnStateChanged=" + oldState.getState() + " -> " + newState.getState());
  39. }
  40. };
  41. /*
  42. * hub代理 panderman 2013-10-25
  43. */
  44. private IHubProxy hub = null;
  45. /**
  46. * 开启推送服务 panderman 2013-10-25
  47. */
  48. private void beginConnect() {
  49. try {
  50. //服务器端的HUB为ChatHub
  51. hub = conn.CreateHubProxy("ChatHub");
  52. } catch (OperationApplicationException e) {
  53. e.printStackTrace();
  54. }
  55. hub.On("addNewMessageToPage", new HubOnDataCallback() {
  56. @Override
  57. public void OnReceived(JSONArray args) {
  58. EditText chatText = (EditText) findViewById(R.id.chat_text);
  59. //chatText.setText(args.toString());
  60. for (int i = 0; i < args.length(); i++) {
  61. chatText.append(args.opt(i).toString());
  62. }
  63. }
  64. });
  65. conn.Start();
  66. }
  67. }

(转)android(SignalA)接收.net(SignalR)推送过来的消息的更多相关文章

  1. Android 基于Netty接收和发送推送解决方案的消息字符串(三)

    在上一篇文章中<Android 基于Netty的消息推送方案之概念和工作原理(二)> .我们介绍过一些关于Netty的概念和工作原理的内容,今天我们先来介绍一个叫做ChannelBuffe ...

  2. ionic 前端接收到后台推送来的消息后,显示在手机的通知栏上

    这里主要用到cordova提供的插件:(在app没有关闭的情况下只要有推送的消息就会有提醒,但是在app关闭的情况下就不会提示) 首先安装cordova-plugin-local-notificati ...

  3. Android APP切换到后台接收不到推送消息

    1.   Android端进程被杀死后,目前自带的保护后台接收消息活跃机制.暂时没有什么好的机制保持任何情况下都活跃 android原生系统用home键杀进程可以起来,如果是强行停止就只能用户自己手动 ...

  4. IOS 在不打开电话服务的时候,可以响应服务器的推送消息,从而接收服务器的推送消息

    在做即时通讯(基于xmpp框架)的时候遇到这样一个问题,就是在真机测试的时候,你按Home键返回桌面,在你返回桌面的时候,这是你的程序的挂起状态的,在你挂起的时候, 相当于你的程序是死的,程序的所有进 ...

  5. Java企业微信开发_05_消息推送之发送消息(主动)

    一.本节要点 1.发送消息与被动回复消息 (1)流程不同:发送消息是第三方服务器主动通知微信服务器向用户发消息.而被动回复消息是 用户发送消息之后,微信服务器将消息传递给 第三方服务器,第三方服务器接 ...

  6. springboot整合websocket实现一对一消息推送和广播消息推送

    maven依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...

  7. Java企业微信开发_04_消息推送之发送消息(主动)

    源码请见: Java企业微信开发_00_源码及资源汇总贴 一.本节要点 1.发送消息与被动回复消息 (1)流程不同:发送消息是第三方服务器主动通知微信服务器向用户发消息.而被动回复消息是 用户发送消息 ...

  8. Docker最全教程之使用.NET Core推送钉钉消息(十九)

    前言 上一篇我们通过实战分享了使用Go推送钉钉消息,由于技痒,笔者现在也编写了一个.NET Core的Demo,作为简单的对照和说明. 最后,由于精力有限,笔者希望有兴趣的朋友可以分享下使用CoreR ...

  9. Win10环境下使用Flask配合Celery异步推送实时/定时消息(Socket.io)/2020年最新攻略

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_163 首先得明确一点,和Django一样,在2020年Flask 1.1.1以后的版本都不需要所谓的三方库支持,即Flask-Ce ...

随机推荐

  1. ubuntu 18.04设置开机自动挂载移动硬盘

    首先在命令行执行df -h指令,可以看到如下结果: zifeiy@zifeiy-PC1:~$ df -h 文件系统 容量 已用 可用 已用% 挂载点 udev 964M 0 964M 0% /dev ...

  2. ORB-特征点提取代码比较

    ORB特征提取代码测试 整合ICE-BA.ORB-SLAM2.openvslam中的ORB提取代码,并比较速度,方便以后使用 1. ORB-SLAM2 vsICE-BA vs openvslam IC ...

  3. JAVA数据结构和算法 3-简单排序

    排序中的两种基本操作是比较和交换.在插入排序中还有移动. 冒泡排序:两两比较相邻元素,如果较大数位于较小数前面,则交换: 每一趟遍历将一个最大的数移到序列末尾,共遍历N-1趟. 如果执行完一趟之后没有 ...

  4. 安卓运行linux应用程序

    安卓是可以运行linux应用程序的,安卓系统原来就基于Linux.但是安卓已经把linux改头换面了.具体方法是安装Termux软件,然后就可以运行pkg命令安装软件包了,希望可以帮助到大家.

  5. flask核心对象

    appcontext 上下文 处理

  6. (模板)poj2947(高斯消元法解同余方程组)

    题目链接:https://vjudge.net/problem/POJ-2947 题意:转换题意后就是已知m个同余方程,求n个变量. 思路: 值得学习的是这个模板里消元用到lcm的那一块.注意题目输出 ...

  7. jdk1.8 Maven 的安装教程

    1.下载java1.8    URL:    http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-213315 ...

  8. .net操作数据库

    1. 自动生化曾的一些查询 可以自定义查询语句 2.自定义查询过程调用 USE [mydb] GO /****** Object: StoredProcedure [dbo].[procLogin] ...

  9. 关于日志slf4j+logback&logback.xml配置

    1.maven依赖 <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api --> <!-- <dependen ...

  10. C++ 继承 - 在派生类中对基类初始化

    构造函数与基类的其他成员不同,不能被派生类继承,因此为了初始化基类中的成员变量,需要在派生类中调用基类的构造函数(即显式调用),如果派送类没有调用则默认调用基类的无参构造函数(即隐式调用). 显式调用 ...