unipush2统一推送uni

uni-push是DCloud推出的、全端的、云端一体的统一推送服务。

push,指服务器主动向客户端发送消息的技术。无需客户端持续轮询服务器,即可获得即时数据。

轮询有很多弊端:1)客户端应用必须实时在线;2)手机端耗电严重;3)服务器负载高且浪费资源

提醒:web浏览器的webnotification其实是一个本地通知栏功能,浏览器厂商没有提供push通道。

当客户端在线时,push通过socket协议实现。当客户端离线时,服务器找不到客户端,开发者无法自己实现推送,只能依托手机操作系统、小程序底层提供的离线消息推送,调用指定的手机厂商或小程序厂商的服务器接口来发送消息。

所以一个push系统需要3部分协作:开发者的业务服务器+专业push服务器+开发者的客户端应用。

其主要流程是:

如果开发者把上述每个平台的客户端和服务器的SDK都对接一遍,还自己处理没有push服务的中小品牌手机,那过于困难了。所以业内有专业的推送服务厂商把各种手机厂商的通道封装成一套统一的API,如个推(属于上市公司每日互动);同时这些三方专业推送厂商还提供了高速socket通道。当应用在线时,也可以直接通过socket下发消息。否则开发者需要写很多判断代码、搭建socket服务器、处理在线时和离线时各种差异。

DCloud与个推(A股上市公司每日互动)深度合作,为uni-app的开发者提供了比传统方案便利甚多的统一推送方案uni-push2,利用云端一体的优势,同时提供基于uniCloud的push服务器和基于uni-app的push客户端,两者高效协同,极大的简化了push的使用。

注:uni-push的服务器稳定性是由阿里云serverless、腾讯云serverless、个推来保障的,都是日活过亿的上市公司,无需顾虑稳定性。

如下图所示:首先开发者的uniCloud应用服务器向uni-push服务器发送push消息,然后

总结下uni-push提供的功能:

注意:app申请创建通知栏消息、web申请弹出通知,均会由操作系统或浏览器自动弹窗询问用户是否同意。小程序下需要手机用户主动发起订阅行为,才能送达消息。

uni-push即降低了开发成本,又提高了push送达率,还支持全平台,并且免费,是当前推送的最佳解决方案。

uni-push本身并不收费,实际使用中需要依赖uniCloud云服务,而uniCloud价格很实惠:

可见价格之低,几乎可以忽略不计。

即:最高(1*0.0133+3*0.015)/10000=0.00000583元/每次(注:给你的应用的所有注册用户群发消息算一次)

有了uni-push,开发者不应该再使用其他push方案了。但我们发现很多开发者有误解,导致还在错误使用其他推送。

按照国家法律要求,所有提供云服务的公司在用户使用云服务时都需要验证手机号。

关联服务空间说明:uni-push2.0需要开发者开通uniCloud。不管您的业务服务器是否使用uniCloud,但专业推送服务器在uniCloud上。

开通完成后,后续仍可以在这里修改以上信息。

开通App的完整流程较多,但开通web和小程序的流程比较简单,即开即用。可以快速将uni-app项目运行到浏览器或小程序体验。

仅APP端支持,当应用被用户关闭,或者运行到后台时,手机厂商为了省电或释放内存,会终止App后台联网。

消息将通过不会离线的手机厂商通道,下发到手机系统推送服务模块;

此时客户端会自动创建通知栏消息,展示在系统消息中心(如图所示)但客户端监听不到消息内容;当用户点击通知栏消息后,会将APP唤醒此时APP才能监听到消息内容。

当应用在线时,不会创建“通知栏消息”,此时客户端会立即监听到消息内容。

如果你希望当应用在线时,也通过“通知栏消息”来提醒用户;可以通过以下两种方式实现:

个推的客户端类型是仅根据使用的sdk类型来判断的,分为两类:

uni.getPushClientId({success(res){console.log(res);},fail(err){console.log(err)}})注意:此时由于运行的标准基座中,不包含uni-push模块,如果运行会报错,不用着急继续往下操作

在manifest.json中配置完之后,需要重新编译项目,即:点击如图重新运行按钮

uni-push在web和小程序端就是个websocket;各家小程序平台,均要求在小程序管理后台配置小程序应用的联网服务器域名,否则无法联网。

根据下表,在小程序管理后台设置socket合法域名。下表的域名均为个推自有域名,并非DCloud所属域名。

示例代码:

APP端真机运行注意:

而uni-push2.0,开发者无需关心证书、签名、服务器端文档,使用简单。云函数通过uni-push服务端sdk,即uni-cloud-push的API即可直接执行uni-push所有操作。

uni-push的服务端sdk的体积不小,没有内置在云函数中。在需要操作uni-push的云函数里,开发者需手动配置uni-cloud-push扩展库。(uniCloud扩展库,是uniCloud自带API中不常用且包体积较大的部分,被独立为扩展库,可以由开发者自行选择是否使用该扩展库)

下面是一个开启了uni-cloud-push扩展库的云函数的package.json示例,注意不可有注释,以下文件内容中的注释仅为说明,如果拷贝此文件,切记去除注释

{"name":"test","version":"1.0.0","description":"","main":"index.js","extensions":{"uni-cloud-push":{}//配置为此云函数开启uni-cloud-push扩展库,值为空对象留作后续追加参数,暂无内容},"author":""}注意:扩展库依赖3张opendb表:opendb-tempdata,opendb-device,uni-id-device。公测版uniCloud,执行扩展库会自动创建。如果你使用的是uniCloud正式版需要自己创建这3张表。

云函数中调用uni-cloud-push扩展库的sendMessage方法,向客户端推送消息

//简单的使用示例'usestrict';constuniPush=uniCloud.getPushManager({appId:"__UNI__XXXXXX"})//注意这里需要传入你的应用appId,用于指定接收消息的客户端exports.main=async(event,context)=>{returnawaituniPush.sendMessage({"push_clientid":"xxx",//填写上一步在uni-app客户端获取到的客户端推送标识push_clientid"title":"通知栏显示的标题","content":"通知栏显示的内容","payload":{"text":"体验一下uni-push2.0"}})};在云函数文件目录右键(或按快捷键ctrl+r)->运行-本地云函数,此时你的客户端将收到推送消息(应用关闭时为通知栏消息,在线时代码监听到推送消息)

如果按步骤操作完毕,此时你运行起来的uni-app客户端就会打印出“收到推送消息:xxxx”。如遇异常,可以重新运行一遍。

上一章,演示了基于“客户端推送标识”的消息推送,仅为方便理解和体验;在业务开发中,通常是指定消息的接收人,而不是某个设备。

注意

以上内置逻辑,在uni-id-pages下,会自动判断是否启用push模块自动执行;但uni-id-pages-x下,需手动在:/uni_modules/uni-id-pages-x/init.uts导入autoReportPushClientId模块。

THE END
1.离线编程操作,优势应用与未来离线编程技术,离线编程操作,优势在数字化和智能化的时代,编程技术已经渗透到各个领域,无论是软件开发、机器人控制还是自动化生产等,都离不开编程的影子,离线编程操作作为一种新兴的编程方式,逐渐在各个领域中崭露头角,本文将详细介绍离线编程操作的概念、优势、应用场景以及未来发展趋势。 http://www.skypure.com.cn/post/35344.html
2.离线视频下载秘籍,无网也能轻松保存视频!运营赞助摘要:本攻略教你如何离线下载视频,无需网络连接也能轻松实现。通过简单步骤,你可以将喜欢的视频保存到本地,随时随地观看。本方法简单易行,适合各类用户,让你在无网络的情况下也能享受视频娱乐。 在无网络环境下,我们依然可以通过多种途径下载视频以满足娱乐或学习的需求,一种常见的方法是预先下载视频文件,保存在本地https://www.zovps.com/article/index.php/post/437002.html
3.上传模式与实时模式详解,操作与应用指南(适用于初学者与进阶用户亲爱的读者们,本文将为您详细解释什么是上传模式和实时模式,并引导初学者和进阶用户如何操作这两种模式,无论您是刚开始接触这一领域的萌新,还是已经有一定基础的用户,本文都将助您一臂之力,请跟随我们的步骤,轻松掌握这一技能。 了解上传模式和实时模式 https://www.shuguo168.com/post/11417.html
4.qq在线发送和离线发送哪个快因为离线发送是发送给QQ服务器的,速度只与当前网络有关,而在线发送需要考虑对方网络,所以在线发送速度没有离线快。QQ是腾讯QQ的简称,是腾讯公司开发的一款基于Internet的即时通信(IM)软件。目前QQ已经覆盖MicrosoftWindows、OSX、Android、iOS、WindowsPhone等多种主流平台。其标志是一只戴着红色围巾的小https://zhidao.baidu.com/question/2086519407061106668.html
5.离线爬塔快还是在线爬全职龙城综合讨论手机用户100362845 https://www.taptap.cn/moment/509259797300776424
6.学英语在线学习与传统学习,哪个更有效?其实在线学习和传统学习各有优势,很难简单判定哪个更有效,主要还是要看个人的实际情况吧,像自制力弱一点https://www.zhihu.com/question/4185493480/answer/58261673055
7.TSMaster快速入门篇(2)如果想按照采集时间戳回放报文,请选择在线回放。离线回放主要用于查看报文,要求就是回放速度越快越好。如果想按照采集的时序回放报文,则直接采用在线回放的方式,具体的设置见在线回放章节。 3. 总线回放按钮为什么是灰色(不使能状态) 在总线连接工作状态,不能进行报文记录的回放。需要点击 Stop 按钮,停止工作状态,BusRephttps://juejin.cn/post/7168764063806455844
8.今日头条极速版邀请码是多少(含2024邀请码大全)离线缓存寓目视频.支持在线寓目 离线缓存寓目视频。 .今日头条支持议决频道保举 寓目历史 参加看单 搜刮成果快速找到想看的视频。 .支持D,N1投电视寓目。 .在线寓目演唱会 直播,互动送道具。 .开通腾讯视频,IP,畅享院线大片。 .支持微信 登录腾讯视频 .可以在影视圈 饭团分享视频图片 涂鸦 小视频。 .打造我的影院,个性化保举https://www.jianshu.com/p/3caa0b45ced3
9.常见问题FAQ肯为旎邮件DIY17. 如何在离线名片上添加具有自己特色的图片答: 首先选中左侧栏的主背景色选项(或直接选中编辑区的某区块),然后点击更多功能中的“背景图片”按钮,在新出现的输入框中粘贴(Ctrl+V)背景图片的网络地址,点击“插入”按钮即可。18. 为什么扫码我的在线电子名片的地址二维码时,页面并没有更新呢?有时还提示“页面未http://diy.kenweini.com/problems
10.易科讯AOI公司电话:138231517783D离线AOI3D在线AOI工厂3D在线AOI检测仪(EKT-VL-200) 一键快编 在线AOI检测仪 EKT-VL-900 EKT-VL-920双轨在线AOI光学检测仪 EKT-VL-900B 智能下照式在线AOI自动视觉光学检测仪 EKT-VL-900D上下双面照在线AOI检测仪 一键快编 离线AOI检测仪 EKT-VT-980 EKT-VL-800 在线AOI自动光学检测仪 http://www.ekt-aoi.net/
11.CAD快速看图授权离线使用功能后,计算侧面积还是需要联网【必须联网才能用的功能】图形识别、布局转模型、图纸对比、编辑助手、云盘、侧面积、面积偏移、测量统计http://cadclub.glodon.com/question/detail/15764
12.C4DR19.068离线更新包中文版在线更新小版本比较慢,所以上线了这个19.068的离线更新包,快速更新升级r19小版本!注意:是在安装了C4D R19的基础上,通过安装更新包来进行软件的升级更新 c4dr19支持图像、视频和音频的格式已经完全重写了,速度和内存的效率得到了增强,让你的工作流程更加快速和稳定,新特性也会让你的视野变得更加开阔。C4dr19提供了许多http://www.modown.cn/archives/36429.html
13.免费翻译文档工具哪款速度快?免费翻译文档工具可以离线使用吗?速度比较快的是福昕翻译大师,福昕翻译大师是一款由福昕软件公司推出的智能翻译软件,是一款针对中英互译的在线翻译工具。无论是英语、汉语,还是一些其他主要语言,福昕翻译大师都能快速精准地实现翻译工作。 免费翻译文档工具可以离线使用吗? 福昕翻译大师软件支持离线使用。福昕翻译大师软件是一个基于云端翻译服务的翻译软件,https://www.foxitsoftware.cn/fanyi/jiaocheng/6036.html
14.嵌入式端音频开发(基础篇)之2021作为开发过不少语音在线识别和离线识别不少产品的嵌入式软件工程师来说,有不少同事和粉丝对于嵌入式端语音开发,经常问我:怎么做?怎么选芯片?有哪些厂家有芯片可以选择? 所以决定写下这边科普文章。 在知乎上看到一位很牛的销售龙洋,很早之前就写了国产离线语音芯片的对比,真的是一位很称职的销售。 本文重点只是https://download.csdn.net/blog/column/10641731/121638687
15.录制YouTube视频的7种方法[PCMac手机和在线]通过订阅YouTube Premium,用户可以将YouTube视频下载到手机上以供离线观看。但是,下载功能在计算机上不可用。 不用担心,只要有屏幕录制软件,您就可以在任何设备上录制 YouTube 视频。在本文中,我们将探讨七种行之有效的方法 在PC、Mac、手机和在线上录制 YouTube 视频。之后,您就可以在任何设备上离线观看 YouTubehttps://www.ukeysoft.com/zh-CN/recorder/record-youtube-video-on-pc.html
16.让离线检测更快更准,海康睿影推出智能离线AXI设备凤凰网山东与传统的离线抽检以及在线全检不同,海康睿影离线AXI检测设备离线抽检和自动全检可灵活切换,不仅可以针对少量样品进行抽检,也可以针对小批量、多批次的产品进行自动全检。 例如,某工厂某天将样本量增加到1000片以上,传统离线设备只能靠人工逐一检测,耗时耗力,而通过海康睿影离线AXI设备切换到批量全检,检测速度更快,检测效率https://sd.ifeng.com/c/8ZynkiPNCm5
17.如何快速高质量地下载YouTube视频,轻松获取离线观看资源软件支持在线重装、U盘制作、自定义重装等多种模式。 ---小鱼编辑部推荐产品--- 简介: YouTube是全球最大的视频分享平台,拥有海量的视频资源。然而,由于版权限制、网络问题等原因,我们并不能随时随地观看这些精彩的视频内容。本文将介绍几种快速、高质量地下载YouTube视频的方法,轻松获取离线观看资源,让你随时随地享https://www.xiaoyuxitong.com/cjwt/154025.html
18.chapter111.md·StarTogether/mlopsbook对于在线学习,更新速度是最快的,是增量更新的进阶版,在每次获得一个新样本的时候就实时更新模型,但是这样的方式会导致一个很严重的问题,就是模型的稀疏性很差,打开过多“碎片化”的不重要特征。 增量更新相对来说是一种 tradeoff 的方式,既可以减少样本训练时间长、数据延迟严重带来的问题,又可以减少每个样本更新带https://api.gitee.com/StarTogether/mlops-book/blob/master/chapter-11-1.md
19.UE4培训班虚幻4引擎培训机构全场景学习系统「 面授+在线+离线 」 面授场景 4-8个月全日制教学,岗位定向课程商业案列实训,一线总监执教,企业定向培养。 在线场景 365天线上直播,点播。全天候专家答疑作业点评指导,关卡式学习,大咖公开课。 离线场景 学习进程分析,扩展课程学习,能力成长路径,配套内部教材,硬件系统集成。 了解更多 > 火星时代教https://www.hxsd.com/ztkc/ue4yq19/
20.小米负责人在线“小爱同学”专场,快来聊一聊九月的负责人在线栏目 ,是小米集团质量月活动的一环,为了进一步推进小米的质量,我们邀请到了小米各个部门的负责人。 本期请到的是小爱同学业务负责人@王刚、集团技术委员会质量负责人@朱虹、小爱同学产品负责人@李丹、小爱同学互联互通产品负责人@崔岩、小爱同学客户端产品负责人@马骞、小爱同学语音负责人@王玲玲、小爱https://web.vip.miui.com/page/info/mio/mio/detail?app_version=dev.20051&postId=30744281