(转)android(SignalA)接收.net(SignalR)推送过来的消息
从网络上搜索到的Demo,自己进行了稍微的改动
Signala类库从https://github.com/erizet/SignalA获得,不过相关引用有错误,需要手动修正。
- package com.zsoft.SignalADemo;
- import android.app.Activity;
- import org.json.JSONArray;
- import com.zsoft.signala.hubs.*;
- import com.zsoft.signala.hubs.HubConnection;
- import com.zsoft.signala.transport.StateBase;
- import com.zsoft.signala.transport.longpolling.*;
- import android.content.OperationApplicationException;
- import android.os.Bundle;
- import android.util.Log;
- import android.widget.EditText;
- /**
- * Created by King on 2016/8/3.
- */
- public class chatHubActivity extends Activity {
- private final static String TAG = "KING";
- private final static String HUB_URL = "http://192.168.1.110:8022/signalr/hubs";
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- 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) {
- Log.d(TAG, "OnError=" + exception.getMessage());
- }
- @Override
- public void OnMessage(String message) {
- Log.d(TAG, "message=" + message);
- }
- @Override
- public void OnStateChanged(StateBase oldState, StateBase newState) {
- Log.d(TAG, "OnStateChanged=" + oldState.getState() + " -> " + newState.getState());
- }
- };
- /*
- * hub代理 panderman 2013-10-25
- */
- private IHubProxy hub = null;
- /**
- * 开启推送服务 panderman 2013-10-25
- */
- private void beginConnect() {
- try {
- //服务器端的HUB为ChatHub
- 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();
- }
- }
(转)android(SignalA)接收.net(SignalR)推送过来的消息的更多相关文章
- Android 基于Netty接收和发送推送解决方案的消息字符串(三)
在上一篇文章中<Android 基于Netty的消息推送方案之概念和工作原理(二)> .我们介绍过一些关于Netty的概念和工作原理的内容,今天我们先来介绍一个叫做ChannelBuffe ...
- ionic 前端接收到后台推送来的消息后,显示在手机的通知栏上
这里主要用到cordova提供的插件:(在app没有关闭的情况下只要有推送的消息就会有提醒,但是在app关闭的情况下就不会提示) 首先安装cordova-plugin-local-notificati ...
- Android APP切换到后台接收不到推送消息
1. Android端进程被杀死后,目前自带的保护后台接收消息活跃机制.暂时没有什么好的机制保持任何情况下都活跃 android原生系统用home键杀进程可以起来,如果是强行停止就只能用户自己手动 ...
- IOS 在不打开电话服务的时候,可以响应服务器的推送消息,从而接收服务器的推送消息
在做即时通讯(基于xmpp框架)的时候遇到这样一个问题,就是在真机测试的时候,你按Home键返回桌面,在你返回桌面的时候,这是你的程序的挂起状态的,在你挂起的时候, 相当于你的程序是死的,程序的所有进 ...
- Java企业微信开发_05_消息推送之发送消息(主动)
一.本节要点 1.发送消息与被动回复消息 (1)流程不同:发送消息是第三方服务器主动通知微信服务器向用户发消息.而被动回复消息是 用户发送消息之后,微信服务器将消息传递给 第三方服务器,第三方服务器接 ...
- springboot整合websocket实现一对一消息推送和广播消息推送
maven依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...
- Java企业微信开发_04_消息推送之发送消息(主动)
源码请见: Java企业微信开发_00_源码及资源汇总贴 一.本节要点 1.发送消息与被动回复消息 (1)流程不同:发送消息是第三方服务器主动通知微信服务器向用户发消息.而被动回复消息是 用户发送消息 ...
- Docker最全教程之使用.NET Core推送钉钉消息(十九)
前言 上一篇我们通过实战分享了使用Go推送钉钉消息,由于技痒,笔者现在也编写了一个.NET Core的Demo,作为简单的对照和说明. 最后,由于精力有限,笔者希望有兴趣的朋友可以分享下使用CoreR ...
- Win10环境下使用Flask配合Celery异步推送实时/定时消息(Socket.io)/2020年最新攻略
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_163 首先得明确一点,和Django一样,在2020年Flask 1.1.1以后的版本都不需要所谓的三方库支持,即Flask-Ce ...
随机推荐
- jmeter解决乱码
在jmeter.properties 这个文件里面 找到sampleresult.default.encoding=xx 后面xx改成utf-8,然后取消注释 解决jmeterbody里面中文显示不出 ...
- C++中使用OPENCV对深度学习的特征图进行可视化
//需要先在运行目录下创建文件夹opencv_layers #include <iostream> #include <unistd.h> #include <openc ...
- Java程序员壁纸-Java开发
- 建立自己的数据类型——C结构体归纳
一.建立结构体类型 1.申明结构体类型 struct 结构体名 { 成员表列(类型名 成员名:); }: 例如: struct Person { char name; int age; char se ...
- java中序列化的作用
一 什么叫序列化 通俗点讲:它是处理对象流的一种机制,即可以很方便的保存内存中java对象的状态,同时也为了方便传输. 二 序列化有什么作用 1.方便传输,速度快,还很安全,被调用方序列化,调用方反 ...
- 【Matlab开发】matlab中bar绘图设置与各种距离度量
[Matlab开发]matlab中bar绘图设置与各种距离度量 标签(空格分隔): [Matlab开发] [机器学习] 声明:引用请注明出处http://blog.csdn.net/lg1259156 ...
- ffmpeg学习笔记-音频播放
前文讲到音频解码,将音频解码,并且输入到PCM文件,这里将音频通过AudioTrack直接输出 音频播放说明 在Android中自带的MediaPlayer也可以对音频播放,但其支持格式太少 使用ff ...
- AndroidMainfest详解
基于TV settings和SettingsProvider Android启动模式对activity行为的影响 AndroidManifest.xml文件详解 Manifest文件中,applica ...
- 《MIT 6.828 Homework 1: boot xv6》解题报告
本作业的网站链接:MIT 6.828 Homework 1: boot xv6 问题 Exercise: What is on the stack? While stopped at the abov ...
- 【青橙商城-管理后台开发】3. web模块搭建
[青橙商城-管理后台开发]3. web模块搭建 1.创建qingcheng_web_manager模块 pom.xml <?xml version="1.0" encodin ...