unity安卓接入极光推送Demo详解
unity极光推送官方Demo https://github.com/jpush/jpush-unity3d-plugin
using JPush;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using System;
using Newtonsoft.Json.Linq;//需要添加这部分的引用
using Newtonsoft.Json;//需要添加这部分的引用 /// <summary>
/// 参考脚本PluginsDemo
/// </summary>
public class Test : MonoBehaviour {// public tex// Use this for initializationvoid Start () {gameObject.name = "Main Camera";JPushBinding.Init(gameObject.name);//初始化并开始推送服务JPushBinding.RequestPermission();//必须JPushBinding.SetDebug(true);JPushBinding.ResumePush();//必须}/// <summary>
/// 获取java类测试部分
/// </summary>
/// <returns></returns>public string GetSomething(){try{AndroidJavaClass sss = new AndroidJavaClass("cn.jiguang.unity.push.JPushReceiver");sss.Call<string>("GetExtras");text.text = sss.ToString();return sss.ToString();}catch (System.Exception e){text.text = e.ToString();return "没有";}}/// <summary>/// 调用获取java类测试部分/// </summary>public void GetIntent(){GetSomething();}/// <summary>/// 停止 JPush 推送服务。 /// </summary>public void StopPush(){JPushBinding.StopPush();}/// <summary>/// 唤醒 JPush 推送服务,使用了 StopPush 必须调用此方法才能恢复。/// </summary>public void ResumePush(){JPushBinding.ResumePush();}public Text text;/// <summary>/// 获取当前设备的 Registration Id。/// </summary>/// <returns>设备的 Registration Id。</returns>public void GetRegistrationId(){text.text= JPushBinding.GetRegistrationId();}#region 如何设置标签,实现通过标签发送消息 在官网发送推送内容时选择通过标签发送int callbackId = 0;public void SetTagClick(){List<string> tags = new List<string>() { "111", "222" };JPushBinding.SetTags(callbackId++, tags);}public void DeleteTagClick(){List<string> tags = new List<string>();tags.Add("addtag1");tags.Add("addtag2");JPushBinding.DeleteTags(callbackId++, tags);}public void AddTagClick(){List<string> tags = new List<string>() { "addtag1", "addtag2" };JPushBinding.AddTags(callbackId++, tags);}#endregion//unity极光推送官方Demo https://github.com/jpush/jpush-unity3d-plugin//官方注册应用 https://www.jiguang.cn/jpush/#/app/a3f81515bb6d98e9ea43b47e/push/notification// 官方文档 https://docs.jiguang.cn/jpush/server/push/rest_api_v3_push/#region 自动接收消息,自动调用部分/* data format{"message": "hhh","extras": {"f": "fff","q": "qqq","a": "aaa"}}*/// public Text receiveMessageText;// 开发者自己处理由 JPush 推送下来的消息。void OnReceiveMessage(string jsonStr){Debug.Log("recv----message-----" + jsonStr);//receiveMessageText.text = "recv----message-----" + jsonStr;}/*** {* "title": "notiTitle",* "content": "content",* "extras": {* "key1": "value1",* "key2": "value2"* }* }*/public Text receiveNotificationText;// 获取的是 json 格式数据,开发者根据自己的需要进行处理。//能够得到 推送内容 、通知标题、附加字段//推送字段在这里,需要把string格式的jsonStr转换为json,再取其中字段void OnReceiveNotification(string jsonStr){Debug.Log("recv---notification---" + jsonStr);receiveNotificationText.text = "recv---notification---" + jsonStr;}public Text OnOpenNotificationText;public Text titleText;public Text contentText;public Text extrasText;public Text errorText;//开发者自己处理点击通知栏中的通知//点击通知栏之后开发者自己需要做的事情、、、、、、、、、、有用void OnOpenNotification(string jsonStr){Debug.Log("recv---openNotification---" + jsonStr);OnOpenNotificationText.text = "recv---openNotification---" + jsonStr;try{//需要把string格式的jsonStr转换为jsonvar test = JsonConvert.DeserializeObject(jsonStr) as JObject;string title = test["title"].ToString();//已得到通知标题string content = test["content"].ToString();//已得到推送内容string extras = test["extras"].ToString();//已得到附加字段 6666666titleText.text = title;contentText.text = content;extrasText.text = test["extras"]["key"].ToString(); }catch (Exception e){errorText.text=e.ToString();}}// public Text OnJPushTagOperateResultText;/// <summary>/// JPush 的 tag 操作回调。/// </summary>/// <param name="result">操作结果,为 json 字符串。</param>void OnJPushTagOperateResult(string result){Debug.Log("JPush tag operate result: " + result);// OnJPushTagOperateResultText.text = "JPush tag operate result: " + result;}// public Text OnJPushAliasOperateResultText;/// <summary>/// JPush 的 alias 操作回调。/// </summary>/// <param name="result">操作结果,为 json 字符串。</param>void OnJPushAliasOperateResult(string result){Debug.Log("JPush alias operate result: " + result);// OnJPushAliasOperateResultText.text = "JPush alias operate result: " + result;}// public Text OnGetRegistrationIdText;void OnGetRegistrationId(string result){Debug.Log("JPush on get registration Id: " + result);// OnGetRegistrationIdText.text = "JPush on get registration Id: " + result;}#endregion}
unity安卓接入极光推送Demo详解相关推荐
- Android开发之第三方推送JPush极光推送知识点详解 学会集成第三方SDK推送
作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 下面是一些知识点介绍,后期将会带领大家进行代码实战: 一.Android实现推送方式解决方案: 1.推 ...
- 推送原理解析 极光推送使用详解
本文转自这里 ,在此向大佬致敬 推送技术产生场景: 服务器端主动发出:通常情况下,客户端与服务器交互都是客户端主动的,服务器一般不能主动与客户端进行数据交互,因为服务器端无法得知客户端的IP地址和状态 ...
- uni-app打包安卓app如何接入极光推送(JG-JPush)?
最近公司在做uni-app的跨端应用,其中在打包app时需要用到消息推送功能,经过一番摸索也是终于弄通并成功集成了第三方极光推送.话不多说,直接开撸: 一.我们需要用到的一些插件以及极光平台的官网链接 ...
- Android vivo手机接入极光推送闪退
最近项目中用到推送功能,选择接入极光推送,可是根据官方文档接入之后,app一启动过一会就闪退,而且是必闪退,翻来覆去看了几遍文档,没有遗漏都开始怀疑人生了. 然后定位问题,把极光推送初始化方法注释就不 ...
- “iOS 推送通知”详解:从创建到设置到运行
"iOS 推送通知"详解:从创建到设置到运行 转自 http://www.csdn.net/article/2012-02-18/311976 这是一篇编译的文章,内容均出自Par ...
- Android接入极光推送,接入华为,小米,OPPO,VIVO厂商通道
极光推送作用: 极光推送(JPush)是一个端到端的推送服务,使得服务器端消息能够及时地推送到终端用户手机上,让开发者积极地保持与用户的连接,从而提高用户活跃度.提高应用的留存率 主要作用: 保持与服 ...
- 极光推送demo下载运行错误
今天做极光推送调研的时候发现下载后的demo无法运行,生成以下两个错误: · code signing is required for product type 'Application ...
- uni-app接入极光推送
uniPush和uni接极光推送选择 初创项目可使用uniPush, 二开项目原公司用的极光你就用极光 但是你要清楚的是: 1 离线推送都是要花钱的. 2 uniPush更简单, 获取唯一设备标识 p ...
- Android 消息推送框架详解
消息推送的概念 消息推送,是指绕过手机运营商,通过TCP/IP网络传输的方式,向应用程序发送数据,这些数据包括简单的文本,图片,或者其他多媒体数据. 与手机运营商发送短信的方式相比,消息推送普及性和可 ...
最新文章
- python 函数递归一次增加一次变量_python3--函数(函数,全局变量和局部变量,递归函数)...
- [转]Linux配置防火墙
- 金融反欺诈和金融构建信用评分或者金融预测特征抽取案例
- [网络流24题] 最长递增子序列
- Node.js 修复4个漏洞
- ASP.NET 2.0构建动态导航的Web应用程序(TreeView和Menu )[转载]
- 开会坐在后面,意思是不感兴趣
- python socket清空接受区_用 Python 开发一个 「聊天室」
- 这篇文章,自带背景音乐。因为它来自1993年!
- 在linux下用C语言编写贪吃蛇小游戏
- centos 安装wget命令
- opengl 雷霆战机 2d
- Android debug时一直处于waiting for debugger解决办法
- 移动硬盘无法读取是怎么回事?
- 海思开发:yolo v5s :pytorch->onnx->caffe->nnie
- FairyGUI基础学习笔记
- python编写coc部落冲突游戏辅助(1)
- PCL估计点云的表面法向量
- 智慧能源篇 1 —— 合同能源管理(EMC)及其商业模式和税收优惠政策
- 知识图谱实战应用11-基于py2neo构建一个简单的问答功能