怪物大作战修改这游戏推送是干嘛用的,蛋孵好不推送,能量恢复好不推送

公司全称:北京千橡网景科技发展有限公司 &公司电话:010- &公司地址:北京市朝阳区酒仙桥中路18号国投创意信息产业园北楼1层
北京千橡网景科技发展有限公司:
文网文[号··京公网安备号·甲测资字
文化部监督电子邮箱:wlwh@··
违法和不良信息举报电话:027- 举报邮箱:&&&&&&&&&&&&后使用快捷导航没有帐号?
除了游戏之外,本周在 App Store 推荐新应用上登陆的《图卡自然》、《实时地球》等应...
很带感的中文版 iPhone 6/6 Plus 电视广告,大家一起来欣赏。
可能用到手机坏了都没完全发挥它的功能。
黑色星期五很快就要来了,西方人士又要买买买了。
虽然Cydia已经支持iOS8.0,不过依旧有很多插件没有支持iOS 8,所以小编在这里汇总了一...
在你不看好苹果股价的时候,它很有可能会飞一般地增长。你看好苹果股价的时候,它也有...
苹果不是正在被起诉,就是在被起诉的路上,似乎大家都已经习惯了。
《乔布斯传》导演性格像乔布斯,由他执导再合适不过?
曾推出过人气记事应用《Awesome Note》——中文叫做《乐顺备忘录》的开发商 BRID 时隔...
《摇滚僵尸》( Rock Zombie )是游戏开发商 Miguel Garcia Corchero 所推出的一款 3D...
《超级无底》(ULTRAHYPER)是一款考验手速的快速躲避类游戏,看到有戏的标题小编就已...
来自全球知名儿童应用开发商 Toca Boca AB 的系列最新作《Toca Nature(图卡自然)》...
2010年一款名为《神之手(Godfinger)》模拟经营游戏上架苹果商店中,没有想到游戏发...
《Living Earth(实时地球)》是一款与众不同天气工具,它以 3D 地球仪的形式显示世界...
时隔多年,经典的《炸弹人(ボンバーマン)》再度出山,KONAMI 率领之下的《炸弹人》...
随着移动科技的发展,各种用智能手机操控的玩具也层出不穷,之前大家见过很多用智能设...
大部分消费者都会选择为iPhone佩戴手机套,来增强防护性。那么,既能保持iPhone 6美感...
还记得小时候在小区花园或是广场上观看露天电影的情景吗,前方幕布流动的光影早已幻化...
告别单调无聊,手机壳也玩出了新高度。
随着科技的发展,各种移动设备层出不穷,各式各样的设备可以方便的满足人们的各种生活...
在苹果 10 月发布会上将 iPad mini 3配色增加金色之后,Delux 立即更新小 i mini 产品...
还在苦恼新 iPhone 6 Plus 的小容量空间存不下多个慢动作视频?让 iBridge 帮你救急吧...
你想要为 iPhone 6 / Plus 选择什么样的保护壳?
qq为什么登录失败也能接收到推送信息
注册时间 最后登录
在线时间1 小时 UID
主题帖子人气
小苹果, 积分 47, 距离下一级还需 3 积分
qq现在一直不能登录显示无网络连接 但是又能接收到推送信息 奇怪了
(69.57 KB, 下载次数: 1)
22:01 上传
注册时间 最后登录
在线时间3564 小时 UID
主题帖子人气
我也一样啊
注册时间 最后登录
在线时间254 小时 UID
主题帖子人气
我的也一样
注册时间 最后登录
在线时间1 小时 UID
主题帖子人气
本帖最后由 a 于
22:05 编辑
腾讯有问题了?
(36.29 KB, 下载次数: 1)
22:03 上传
注册时间 最后登录
在线时间93 小时 UID
主题帖子人气
这是苹果推送的
注册时间 最后登录
在线时间205 小时 UID
主题帖子人气
一样的问题
注册时间 最后登录
在线时间65 小时 UID
主题帖子人气
注册时间 最后登录
在线时间28 小时 UID
主题帖子人气
腾讯有问题了?
所有的ios平台软件,信息推送都是通过苹果的推送服务器平台的,并不是每个软件自己的服务器直接推送,它们没有这个权限。你收到的信息推送,实际上是苹果推送的,而在你登录相关软件的时候,会根据此推送,向此软件服务器申请下载对应的消息,此时,才是真正的和该软件服务器直接通信。也就是说,在平时,iphone是不可以直接和QQ服务器直接通信的,必须通过苹果的服务器。你看到的通知,只不过是腾讯通过苹果告诉你的,在你登录QQ以后,才可以直接向腾讯服务器下载该消息。也就是说,你登录不登陆QQ,你都可以收到通知,但是却不可以聊天。
注册时间 最后登录
在线时间228 小时 UID
主题帖子人气
qq被和谐了
威锋旗下产品
Hi~我是威威!
沪ICP备号-1 丨 深公安网监备案号 5
增值电信业务经营许可证:
Powered by Discuz!“聚能推”许晓聪:做专注于企业和手机厂商的信息推送
在手机应用“井喷”的时代,很多周边的服务也随之发展起来,其中戏称“快递员”的信息推送是当下的热门话题之一。在这个领域上,几家比较有名气的公司都在抢开发者市场,有的甚至得到了微博客户端的合作。这片领域上还有别的商机吗?请看雷锋网对“聚能推”创始人许晓聪的采访。
对于许晓聪来说,“聚能推”并非他的首次创业。在美国读研的时候,他联手福建朋友做了一个为纽约华人服务的资讯网站,跟黄页有点类似。虽然这个网站并不成功,但是每个月赚几百美元是没有问题的。到了2007年的时候,他做了基于塞班的LBS应用,让大家从网页上看到自己的实时位置和旅游轨迹。
2009年初回国之后,经熟人介绍,他去了一家专业背景极强的信息安全公司,研究国外大型软件漏洞,密码机、加密算法、并行运算和通信协议。工作期间他发现了不少跨国集团的商业软件漏洞,并获得了一些部门的认可。不过他天生是一个爱折腾的人,并不喜欢那种体制生活。做完最后一期研究后,他恢复了自由身,并和以前的团队再次合作起来。
做信息推送是一场偶然
再次加入创业大军之后,许晓聪开始并不是很清楚自己要做什么。看到大家都在往移动互联网上发展,考虑到自己也做过塞班应用,于是就买了一堆电脑开始做iOS应用。起初以为会很快上手,后来才发现整个过程非常痛苦。
大概学了三个月的iOS编程后,他开始学习研究苹果信息推送。刚开始的时候,他用的是的中间件。后来觉得实在是太麻烦,干脆自己领导团队写了一个苹果信息推送的中间件。随后他们发挥自己写网络协议的技术特长,并将苹果的推送机制摸透,把这个中间件做得比较完美。
在找投资的过程中遭受质疑
由于觉得信息推送有市场,加上又做了一个不错的成品,许晓聪开始带着团队到处找投资。因为自己并不是一个合格的产品经理,所以在的过程中更多的是在讲技术上的东西,这很难引起投资者的注意,甚至遭受质疑。
后来遇到了现有的投资方,他差点激动得哭了起来。在看他们演示的过程中,投资方说了一个这样的话:“中间件本来就是没有什么界面的。”他感觉自己团队终于遇到了伯乐。
拿到投资后,团队开始转向Android信息推送的研发,也就是现在的“聚能推”。在设计之前,团队做了三个月的分析:主要针对苹果的APNS和国内数家做信息推送的公司。
主要走企业和手机厂商路线
刚开始做“聚能推”的时候,国内做类似服务的公司屈指可数,其中Hudee(蝴蝶)和“个推”是比较出名的。到了今年10月份的时候,一下子冒出了数十家,也把许晓聪吓了一跳。后来他发现这些公司都打着“最专业”、“第一”之类的旗号,于是心里就踏实了很多。
在他的眼里,信息推送对于开发者来说并不是刚需:除了IM,社区应用和部分游戏,其他的还有什么理由必须集成一个信息推送呢?推送应该是手机系统中协议层的东西,而不仅仅是应用层的一个附属,其出现的目的还是一个手机生产商为自身手机的使用者与开发者提供后续服务的工具。
由于同行都在拉拢开发者,许晓聪认为团队并不适合做这一块,他更想跟企业、手机厂商合作,然后从中收取相应的服务费。现在团队正在跟一家手机商进行技术方案的考察与对接,如果通过的话,他们的信息推送中间件就会集成到系统里面。另外他们也会为企业搭建专用的信息推送平台,从而提供一个更保密的推送方案。
最后的话:在技术指标方面,许晓聪坦陈一台服务器(32G 8核)只能做到80万左右的连接,主要是受到了宽带和操作系统的限制。单台服务器750万的连接他也做到过,他把效果形容为“一人一颗米”,意义并不大。而在没有信息推送的情况下,仅维持长链接的话,他们的产品仅需25KB/年的流量。
从数据上来看,“聚能推”的技术指标比“个推”要差点,但是跟许晓聪交流的过程中,我感觉到了一种真诚——不会为自己的产品而报“大数”,并不断追求技术方面上的突破。在信息推送领域,走开发者路线也许干不过当下名气比较大的那几家,走企业和手机厂商路线也许能闯出自己的市场。许晓聪和他的团队能不能在这个领域异军突起,雷锋网会继续关注。
相关文章:
【 如无特殊说明,所有文章版权归雷锋网所有,转载请注明来源 】
同步到新浪微博
本栏目由提供
直接使用社交账号登录
请输入登录邮箱
还不是会员如何看待小米推出 iOS 式的统一推送服务,竞争力如何?
按时间排序
为小米鼓掌
类似服务已经有了很多。国外就有不少。除了可以套用推送SDK的,还有可以装个APP,然后你可以自己给自己推送消息的……推送服务理论上应该是越少越好。希望各家安卓厂商能够达成一致,在国内预装共同的推送服务(简直不可能好吧我是统一推送的WP用户,(逃
苹果在硬件和系统的市场占有率绝对优势的情况下,APNS才得以更好的发挥对系统的辅助优化作用。对于android太过开源和碎片化的情况下,小米做这些工作是需要很大的勇气和工作。不过大数据时代,占领数据通道,所有厂家都虎视眈眈。尽管大多数开发者不会考虑小米推送,但是他还是必须要做,对MIUI,对小米用户都是有很大的作用。
首先我相信小米公司肯定能做到稳定推送而且已经有App开始支持了,相比某公司的Smartbar都能发展到这样,小米推送也差不成什么样,雷总的人脉,家族妥妥的,秒杀某公司完全代收通知,不点击通知就不唤醒APP了,APP完全不需介入,这才是IOS式统一推送!!!!!!你们那些盗版去死吧李楠: Google 事后也提供类似苹果的推送方式了而GCM是将接受到的传递给它,怎么传递呢,就是唤醒App啊,相当于中转小米推送呢,有N种工作模式在一定条件下,完美提供IOS式通知!!!是完美在一定情况下,又提供GCM的通知能力又在多数情况下提供,比如极光啊,信鸽那种开无数后台服务的推送,简直呵呵
又多了一条鄙视小米的理由。话说好像侵犯专利了吧?
非常实用,弥补了安卓的一项短板。
没用的,开发者们不会使用的。在小米推送之前,国内又不是没有统一的推送服务。用的人都寥寥可数。就算是在能够无缝连接到GCM的国外,也不是所有应用都使用了谷歌的服务。从商业上来讲,为我国用户提供大多数互联网服务的BAT三大厂商,就不可能使用小米的推送服务。除非雷军强制他们在MIUI上的只能使用他的推送。
前两天,在公司内网看到腾讯信鸽的介绍(信鸽主页在),跟发帖介绍信鸽的同事聊了几句,就提到“如果小米也做类似的push,那么信鸽有什么优势”,当时还不知道真的有mipush这样一个产品,所以当时也是比较空泛的聊了一下,没想到一语成谶了。回到题主的问题上来,mipush竞争力如何,这样看跟谁对比?对比GCM,mipush的优势就是在于GCM的不稳定,而mipush可以做到相对稳定。而且也可能得到zf的支持,例如出现紧急事件时,在移动领域,官方过去主要通过短信途径去辟谣去宣传,以后就可以利用mipush这条通道去传达消息。这条基于互联网的消息通道,在一些场景,可靠性大于短信。对比GCM,mipush的劣势可能在于走出国门可能比较难,也就是国际化很难。所以mipush的主要面向对象,应该仅限于大陆的开发者。对比信鸽,mipush的优势在于MIUI的普及和MIUI桌面的普及。这里的MIUI不止是软件部分,而是包括了整个小米目前良好的软硬件生态圈。这点信鸽是没法比拟的。用户对小米和MIUI的接受和认可,是mipush被开发者接受并认可的前提。对比信鸽,mipush的劣势也很明显,因为小米和MIUI毕竟没有在Android市场上占到绝对优势比例。而微信、手Q,却是装机必备,这会导致信鸽SDK会随着手Q、微信以及腾讯系其他App,早早进入用户的手机。当信鸽的推送因为触达用户、曝光频率到达一定数量级后,用户接受了信鸽的推送方式后,广大开发者可能不会抱着“一定要自己开发push通道”的想法,转而去接受信鸽并使用信鸽去push消息。尤其信鸽还支持iOS,这点也是mipush目前无法实现的。挟用户亦令开发者,这点上,mipush的'挟持"能力不如信鸽。综上,mipush与GCM相比,优势明显,但国际化难;信鸽相比,硬件优势明显,但综合竞争能力不还需继续改进。
我高度怀疑QQ 微信 百度云这类会使用小米的推送?如果这些常用的大佬们不使用,其实省电目的是很难成立的不过还是觉得小米做了一件好事,至少你还没成大佬之前,可以借船出海,依附小米成长
我为什么还用ios的很大原因就是因为ios的推送机制和抚如酥油般的触控感。
又仔细看了下小米的文档,感觉刚才的揣测还是不太正确的,重新回答下。首先说一下系统有统一的推送绝对是好事情(像苹果一样),开发系统的公司有能力维持一个更好的长链接,第三方应用的所有消息都走这一个长连接无疑是效率最大化的,而且不需要占用额外的后台资源。android 系统是有自己的推送服务的(Google Cloud Messaging for Android),但由于在我大天朝google服务不稳定,各种rom很多又不集成google的相应服务,所以这个方案也已被判定成坑了,试想一下只有nexus才能收到的推送,有那个工程师愿意花精力去开发呢?小米的服务支持android全平台,在MIUI系统上会有所优化,凭这一点相对于其他android第三方推送平台还是有一些竞争力的,加上小米的口碑也相对更可靠些,但这件事要做好还是有点任重道远。1. iOS上app不需要额外的推送SDK,那在MIUI上也应该不需要吧,这样客户端会少做一些事(和小米服务器打交道的事)2. 市场占有率,需要多个第三方app都使用同一个长链接,这个东西对用户的价值才会体现出来,小米能不能说服开发者达成这样的共识,这是个问题。最终评价,android 系统统一推送,这是件好事,但也是件难事,其中没什么可取巧的,希望小米能做好。
市面上推送SDK又不是只有小米一家,何来统一之说?无非是给了第三份开发者一个新选择而已。
我凭什么要相信你小米的推送?谷歌的GCM摆在哪里我不用我要用小米的?隐私问题呢?系统安全问题呢?稳定性如何?对于其他厂商来说,小米就是一个竞争对手,人家还不见得希望小米接管用户的推送服务。假设开发者愿意使用小米推送,对于没使用小米推送的用户,还得靠后台程序来获取信息,那么开发者就要让程序拥有两条获取信息的通道:1,经过小米推送;2,直接获取。你让开发者怎么写程序?让用户手动设置?APP自动识别这部有没有小米推送服务?拜托,那又要写多少行代码?对用户,对开发者都是一件麻烦事。
Android早就有自己的GCM服务了,国际上大多数的通讯类App消息推送走的都是这个通道,你小米自己搞一个类GCM服务完全是多此一举。不过没准在国内还真用得上,君不见国内的手机厂商把Android的原生系统糟蹋成什么样子了么,搞得广大App开发者都不敢使用Google自己亲生的服务了……
Google不是已经有这个功能了么.......?——————————————up——————————————————————————感谢评论区的各位指出,其实这些整合了谷歌的消息推送的应用我都没见过他们弹出通知,也不知道有没有效(我手机装了谷歌框架)......Orz...其实我想表达的是人家Android不是没有这功能,只是一来被墙了二来也没哪个国产软件愿意用,这个功能不是小米的发明,也没啥颠覆性,只是捡漏而已.....-,=至于看待,我宁愿多耗点电也不要小米/腾讯/数字/百度/金山/****等国产软件来管理我的推送
不只是小米做这推送服务,腾讯也在上个月推出了Android 消息推送服务,叫做“腾讯信鸽”,, 百度也有这样的推送服务,叫“百度云推送”,。除了这几家大公司,国内的“极光推送”, 也做得不错。我盼望着越来越多的开发者使用这些推送服务,以造福广大android 用户。关于MIUI V5 的对齐心跳技术,确实是一项很有用的技术。华为也有类似的技术,华为"智电"省电技术,其实就是统一减慢心跳。华为的"智电"省电技术里,可以单独设置那些对消息实时性要求比较高的App程序,把它们排除在外"智电“外,这样这些App依然可以以自己默认心率中跳,以便实时接收信息。除此之外,高通公司针对自家芯片组推出一个App,叫 ”电池大师BatteryGuru, 。实现方法也是让Apps 保持同步心跳,也减少耗电。这些推送技术,对齐心跳,减慢心跳,到底对提高手机待机时间有多明显呢?我们先假设你手机中装有以下这些软件:新浪微博,QQ, 微信,陌陌,阿里旺旺,来往,Skype,WhatsApp, line连我,Viber,Tango,电子邮件(Exchange 连接),以及其他一些会用到网络,有常驻后台进程保持心跳的Apps。以下分情况谈论:A), 在wifi连接下使用,我们暂且说它能提高待机时间2%(不是精确统计时间,只是为了和以下B、C、D情况作对比)B), 在GPRS/EDGE/3G 下使用,能提高待机时间6% (不是精确统计时间,只是为直观地和另外几种情况作对比)C), 在HSDPA/HSPA+ 下使用,能提高待机时间18% (不是精确统计时间,只是为直观地和另外几种情况作对比)以上。D), LTE 下暂未作测试。以上几种情况中的百分之几都是粗略估计,目的是想告诉大家,在3.5G,也就是HSDPA/HSPA+ 下的数据连接,不规律的心跳会消耗了非常多的电,并使手机发热发烫。这电是基带芯片和射频芯片消耗掉的,特别是在数据连接唤醒的时候,射频的瞬时功率非常大。-------------
1)小米推送的背景和历史我们使用IOS刷微博的时候,接收到了一条微信,这个时候,系统会有通知,告诉你收到一条微信,但是此时,微信并没有在后台启动,当你决定打开微信时,这时候微信才会在你的后台启动,但是当我们使用android刷微博的时候,这时候我们接收到了一条微信,这个时候,微信会自己启动,将消息推送给你这就是为什么IOS比Android省电的原因,安卓的应用,都会独立的启动,来推送自己的消息,但是IOS的推送是通过Push来统一实现的,为了解决这一问题,MIUI V5就创立了对齐唤醒机制,这就是小米推送的历史MIUI 通过对唤醒机制的对齐,使得耗电量对于原声安卓有了质的提升。
2)小米推送概述小米推送(MiPush)是小米公司向开发者提供的消息推送服务,通过在云端与客户端之间建立一条稳定、可靠的长连接,为开发者提供向客户端应用实时推送消息的服务。小米推送服务能有效地帮助开发者拉动用户活跃度,改善产品体验。 应用案例及场景如何保证消息的实时性(以新闻类应用为例)使用场景:在发生重大新闻事件时,新闻类应用希望将新闻信息以最快的速度传递给用户,同时也希望这条新闻是有“保鲜期”的,用户明天再联网不应该看到昨天的新闻推送。因此,推送服务在这样的场景下需要保证消息的实时性,永远给用户最快最新的信息。解决方法:小米推送采用长连接的方式,确保消息能实时推送到客户端,只要用户设备网络正常,消息就能快速送达。同时,开发者对于每条消息都可以单独设置有效期,消息有效期内未联网的用户上线后不会收到过期的消息,保证了用户收到的新闻推送永远是最新的信息。今日头条此类新闻类应用正是通过这样方式使用小米推送,保证了新闻推送的实时性。如何精准推送,避免打扰(以O2O类应用为例) 使用场景:O2O类应用为用户提供的信息很多情况下是本地化的信息,如果将A城的餐馆打折信息推给B城用户显然是打扰B城用户的无效信息。因此需要推送服务提供精准推送的能力,让消息可以精准地触达目标用户。解决方法:小米推送提供了标签的功能帮助开发者实现精准推送的目标。以上面的场景为例,开发者可以将A城的用户统一打上“A城”的标签,在需要推送A城的餐馆打折信息时,使用基于标签推送的功能,可以指定向拥有“A城”标签的用户进行推送。这样该城的用户就能及时收到这条消息,并且不会打扰其他区域的用户。大众点评等拥有本地服务的O2O类应用都在以类似的方式使用小米推送。3)小米推送服务作用1.促进用户活跃,增强用户黏性通过云和端之间建立的长连接,开发者可以实时地将消息推送到用户设备端。只要用户设备网络畅通,就能随时唤醒用户,保持与用户的沟通,大大提升用户活跃度和留存率。2.节约推送成本小米承诺提供永久免费的推送基础服务,开发者不需要投入大量时间、人力和服务器资源来开发和维护到客户端的长连接,免去了应用实现推送功能所增加的成本。3.稳定安全的推送依托强大的服务器集群,以及多年在手机即时通讯领域的技术积累,小米在消息推送服务这一领域有着丰富的经验和雄厚的实力。在保证推送消息的到达率及到达速度的同时,我们还设计了一套基于业界最高标准加密算法的安全措施,让应用消息的传输更加安全可靠。 4)小米推送服务的工作原理如上图所示,通过小米推送服务,应用可以从服务器向它的用户发送推送消息。推送服务负责把这些消息排队和转发给目的手机上的目的应用。如果目的手机在线上,则推送服务会把这些消息直接下发给目的手机,否则会把它们存为离线消息保存一段时间,等到手机上线再下发给它。
典型例子1 对1 的单点推送小米推送服务支持 手机应用服务器向它的某一个用户或者某几个用户发送消息。应用服务器有2 种方式指定该用户或者用户列表:1) 通过让客户端调用客户端sdk 的setAlias()来设定一个客户端与服务器之间约定的别名(alias)。服务器就可以用服务器端sdk 的sendToAlias()方法向该别名对应的客户端发送消息。通常可以把别名设置为是手机应用的用户在系统里的账号名。2) 当客户端调用客户端sdk 的initialize(),等推送初始化成功之后,客户端sdk 的回调接口MiPushClientCallback 会被调用,其中一个返回结果是regID,注册ID。服务器可以调用服务器端sdk 的send()方法向该regID 对应的客户端发送消息。这种方法能给应用服务器更大的灵活性,性能和安全性也更高。但是,要求客户端把注册ID上传给应用服务器,开发复杂度更高。基于订阅 /发布模式的广播推送小米推送服务支持 手机应用服务器向它的某个用户群体发送消息。通过让客户端调用客户端sdk 的 subscribe(topic),某个手机上的用户可以指示服务器他对一个特定的 topic 主题做订阅,即加入以主题为标示的用户群体。以后应用服务器就可以调用服务器端 sdk的broadcast(topic)来向该用户群体发布消息了。5)小米推送服务的工作流程和安全机制上图描述了小米推送服务的工作流程和端到端如何保证数据安全。1) 在使用推送服务之前, 开发人员必须通过 1~3 步在小米开发者网站注册自己的应用。如果注册成功则获得相应的 appid,app key和app
secret.利用这些信息应用服务器就可以给自己的应用推送消息了。2) 第4~6 步描述了推送通道的激活过程。这个过程由小米推送服务的 SDK 实现,对上层应用服务器和应用客户端都是透明的。大致流程是:小米手机会通过 https 安全
地激活本手机到云端的推送服务。成功激活之
后,手机就从推送服务获得了 servicetoken(一个周期性被刷新的密钥)。该 servicetoken 在随后的通信过程中用于
加密和签名。所以整个推送通道上的消息的传输是安全的。3) 第7~10 步,是由手机应用调用客户端 sdk 的 initialize()发起的。目的是让云端的推送服务能够识别在某个手机上的某个应用(通过 regID)。整个通信过程如前所述是
加密的。4) 第11 步,是手机应用客户端通知自己的应用服务器 regID 用于以后发送通知。如果应用采用基于别名的消息发送方式,则可以跳过本步骤。这是因为客户端调用
客户端sdk 的 setAlias()让小米推送服务知道了如何把别名映射到对应的机器。5) 第12~19 步,是手机应用服务器如何单发一条消息,该消息又是如何基于 ACK 可靠传输给用户某个手机上的应用。过程如前 2)所述是安全的。如果应用采用订阅 /发
布模式,流程基本类似。6) 第20 步,用户可以随时到管理后台去查看过去消息发送和到达等情况的统计信息。6)小米推送功能简析与特点6.1.推送的消息类型小米推送支持通知栏提醒和透传消息两种消息类型。6.1.1.通知栏提醒客户端收到这类消息后,将直接在通知栏弹出一条通知。用户点击弹出通知后,客户端SDK会将消息中携带的数据传递给应用,由应用决定下一步的动作。通知栏内的展示如图1 所示,展示的内容包括标题、摘要、应用的大图标、小图标和时间。其中标题、摘要、大图标和小图标可由开发者自定义 3。同时,针对每条消息,开发者也可以单独定义是否响铃、是否振动、是否点亮呼吸灯,并且可以选择响铃的声音 4。
图2 MIUI和原生Android上消息的展示 6.1.2.透传消息为了满足不同应用对消息展示效果个性化的需求,小米推送支持以透传的方式来发送消息。这种方式把消息直接推送给应用客户端,由客户端自定义如何呈现或者选择不呈现。使用透传消息,开发者可自定义更多使用推送的方式和展现形式,更灵活地使用消息推送通道。需要注意的是,在一些Android系统(如MIUI)中,受到系统自启动管理设置的限制,应用不能在后台自启动。在这类系统中,如果在发送消息的时候对应的应用没有被启动,透传类消息将不能顺利送达。因此,对于对送达率要求很高的消息,建议尽量采用通知栏提醒的方式推送消息5。 6.2.推送对象的选取6.2.1.基于标签的推送这种方式允许应用基于不同的用户类型,分别进行个性化的定向消息推送。在应用初始化时或运行过程中,开发者可结合自己的业务特征,给用户打上不同的标签(topic)。在推送消息时,开发者可以结合每条消息的内容和目标用户,选择所对应的标签,完成请求后,小米推送服务会向所有打上这一标签的用户发送该消息,从而满足应用精准推送的需求。6.2.2.基于RegID或别名的推送当开发者需要给一个或多个具体的设备推送消息时,可以使用基于Reg ID(或为设备设定的别名)的推送,将个性化的信息推送给指定的设备。这种方式适用于需要为每个用户订制个性化推送的场景。6.3.别名的含义与功能RegID是一个设备在小米推送服务中的唯一标识。考虑到在实际推送的场景中,对开发者来说更自然的方式是:以应用自有的用户唯一标识为对象来推送,因此我们提供了设置别名(Alias)的功能:应用可以将用户在应用内的账号或其它用户唯一标识设定为用户设备RegID的别名,在推送中可以直接基于别名进行推送。小米推送提供别名的功能不仅方便开发者将推送与自有的账号系统进行关联,同时也避免了因需要保存设备RegID 与自有帐号的对应关系而额外带来的开发和存储成本。6.4.其他个性化设置· 消息有效期设置开发者可以根据自己的业务需求设置每条推送消息的有效期,推送的目标用户在消息有效期内上线就会收到消息。消息的最长有效期是14天。如果应用没有单独设置一条消息的有效期,小米推送的默认有效期也是14天。· 静默期设置小米推送可以为每个客户端设定接收推送的静默期,用户在静默期内将不会收到推送的消息。此时发出的消息会被保留在服务端,当用户具备接收条件且消息尚处于有效期内时,用户将会收到被保留的消息。应用内设置免打扰时段的功能就可以使用静默期设置的功能来实现。· 通知分类设置开发者如果需要应用的多条通知在通知栏内并存,可以使用通知分类来实现这个展示要求。 通知分类是用来控制多条通知在通知栏内的替换关系。同类通知之间新的将替换旧的,不同类通知之间并存而不替换。最多可以有5类通知并存。因此,如果希望多条通知在通知栏内并存,开发者可以在发起推送时将这几条通知设置为不同的分类。 7)统计在小米开发者站内,开发者可以在应用的消息推送服务下查看推送的数据统计,也可以直接使用小米推送提供的数据API,与自身现有的统计系统结合。小米推送提供的统计主要分为推送数据统计和用户数据统计两大类。7.1.推送数据统计推送数据统计里包含实时数据和历史数据两类。统计指标:· 已推送总量:是单发和群发的目标设备数之和· 单发消息数:指按reg id或按别名推送的目标设备数· 群发消息数:指按标签推送的目标设备数· 送达消息数:指已收到消息的设备数· 通知点击数:指通知栏内应用通知的点击数 67.2.用户数据统计用户数据统计也是包含实时数据和历史数据两类,用户数据需应用开发者主动启用才进行统计展示。统计定义· 当前在线用户数:指当前保持着推送长连接的设备数· 最高在线:指当日同时在线最高时的在线设备数· 新增用户:指当日首次建立推送长连接的设备数· 日活跃用户:指当日曾经在线过的设备数8)服务性能为了保证服务质量,我们对小米推送服务的服务器性能做了较为完善的压力测试。在实验室环境下,通过压力测试,我们得出如下几项主要性能数据: 同时在线:目前能支撑6000万长连接同时在线,并可随时根据业务需求水平扩展。 吞吐量:消息的最大吞吐量为每分钟600万条,也可通过增加服务器随时扩展。及时性:99.8%以上的消息可以在300ms内发送完成。消息的平均送达延迟为118.74ms,最大消息延时为531ms。
由于中国安卓用户缺少GCM服务,统一的消息推送在这一块上确实是个空白,小米看到了这一点。不过小米并没有取得国内安卓系统的话语权,也是相当费力不讨好。雷军说的“省电省内存”,这些好处是针对用户来说的,而且还可以做成像iOS那样可以在屏锁界面显示各种消息,对用户体验无疑是提升的。然而对于开发者本身并没有什么明显的收益,有时甚至是额外的开销。要开发者使用这样的第三方推送服务,首先一个易使用且稳定的接口是必要的保证。这还不够,因为目前虽然MIUI在国内活跃用户接近4000万,但仍然不能算作国内的主流,这样即使一个APP使用了小米推送服务,为了保证在每一个Android手机上能够正常推送消息,依旧会构建一个属于自己的推送服务。那么很容易演变成“反正我们都要写一个推送服务,小米推送还是算了吧”我不认为跟BAT这样的大公司“取得合作关系来推广小米推送”是个困难的事,因为小米本身就擅长与各种互联网公司合作,且有各种先例,相比之下,如何让他们相信“我们的数据都经过你的服务器而且你不会拿去做对我们不利的事”,或者让他们打消“我们才不想被你知道我们的数据”这样的想法才是更困难的事情,而貌似这个问题是无解的。这样一来,“小米推送”要争取的对象很可能就变成了广大中小企业或自由开发者,所以小米要开发者使用这个推送服务的话,要使这个接口的使用尽量接近“零成本”,且无需维护,才有可能使开发者认为不过是举手之劳,就顺便加上吧。甚至初期最好能够“有所补贴”讨好开发者来形成最初的规模和口碑。另外,作为一个平台型的服务,MIUI的及其衍生的客户端(小米系统?)的铺开量也是非常重要的基础,这些小米一直在做,不过目前的数量恐怕还不能让【小米推送客户端】在国内Android机型上的存在成为常态。不过一旦有了规模、形成马太效应后,就算有后来者,也根本不足为惧了。一句话,小米任重而道远,在短期内,我们还无法在Android机型上享受到iOS般的统一推送体验。不过,就算没有开发者支持“小米推送”服务,至少不会让MIUI的体验更加糟糕,至多是一切照旧而已。至于省电,这是肯定的,这跟多核心CPU没什么关系,核心再多,只要有后台有一堆需要保持心跳的服务,CPU就会不断被唤醒,根本睡不下来。iPhone的电池容量才多大?却可以实现这样的待机时间,这跟他不允许像安卓这样的后台服务是很有关系的。==========Update========由于我的孤陋寡闻,不知道腾讯百度等公司已经在小米之前推出过推送服务了,这一点我真是OUT了,所以我在一开始说在这一块上国内是空白,是不正确的。不过由于他们也才刚开始做,说推送的服务在国内是空白也不是完全不对。以腾讯的信鸽为例,说下我的理解和看法,有不对的请各位指正。我去腾信信鸽的官网大致了解了一下,且看了
发的小米推送原理,发现我之前理解的他们所说的推送似乎有些出入。我之前的理解是在手机上需要一个接收消息的客户端程序,由它来统一接收APP的推送消息。但实际上这些推送服务是无需在手机上有客户端的存在的。也就是说可以支持到所有的Android手机甚至是iPhone。那么我之前认为MiPush是要在MIUI及其衍生客户端的基础上运作就是不正确的了。腾讯信鸽给开发者提供了一个可靠的使用推送服务的渠道,使他们不用再花力气去建立自己的服务器。由于在手机上并没有安装一个用来接收推送的客户端,是使用他们的SDK并集成在APP里且不用的APP有他们各自的信鸽SDK,那么集成了信鸽SKD的APP还是要在后台保持唤醒状态,不同的APP唤醒的时间仍然无序的。而小米的MiPush除了同样给开发者提供一个推送服务的渠道之外,也无需一个接收消息的客户端,这点和腾讯类似,但是更进一步的,MiPush可以在MIUI及其衍生客户端上实现【统一】各个APP的消息推送心跳时间。(我这么理解他们的推送服务不知道正确否?)基于这样的理解:1.由于腾讯百度已经推出这样的业务,我想他们支持小米的MiPush基本没有什么可能性了。2.以后APP的推送服务,要么是开发者一方自己建立的,要么是使用第三方的推送服务,而不会有两者同时使用的情况。所以我之前所说的“顺便加上”的情况也是不可能出现的。3.需要使用推送但是又不想建立服务器的APP,可以很方便的使用这样的推送服务,这样开发者面临的问题就是,到底相信哪一家?是腾讯百度这样的国内老IT巨头,还是小米这样的互联网新兵?在MIUI及其衍生客户端上的推送给用户的体验可能更好,但是MIUI的数量级是否能够吸引开发者倒向小米?小米面临的挑战依然艰巨。
本文作者系小米推送服务研发工程师 :什么是推送很多移动应用需要将消息通过某种方式通知到用户的手机设备(如新闻类应用的重大新闻、通讯类应用的即时消息、天气类应用的重大灾害预警等),而不管此时用户是否正在使用此款应用。推送服务正是为了满足这种需求而生。在几大主流智能设备操作系统中,iOS提供了统一的消息推送服务,所有的消息都必须经由苹果服务器发起,推送给指定的设备。而谷歌也为其安卓系统开发了推送服务GCM(Google Cloud Messaging),但由于其服务在国内不是很稳定,因此开发者普遍都开发了自己的安卓平台的推送服务或使用了第三方开发的推送服务,来满足应用的推送需求。要实现上述实时推送的需求,一般需要在移动设备和服务器之间建立一条TCP长连接,并通过发送心跳包来维持这条长连接。一旦有推送需求,可通过这条长连接,向设备推送消息内容。而设备在接收到推送消息后,通过弹窗、通知栏等方式,向用户发起提醒。什么是小米推送服务(MiPush)是小米公司为开发者提供的消息推送服务,通过在云端和客户端之间建立一条稳定、可靠的长连接,为开发者提供向客户端应用推送实时消息的服务,帮助开发者有效地拉动用户活跃。统一推送服务对用户的好处很多安卓用户在抱怨手机很耗电,这和安卓上应用的推送需求有很大关系。如前文所述,推送需要应用在后台保持长连接,因此经常会唤醒设备去向服务器发送心跳包,而由于每个应用唤醒的频率和时间点不同,往往会导致设备一直处于被唤醒状态,引起耗电量的增加。如果所有的应用都采用统一的推送服务,则可统一每个应用的唤醒时间和频率,同时可根据用户使用行为采取一些智能的唤醒策略,让安卓手机能够有规律的唤醒-休眠,节省大量耗电。实践证明,在使用统一的推送服务之后,手机设备的平均省电效果能达20-40%。统一推送服务对开发者的好处实现推送服务有如下几个技术难点,首先是移动设备的网络环境复杂,网络切换频繁,如何能保证在各种网络环境下,消息都能及时送达。其次是为了维持多个设备的长连接,需要大量的服务器资源投入,开发和维护成本很大。最后由于用于维持长连接的心跳需要将手机唤醒,因此对于手机的电量是个不小的开销,如何在尽量不影响手机待机的前提下,维护推送的长连接,也是不小的技术挑战。基于上述门槛,开发者要实现推送需求,成本较高,并且后期维护难度也很大,因此使用一些已经成熟的第三方SDK是一个性价比比较高的方式。小米为什么要做推送服务如前文所说,省电,是手机的最核心竞争力之一,如果能够统一小米手机上的推送服务,则小米手机便毫无争议的成为最省电的安卓手机。这是小米做推送服务的初衷,也是最根本的出发点。同时作为一家互联网公司,服务一直是小米的铁人三项的很重要的一项,而开发者服务则是互联网服务的重中之重,是企业的创建自己生态圈的重要根基。微软、谷歌、苹果的成功无不说明“得开发者得天下”这一事实。小米抱着同样的开放心态,不惜投入大量的人力和服务器资源,以推送服务为切入点,一步步完善整个小米生态圈。(完)原文:
这个功能对于手机用户来说是绝对利大于弊,不仅节省内存,更能节省电量。
对于开发者来说,开发成本低,需要考虑的就是信任问题。

我要回帖

更多关于 怪物大作战 的文章

 

随机推荐