新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在国内 Android 生态中,推送通道都是由终端与云端之间的长链接来维持,严重依赖于应用进程的存活状态,软件推出后台运行后会接受不到消息推送。
创新互联服务项目包括进贤网站建设、进贤网站制作、进贤网页制作以及进贤网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,进贤网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到进贤省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
针对这个问题,如今一些手机厂家会在自家 rom 中做系统级别的推送通道,再由系统分发给各个 app,以此提高在自家 rom 上的推送送达率
极光推送率先和国内包括华为,小米,OPPO,VIVO,魅族等7大主流手机厂商打通通道,大大提高消息送达率
android push 是安卓的一种消息推送机制。开发者在开发的时候会有这样的几种实现方案:
安卓关于消息推送的相关方案介绍
------我们国内自己的技术实现
前些时间公司有个项目用到了android push功能,于是在google中狂搜,
看到好多网友的介绍,我总结了一下几种方案,但其中有一种是我用着比较好的,简单,易用还免费。
以下是这几种方案的介绍:
方案一:
Google官方的:
通过对比研究发现C2DM机制存在以下缺点:
1、C2DM内置于Android的2.2系统上,无法兼容老的1.6到2.1系统;
2、必须运行android,并且安装Market,至少有一个登录的google账号。
3、C2DM需要依赖于Google官方提供的C2DM服务器,由于国内的网络环境,这个服务经常不可用,是消息阻塞,不能对送到终端。
方案二:
利用MQTT协议,broker做代理服务器,但是随着用户的增多这个方案会有问题,因为broker的连接数有上限,到了一定程度后就无法连接了,这也就导致消息很难发送出去。
总之,连接数量有限制。
方案三:
基于XMPP协议,很多人都建议使用这个,谷歌官方的C2DM也是基于XMPP研发的,使用这个方案不会依赖android系统,也不依赖于谷歌服务器。
方案四:
最近新出的一种是APNS,这个也不需要自己架设服务器,很简单,自己不用开发服务端,但要收费的,一年100人民币。
主要有以下特点:
· 快速集成:提供一种比C2DM更加快捷的使用方式,避免各种限制.
· 无需架设服务器:通过使用"云服务",减少额外服务器负担.
· 可以同时推送消息到网站页面,android 手机
· 耗电少,占用流量少.
终极方案:
下面的一种方案是我自己发现的一种方案感觉比较好用,所以推荐给大家。(android-push终极方案)
先介绍特点:
1、免费
2、易集成
3、没有C2DM中的版本限制和必须用gmail绑定
4、云服务,不用假设自己的服务器
5、用户track
6、简单高效,并且省电
1 Android 推送实现方式编辑本段
方案1、使用C2DM服务(Google Cloud Messaging)
简介:Google推出的云消息服务,即第二代的G2DM。
优点:Google提供的服务、原生、简单,无需实现和部署服务端。
缺点:Android版本限制(必须大于2.2版本),该服务在国内不够稳定、需要用户绑定Google帐号,受限于Google。
方案2、使用XMPP协议(Openfire + Spark + Smack)
简介:基于XML协议的通讯协议,前身是Jabber,目前已由IETF国际标准化组织完成了标准化工作。
优点:协议成熟、强大、可扩展性强、目前主要应用于许多聊天系统中,且已有开源的Java版的开发实例androidpn。
缺点:协议较复杂、冗余(基于XML)、费流量、费电,部署硬件成本高。
方案3、使用MQTT协议
简介:轻量级的、基于代理的“发布/订阅”模式的消息传输协议。
优点:协议简洁、小巧、可扩展性强、省流量、省电,目前已经应用到企业领域(),且已有C++版的服务端组件rsmb。
缺点:不够成熟、实现较复杂、服务端组件rsmb不开源,部署硬件成本较高。
方案4、使用第三方推送服务
简介:通过嵌入SDK使用第三方提供的推送服务,目前主流的有 个推,PUBNUB,蝴蝶等
优点:稳定,成熟,节省开发和探索时间,相对自己开发成本低,推送管理界面及统计程序完善。
缺点:有程序嵌入顾虑
IOS推送实现方式
推荐使用APNS服务,稳定,方便,美中不足是没有推送到达的回执和统计,不方便产品运营。如对此方面有需求可以使用 个推 等第三方推送服务解决
Win-Phone
使用MPNS(Microsoft 推送通知服务),相应速度不错,但推送不带状态,很多功能无法实现
一般的,Android 应用程序有两种安装方法:
1. 将应用程序的apk文件push到手机中,用如下命令:
adb push xxxx.apk /system/app.
2. 用adb install xxxx.apk进行安装
3. 二者的比较以及注意事项:
1) 用第一种方式的弊端:
a. 会将原来系统中的对应的apk覆盖掉,所以,最好先备份出来一份,用如下命令:
adb push xxxx.apk /system/app.
b. 有时候,会出现如下形式的错误信息:
failed to copy '/home/SoundRecorder.apk' to '/system/app/SoundRecorder.apk': Read-only file system
很明显,/system/app目录是只读的,不能将文件push到这个目录下。
解决方法,用直接安装的方式进行安装,如下:
adb install -r /home/SoundRecorder.apk //注: -r 表示强制安装
adb push 能够指定安装目录。比如执行"adb push xxx.apk system/app" 后,xxx.apk被安装到了system/app目录下。
adb install 用此命令安装的软件位于 data/app 目录,则为user application。
份额对比:
首先关注厂商推送,能够保证push服务最大程度存活以保证实时触达。
免费、到达率高、Android系统市场份额第一
腾讯新闻、淘宝、百度视频、爱奇艺等等。
综上比较,几大push提供商在技术和特点上并没有明显的差异,在用户口碑上也各有褒贬。为减小试错成本,挑选最多用户使用的push为上策。
就厂商而言,比较有代表性的是小米和华为,而oppo、vivo等其他厂商并没有开放push服务给开发者使用。
鉴于小米的系统市场占有率为第一,如果要选择一家来接入的话,那就是小米了。
android消息推送主要有一下几种方式:
1.使用GCM(Google Cloude Messaging),因为采用的是google服务器,国内不可用
2.使用XMPP协议(Openfi,re+Spark+Smark),XMPP(可扩展通讯和表示协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM)以及在线探测。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息
3.使用MQTT协议,MQTT是一个轻量级的消息发布/订阅协议,它是实现基于手机客户端的消息推送服务器的理想解决方案
4.HTTP轮循方式,定时向HTTP服务端接口(Web Service API)获取最新消息
5.采用第三方服务
目前最常用的是使用第三方推送平台,比如极光推送就不错,极光推送,提供轻量级的客户端SDK:开发者只需在客户端集成极光推送 SDK,即可轻松地添加 Push功能到他的 App中。极光推送支持 Android、iOS、windows phone等平台,系统稳定,消息送达率高,速度快