位置: IT常识 - 正文

Uni-app实现推送Uni-push(Android)(uniapp 信息推送)

编辑:rootadmin
Uni-app实现推送Uni-push(Android)

推荐整理分享Uni-app实现推送Uni-push(Android)(uniapp 信息推送),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:uni-app消息推送,uni-app消息推送,uni消息推送,uni-app发布,uni-app 通知,uni-app发布,uni-app 通知,uni消息推送,内容如对您有帮助,希望把文章链接给更多的朋友!

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录前言一、unipush是什么?二、使用步骤

1.开通Unipush推送服务2.java服务端下发消息内容3.预览测试4.手机端处理前言

        国内Android的Push是一个混乱的世界,因为 Google 的 Push 服务 FCM 被墙,所以一些国内的安卓手机厂商各自做了自己的推送,比如华为、小米、OPPO、VIVO、魅族等,但还有很多国产手机厂商没有提供官方推送方案。三方独立公司如个推,则提供了独立的 push 方案。 在没有 uniPush 以前,如果只使用三方 push,会在很多国产手机上因为节电设置而无法保活 push 进程,导致无法推送。 而如果每个安卓手机的官方 Push SDK 都集成开发一遍,这么多平台,工作量会非常巨大,管理维护也很麻烦。

uniPush 解决了这个难题,开发者只需要开发一次。系统会自动在不同手机上选择最可靠的推送通道发送 push 消息,保障送达率。

UniPush 即降低了开发成本、又提高了 push 送达率,并且免费,是当前推送的最佳解决方案。

提示:以下是本篇文章正文内容,下面案例可供参考

一、UniPush是什么?

        UniPush 是 DCloud 联合个推公司推出的集成型统一推送服务,内建了苹果、华为、小米、OPPO、VIVO、魅族、谷歌 FCM 等手机厂商的系统级推送和个推等第三方推送。

二、使用步骤1.开通Unipush推送服务

        HBuilderX 本项目中打开manifest.json,选择“App 模块配置”,向下找到Push推送功能配置,勾选 “UniPush(集成各家手机厂商系统推送及个推)” 即可。

 点击勾选的uniPush配置进入DCloud开发者中心

**注意:**在申请开通时,需要确保输入的 Android包名 和 Android应用签名 (签名信息可点击更多查看具体操作)必须与打包时配置的一致,否则可能会导致无法收到推送消息。

如果已经开通 Uni Push,会看到如下页面:

Uni-app实现推送Uni-push(Android)(uniapp 信息推送)

 

打开链接开发者中心https://dev.dcloud.net.cn/#/pages/app/push/thirdparty

Uni Push 集成并统一了各个手机厂商的系统级推送,目前支持魅族、OPPO、华为、小米、VIVO。如果需要使用厂商推送,需要先在各厂商开发者平台申请。 申请通过后厂商会提供推送的相关参数,需要将这些参数配置到 DCloud 开发者中心后台。 点击厂商推送设置选择当前应用项目页面如下图所示:

由于公司APP需求上线华为,打开AppGallery Connect网站,选择我的项目。打开刚才创建的项目,查看应用信息中相应的华为 AppID、华为 SecretKey。该信息在之后步骤中将会使用,如下图:

其他厂商具体流程点击 厂商应用开通指南-个推文档中心查看详情。

2.java服务端下发消息内容

        首先需要获取AppId、AppKey、MasterSecret参数,登录DCloud开发者中心,在“Uni Push”下的“应用配置”页面中获取,引入maven库文件,在线走内推,离线走个推,Java-sdk封装Rest-V2厂商推送示例:

完整服务端厂商推送教程参考:https://docs.getui.com/getui/server/rest_v2/common_args/

<dependency> <groupId>com.gexin.platform</groupId> <artifactId>gexin-rp-sdk-http</artifactId> <version>4.1.2.1</version> </dependency> <repository> <id>getui-nexus</id> <url>http://mvn.gt.igexin.com/nexus/content/repositories/releases/</url> </repository>public AjaxResult info( String commonApiModel ) { CommonInterfaceModel model = jsonToObject(commonApiModel,key,secret); if(model.isCheck()) { Order appPush = JSONObject.parseObject(model.getParameter(),Order.class); IGtPush push = new IGtPush(url, appKey, masterSecret); Style0 style = new Style0(); // STEP2:设置推送标题、推送内容 style.setTitle(appPush.getOdTitle()); style.setText(appPush.getOdContent()); // 设置推送图标// style.setLogo("./src/main/resources/static/push.png"); // 配置通知栏网络图标// style.setLogoUrl(""); // STEP3:设置响铃、震动等推送效果 // 设置响铃 style.setRing(true); // 设置震动 style.setVibrate(true); // STEP4:选择通知模板 NotificationTemplate template = new NotificationTemplate(); template.setTransmissionType(1); template.setAppId(appId); template.setAppkey(appKey); template.setStyle(style); SingleMessage message = new SingleMessage(); message.setOffline(true); // 离线有效时间,单位为毫秒 message.setOfflineExpireTime(24 * 3600 * 1000); message.setData(template); // 可选,1为wifi,0为不限制网络环境。根据手机处于的网络情况,决定是否下发 message.setPushNetWorkType(0); Target target = new Target(); target.setAppId(appId); target.setClientId(appPush.getClientId()); IPushResult ret = null; try { ret = push.pushMessageToSingle(message, target); } catch (RequestException e) { System.out.println(e.getMessage()); ret = push.pushMessageToSingle(message, target, e.getRequestId()); } if (ret != null) { System.out.println("返回结果=====" + ret.getResponse().toString()); } else { System.out.println("服务器响应异常====="); } return AjaxResult.success(ret.getResponse().toString()); } else { return AjaxResult.error("秘钥或参数错误"); } }3.测试预览

        必须打包正式App安装到手机并要保证第一步(Android包名和Android应用签名)的操作没有问题,手机端通过plus.push.getClientInfo();获取CID客户端标识,也是下一步需要存到数据库的标识串,如下图:

// 获取App端cidlet CID= plus.push.getClientInfo();console.log(CID)

 

4.手机端处理

        需求是针对用户在审核过程中下发到指定人,此人就可以在手机上获得推送消息通知。大概逻辑比较简单,App端获取到cid,通过登录判断当前人是否要接消息通知,通过接口存到对应人的数据库,服务端再通过集成的个推sdk把对应的cid,下发给App端,来完成交互。个推,批量推,群推,可根据业务需求进行更改设定。

App.vue页面:

// #ifdef APP-PLUSlet timer = false;plus.push.addEventListener("click",(msg)=>{clearTimeout(timer);timer = setTimeout(()=>{console.log(1111,msg);},1500)},false)plus.push.addEventListener("receive",(msg)=>{if("LocalMSG" == msg.payload){}else{if(msg.type=='receive'){var options = {cover:false,title:msg.title};plus.push.createMessage(msg.content, msg.payload, options ); } }},false)// #endif

登录页面:

let pinf = plus.push.getClientInfo();let cid = pinf && pinf.clientid || ''; //客户端标识// 登录根据userId更新存数据库clientId//发送网络请求let opts = {url: '/app/*****',method: 'post'}this.$http.httpTokenRequest(opts,{clientId:cid,userId:res.data.data.userId}).then(res => { if(res.data.code == 200){ //继续执行登录逻辑}else{uni.showToast({title: '登录异常,请联系管理员。',icon: "none",})}})推荐

推荐看一下Unipush常见问题 - DCloud问答基本概括了常见的所有问题,希望能帮到你。

本文链接地址:https://www.jiuchutong.com/zhishi/289688.html 转载请保留说明!

上一篇:vue打包之后,可以进行修改配置后端地址、端口等信息方法(vue打包注意事项)

下一篇:【Vite】使用报错合集(vite报错)

  • 我的电脑没有声音了怎么回事(我的电脑没有声音)(我的电脑没有声音了怎么解决)

    我的电脑没有声音了怎么回事(我的电脑没有声音)(我的电脑没有声音了怎么解决)

  • 火绒怎么拦截弹窗(火绒拦截弹窗快捷键)

    火绒怎么拦截弹窗(火绒拦截弹窗快捷键)

  • 开视频能过人脸识别吗

    开视频能过人脸识别吗

  • ipad弯曲能否修复(ipad弯曲能否修复要多少钱)

    ipad弯曲能否修复(ipad弯曲能否修复要多少钱)

  • 快手怎么领取好友送的卡(快手怎么领取好作品专属奖励)

    快手怎么领取好友送的卡(快手怎么领取好作品专属奖励)

  • 软件测试的目的是什么(软件测试的目的和意义)

    软件测试的目的是什么(软件测试的目的和意义)

  • 微信怎样不显示正在输入(微信怎样不显示微信号)

    微信怎样不显示正在输入(微信怎样不显示微信号)

  • 魅族17发布会什么时候(魅族17发布会什么时候开)

    魅族17发布会什么时候(魅族17发布会什么时候开)

  • 电脑管理员密码是什么(苹果电脑管理员密码)

    电脑管理员密码是什么(苹果电脑管理员密码)

  • xr可以更新ios13吗(xr可以更新ios17吗)

    xr可以更新ios13吗(xr可以更新ios17吗)

  • 华为手环5i和5有什么区别(华为手环5i和4pro)

    华为手环5i和5有什么区别(华为手环5i和4pro)

  • 鼠标是计算机的什么设备(鼠标是计算机的一种什么设备)

    鼠标是计算机的什么设备(鼠标是计算机的一种什么设备)

  • access2010属于什么数据库(access2010是()中的一个组件,它是主要作用是())

    access2010属于什么数据库(access2010是()中的一个组件,它是主要作用是())

  • 小米手环4续航能力(小米手环4续航不足一天)

    小米手环4续航能力(小米手环4续航不足一天)

  • ipad能用鼠标吗(华为平板能用鼠标吗)

    ipad能用鼠标吗(华为平板能用鼠标吗)

  • 怎么隐藏情侣黄钻标志(怎么隐藏情侣图标)

    怎么隐藏情侣黄钻标志(怎么隐藏情侣图标)

  • word合并两个上下表格(word中合并两个文档)

    word合并两个上下表格(word中合并两个文档)

  • 华为建立了什么管端战略(华为的建立过程)

    华为建立了什么管端战略(华为的建立过程)

  • iphone怎么防止别人蹭热点(iPhone怎么防止别人进)

    iphone怎么防止别人蹭热点(iPhone怎么防止别人进)

  • 抖音怎么同框合拍(抖音如何同框合拍)

    抖音怎么同框合拍(抖音如何同框合拍)

  • 如何制作公众号文章推送(如何制作公众号流程)

    如何制作公众号文章推送(如何制作公众号流程)

  • 键盘剪切是哪个键(键盘剪切是什么意思)

    键盘剪切是哪个键(键盘剪切是什么意思)

  • 微信待入账能撤回吗(微信待入账能撤回吗怎么操作)

    微信待入账能撤回吗(微信待入账能撤回吗怎么操作)

  • 快手猫粮礼物怎么刷(快手猫粮去哪里兑换现金)

    快手猫粮礼物怎么刷(快手猫粮去哪里兑换现金)

  • 手机色彩不正常怎么办(手机色彩不正常怎么调)

    手机色彩不正常怎么办(手机色彩不正常怎么调)

  • 如何制作微信表情包并上传(如何制作微信表情包合集)

    如何制作微信表情包并上传(如何制作微信表情包合集)

  • 微信里的文档怎样传到电脑(微信里的文档怎么保存到手机里)

    微信里的文档怎样传到电脑(微信里的文档怎么保存到手机里)

  • MAC OS怎样恢复出厂设置 里面什么都有一个个删太慢(mac如何恢复到出厂系统版本)

    MAC OS怎样恢复出厂设置 里面什么都有一个个删太慢(mac如何恢复到出厂系统版本)

  • 斯塔德兰附近荒野上丛生的紫色和粉红色帚石楠,英国多塞特郡 (© allou/iStock/Getty Images Plus)(斯塔尔德)

    斯塔德兰附近荒野上丛生的紫色和粉红色帚石楠,英国多塞特郡 (© allou/iStock/Getty Images Plus)(斯塔尔德)

  • vue控制滚动条滑到某个位置(vue 滚动条往下滑)

    vue控制滚动条滑到某个位置(vue 滚动条往下滑)

  • 北京增值税发票打印边距设置
  • 土地增值税计算题
  • 公司卖东西怎么开票
  • 小规模减免的增值税怎么做账
  • 增值税多提了怎么处理
  • 会计凭证辅助项
  • 三供一业移交内容
  • 什么情况下可以要求员工待岗
  • 季末资产总额的计算
  • 农户的竹扫把如何开票
  • 税控盘备案在电子税务局操作流程
  • 跨月专用发票怎么冲销
  • 固定资产与累计折旧有对应关系吗
  • 新会计准则中资产减值论文
  • 股票交易印花税税率
  • 新收入准则建筑企业按完工百分比
  • 当月少计提工资下月怎么处理?
  • 不动产抵扣进项税
  • 评估价与成交价相差多少合法
  • 可以先报税后结账吗
  • 低价股权转让是利空还是利好
  • 固定资产计提折
  • 总分机构如何做账
  • 房地产土地成本计算公式
  • 民办中小学收费新政策
  • 财务审核火车票真伪辨别
  • 金税盘密码忘记了打客服有用吗?
  • 购买设备属于经营性现金流出吗
  • 租用办公室协议书
  • 事业单位接受捐赠的货币资金在财务会计中确认捐赠收入
  • 通用文件系统
  • 预收账款什么时候确认增值税
  • 小规模企业亏损情况说明范文
  • thinkphp登录验证
  • vue错误提示
  • 工程未审计资金能支付到多少
  • 会计核算的职能主要是从什么方面综合反映
  • 要点初见:Stable Diffusion NovelAI模型优质文字Tag汇总与实践【魔咒汇总】
  • vue的样式穿透
  • vue项目部署后白屏
  • 魔改6.67
  • 委托代销受托方会计分录
  • java中map.entry
  • 在excel中怎么制作
  • mysql复制数据到另一张表
  • 购进免税农产品发生非正常损失
  • 应该是先付款还是先开发票
  • 通讯发票可以税后抵扣吗
  • 以前的房产证现在能过户吗
  • 管理费用如何分摊到项目
  • 开发成本贷方负数表示什么
  • 期初数据根据总账还是明细账
  • 预付款怎样做会计分录
  • mac下安装python
  • mysql日志有哪些
  • ubuntu服务
  • 如何搭建一台内网服务器
  • xp系统怎么添加ip地址
  • ubuntu里怎么装软件
  • ubuntu怎样
  • 设置使用资源管理器查看文件时,显示已知文件的扩展名
  • linux操作系统的基本操作
  • 如何关闭mcafee软件
  • ftp自动上传文件到服务器
  • msvcmm32.exe - msvcmm32是什么进程 有什么用
  • linux使用mv命令,结果文件不见了
  • centos安装命令yum
  • Android游戏开发读后感
  • html中href,src区别
  • ug语法错误
  • javascript基础编程
  • jquery.browser
  • js中倒计时器怎么实现
  • 深入python3
  • 北京环球影城服装
  • 单位税额怎么算出来的
  • 河南省单位怎么打印社保花名册
  • 怎么登录吉林省公务员网络培训学院
  • 云南税收主要经济来源
  • 最近领导故意挑事
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设