精华内容
下载资源
问答
  • 信号交叉口N控制策略下车辆到达率变化的批量到达随机模型,庄斌,杨晓光,ith the great advancement of transportation science and technology, the vehicles’ arrival processes are no longer simple ...
  • FASTmail 是一种专用到EDM邮件营销到达率测试工具 介绍本软件之前,先弄清楚两个概念,一个是拒发,一个是拒收(被退信或杳无音信) 大家知道,EDM营销经常提到一个到达率问题,严格讲,到达并不意味着客户一定收到信,...
  • FASTmail 是一种专用到EDM邮件营销到达率测试工具 介绍本软件之前,先弄清楚两个概念,一个是拒发,一个是拒收(被退信或杳无音信) 大家知道,EDM营销经常提到一个到达率问题,严格讲,到达并不意味着客户一定收到信,到达...
  • 短信到达率受发送号码的质量(包含空号、关机号码)、发送内容、网关质量等因素的影响,这也是为什么短信的到达率不可能百分之百的原因。 那么影响短信到达率高低的因素有哪些呢? 1、用户手机号码的质量。 在发...

    短信群发是一种简单、方便的推广方式,因成本低、传播迅速、阅读量高等优势受到广大企业的青睐。但短信也有一个不好把控的问题,那就是到达率。短信到达率是指真正让用户手机接到的短信数量与短信平台发出的短信总数量相除的百分比。短信到达率受发送号码的质量(包含空号、关机号码)、发送内容、网关质量等因素的影响,这也是为什么短信的到达率不可能百分之百的原因。

    那么影响短信到达率高低的因素有哪些呢?

    1、用户手机号码的质量。

    在发短信前,最好对目标号码进行仔细的筛选,特别是对错号、重号要进行剔除,从中要筛选出优质号码。一旦目标用户的手机号码出现空号、停机,是不能正常接收短信的。

    2、行业短信限制

    不同行业,由于行业的不同要求以及某些行业的特殊性,短信到达率是不一样的。一般来说,通知类短信的到达率就比营销类短信的到达率要高。而涉及到一些营销类行业例如教育、留学移民、金融、房产发送短信的难度则较大,因此相应的质量和成功率都将受到影响。

    3、网关通道质量

    一个正规有实力的短信平台服务商拥有优质的一手网关通道,秒速下发,能够确保较高的短信送达率。因此,企业在选择短信平台的时候一定要谨慎挑选,避免一些不正规、实力弱的短信公司。

    另外,短信平台只能保证到达率,但不能保证效果。短信发送的效果与活动吸引度、投放精准度等有很大关系。对于宣传推广来说,除了到达率外,更重要的还是提高转化率。

    展开全文
  • Android第三方推送到达率调研

    千次阅读 2017-09-25 16:30:25
    由于众所周知的原因,国内APP不能使用谷歌官方推送GCM,同时国内android系统几乎都经过厂商的深度定制,对于后台应用的管控严格,导致推送到达率很低,现对市面上一些主流第三方推送(非所有)做一个调研。...

            由于众所周知的原因,国内APP不能使用谷歌官方推送GCM,同时国内android系统几乎都经过厂商的深度定制,对于后台应用的管控严格,导致推送到达率很低,现对市面上一些主流第三方推送(非所有)做一个调研。这里选择三个渠道:友盟、小米和华为。简述一下选择的原因,友盟作为免费的商业级第三方入选,当然也可以选择极光什么的;小米和华为是目前最主流的两款手机,他们有一个共同特点,都有自己的系统级推送(到达率差不多100%生气),其他推送则有可能被后台杀死导致收不到推送,主要调研他们的推送在本身品牌手机上面的到达率。


    一、友盟推送

    集成较为简单,直接上结果图:

    √ 表示能接收到推送,× 表示接收不到推送,~ 表示有时候可以接收到推送或者满足特定条件之后可以接收到推送

            据说友盟集成了小米和华为推送,听起来是不是很诱人,这样只要集成了友盟就可以在小米和华为手机上面达到系统级的推送,确实友盟推送也提供了小米和华为的聚合包,然而我实际测试结果发现,使用小米聚合之后,和通常的友盟推送表现一样,未杀死应用能收到推送,杀死应用后还是收不到(未测试华为聚合了,感觉意义不大了敲打)。


    二、小米推送

            总结就是,在小米自家的手机上面,推送到达率确实霸道,然而在其他手机,包括谷歌原生系统的pixel手机上,表现不如友盟,参考上面两图,pixel手机重启后,友盟推送能收到,小米推送则收不到。


    三、华为推送

            首先吐槽一下华为的文档,是最乱、最不人性化的,接入较为复杂点。

            看图说话,在MIUI系统上,推送到达率较低,包括应用没有被杀死,也有很大概率收不到推送,不知道是否网络环境不好导致的,但同时期华为手机能收到推送(要么是华为手机信号好,要么就是华为的推送在MIUI上很烂)。在原生Android上面,表现差强人意。重点来了,并不是所有的华为手机都支持华为自家的系统级推送(华为叫它NC,推送中心),这就有点尴尬了,官方文档上有一句这样的话,“支持NC功能的手机:部分EMUI4.0和4.1的手机,以及EMUI5.0及之后的华为手机。”,也就是说,在部分华为手机上,华为推送和其他第三方推送并无两样(恰好我手上的一台华为测试机就不支持)。华为推送还有一个奇葩的地方,可能是其他手机不能接受的,它必须安装华为移动服务这样一个APP才能使用再见


    四、总结

            在MIUI上使用小米推送,在EMUI上使用华为推送,其他手机使用友盟推送,没错,就是这么复杂,谁叫我们是苦逼的Android程序猿(再一次羡慕Ios开发)。


    参考:

    集成第三方推送最佳实践


    展开全文
  • FASTmail 是一种专用到EDM邮件营销到达率测试工具 PHP 批量邮箱账号收件程序 本程序免费,爱好者可任意修改,但请页面保留版权和连接 可以批量收取常见邮箱的邮件标题,适合管理大量的邮件发送账号,一次可处理几千个,你...
  • FASTmail 是一种专用到EDM邮件营销到达率测试工具 本程序由PHP 语言开发,可以运行在任何一个windows 或 linux 服务器环境 (linux 服务器tar直接上传,到服务器上去解压,如果你先解压后上传需要选择二进制上传,否则...
  • 这是关于电子邮件的到达率,以及我们对客户开发信的关心程度。 如果是这样,该怎么做? 这篇文章聊聊帮助提高客户开发信到达率的几个重要方法。 什么是群发邮件到达率? 简而言之,就是我们实际发送到潜在客户收件...

    您是否认为所有群发的邮件都已发送到客户的收件箱? 您确定他们确实这么做吗? 这是关于电子邮件的到达率,以及我们对客户开发信的关心程度。 如果是这样,该怎么做? 这篇文章聊聊帮助提高客户开发信到达率的几个重要方法。

    什么是群发邮件到达率?

    简而言之,就是我们实际发送到潜在客户收件箱中的电子邮件数量,或更具体地说:多少电子邮件有机会吸引潜在客户注意。如果我们的电子邮件被归类为垃圾邮件,则根本不会发送,也不会发送到应有的位置。因此,我们的电子邮件到达率受到影响。而且,我们分类为垃圾邮件的电子邮件越多,到达客户收件箱的邮件就越少,而我们的群发邮件效果就越差(更不用说我们的电子邮件地址和整个域名的声誉了)。所以,我们可以提高客户群发邮件的到达率吗?

    当然可以。我们应遵守一些规则,以确保将群发邮件发送到我们希望将其发送到的地方–这是我们潜在客户的主要收件箱。有些规则基于人们对我们发送的内容的看法,而这些基本上是常识性规则。某些规则源自漫游器(或过滤器)对我们电子邮件内容的评估以及我们发送电子邮件的方式。

    总结整个可交付性方法的一般规则是:

    不要写让客户生气的内容,不要激活垃圾邮件过滤器。

    如果我们要提高电子邮件的到达率,则需要确保潜在客户不会将我们的电子邮件视为垃圾邮件。简而言之,我们希望我们的潜在客户喜欢我们的电子邮件。我们希望垃圾邮件过滤器将我们的邮件归类为“需要”。

    客户“想要”哪种邮件?

    个性化的
    私人的
    与他们利益相关的
    有价值的
    诚实清晰的
    什么样的电子邮件是客户“不需要的”?

    非个性化的
    大规模群发的
    利益不相关的
    没有价值的
    误导或混淆的
    怎么做提高邮件到达率
    在下面,我列出了几个规则,这些规则将帮助我们提客邮件群发的到达率,即帮助我们避免被人和邮件提供商都归类为垃圾邮件。

    规则1:避免使用垃圾内容

    垃圾邮件会激怒人和激活反垃圾邮件过滤器。 我们许多人甚至都没有意识到我们通常在电子邮件中使用的某些词可能会激活垃圾邮件过滤器。这篇文章总结了群发邮件中应该避免的词语。垃圾邮件词语在不断更新。 现在,甚至包括“Marketing”或“Increase”之类的常用词也列在列表中。

    规则2:限制视频和图片链接

    我一直都知道这是一个好习惯,但是我从来没有想过该规则背后的原因。 到现在。 这是我从Pure360白皮书中发现的有关如何提高邮件群发到达率的信息: 电子邮件提供商一旦注意到“大图像,小文本”模式,便将其添加到垃圾邮件过滤器中。在同一白皮书中,还有一个有趣的部分介绍了如何在电子邮件中使用链接,以及我们对此要非常谨慎的原因。因此,将图片和链接放入我们的群发邮件中可能会激活某些电子邮件提供商的垃圾邮件过滤器。 这就是为什么我们应该将这些限制到最低限度。 保持简单,依靠基于单词的的信息。

    规则3:注意邮件内容个性化

    我们如何识别群发消息? 它们都是一样的。 还是差不多。 它们可以发送给成千上万的人,而邮件的主体几乎没有任何变化。 而且由于易于识别的模式,也很容易学习机器人来识别它。 大量群发邮件都会激活垃圾邮件过滤器。

    所以我们应该尽可能让群发邮件内容显得个性化,这至关重要。 在开头放置收件人的名字还不够。从Snovio邮件群发平台发送群发营销邮件时,我确实使用模板。 但是我的模板通常包含3-4个自定义选项和摘要。 有时,摘要是完整的句子。 这使我可以根据自己的潜在客户个性化和量身定制邮件内容。

    规则4:确保您的目标客户邮箱列表质量良好

    如果我们的目标客户邮箱列表质量很差-也就是说,如果群发邮件发送的大部分电子邮箱地址都不存在,那么我们的许多电子邮件将被退回。 跳出率在很大程度上影响邮件的到达率。 由于没有电子邮件地址,大量的强制退回可能会将我们的域名列入黑名单。这就是为什么我们应该始终确保我们的联系基础已经过正确验证和最新的原因。 Snovio最棒的事情之一就是,即使在您向潜在客户发送第一封电子邮件之前,也已对其进行了预检查。 地址很可能是错误的或不存在的地址会自动标记为INVALID,并且不会将任何邮件发送给他们,以将硬跳率降低到最低。了解Snovio的邮箱地址在线验证工具如何能够提高你的目标客户邮箱质量。低跳出率可保护您的电子邮箱域名不被列入黑名单。

    规则5:预热您的发件邮箱域名

    如果您为群发邮件营销活动设置了全新的电子邮箱地址,那么在开始发送大量邮件之前,请对其进行“预热”是很重要的。因此,请慢慢开始并逐渐增加每天发送的邮件数量,以确保您的域名那个不会被归类为潜在的垃圾邮件来源。这也源于垃圾邮件发送者的做法。您有多少次收到来自诸如company123@gmail.com或company11@company.com之类的电子邮件地址的垃圾电子邮件?您是否一直想知道为什么人们需要普通的电子邮箱地址?可能是因为他们从每个电子邮箱帐户发送了数百封电子邮件,被其电子邮件提供商垃圾邮件或禁止了,并且他们很快需要另一个电子邮箱地址来发送邮件。同样,在数字方面要保持自然。如果每天手动发送一封电子邮件,您一天可以发送多少封电子邮件?注重质量而不是数量,您将收到更多电子邮件。

    遵循以上5个规则,你的邮件群发的到达率相信会有大幅度的提升!

    原文发于:https://www.snovio.cn

    展开全文
  • 如何提高友盟推送的消息到达率

    千次阅读 2019-07-31 10:41:50
    无意间看到了友盟微信公众号的一篇推送,文章名字叫“你的消息到达率是多少?“,这是一篇关于友盟推送的消息推文,大概说明了友盟推送消息送达到手机的过程中的有关影响因素。 然后总结出:提高手机收到率的三个...

    无意间看到了友盟微信公众号的一篇推送,文章名字叫“你的消息到达率是多少?“,这是一篇关于友盟推送的消息推文,大概说明了友盟推送消息送达到手机的过程中的有关影响因素。
    在这里插入图片描述
    然后总结出:提高手机收到率的三个方法:

    三、提升收到率的方法:
    方法一:提高App的在线活跃用户数;对于Android平台,收到率其实都是和App自身日活比例呈正相关的,App日活度不高,那么收到率也不会太高。
    方法二:增加离线App的消息推送;通过集成厂商通道,可将消息直接发送到手机厂商的系统通道中,增加对App离线这部分有效用户的实际下发数,提高整体的“消息到达率”。到目前为止友盟+的消息推送提供了小米、华为、魅族、OPPO、vivo五个主流手机厂商通道。
    方法三:延长消息有效期;比如设置12H和24H的有效期,消息下发数以及送达App数肯定是不一样的。消息有效期越长,消息收到数会越多。U-Push默认发送时间是72H。
    

    下面我们就来说明一下消息送达的过程:
    在这里插入图片描述从上图我们可以知道,我们广播推送消息都是先由我们集成了友盟SDK的后台服务器首先推送消息到我们注册申请的友盟推送服务器后台,然后再由友盟推送服务器后台把消息推送到我们的APP的手机上。我们手机上因为也集成了友盟提供的SDK,这个SDK的作用就是在后台和友盟推送服务器的后台建立一条HTTP的数据长链接,这个链接是长期存活的。
    这样就存在一个各种终端设备实现推送服务的方式的统一性问题,后由工信部联合各大手机生产厂商统一了一套安卓统一推送服务(Unified Push Service,简称UPS)技术标准旨在为国内的消息推送服务建立统一的标准,为终端用户提供更好的手机使用体验,为应用开发者更好解决消息推送需求,并取得了阶段性成果。
    统一推送对于开发者的一个福音是,由于推送 API 的统一,未来各终端厂商将提供系统级 API 实现推送功能(即App无需嵌入各通道SDK)。考虑到实际情况,为了兼容已有机型,手机端还是会提供一个简单的SDK,判断手机是否支持统一推送。若支持则可以直接调用 ROM API ,否则按照当前已有方式进行推送(为了适配已有机型还需要保留推送SDK)。随着手机的自然更替,未来支持统一推送的终端数目会不断更加,从而逐步实现统一推送的平滑演进。
    下面我们就来说明一下各大手机生产厂商是如何实现UPS技术标准的:
    在这里插入图片描述
    我们知道手机操作系统开发主要就是针对手机的ROM模块进行开发,所以我们可以得知各种手机设备生产厂商集成UPS-SDK的位置就是在手机的ROM模块。每个手机生产设备厂商都在各自的ROM模块实现了UPS-SDK接受推送消息的服务,这个服务只跟手机网络有关,一直存在后台,使用的时候需要手机生产厂商进行授权! 这里为什么需要手机设备生产厂商的授权才能使用呢?如果去掉这个授权不是也很合理吗?(所有安装在该手机设备上的APP都可以使用这条推送后台服务,这样也是合情合理),具体为什么使用手机设备的推送后台服务需要授权?还需要有知道的朋友可以解答。
    这里需要理解一下友盟推送和手机设备生产厂商各自的推送服务功能之间的区别,首先我们可以理解各种手机生产厂商的推送SDK和友盟、极光推送服务的性质是相同的,实现的功能都是推送消息到手机设备的功能。
    但是由于手机生产厂商遵守了UPS技术标准,在你集成各种手机设备生产厂商的SDK的同时,它们也就默认给你授权使用了UPS推送服务,所以集成该手机设备的推送SDK就可以大大提高消息的送达率。
    如果你之前集成了手机设备生产厂商的推送SDK,需要先删除之后再去集成友盟的推送SDK。
    如果你之前集成了友盟的SDK,感觉小米手机接受到友盟推送的接受率非常低的话,就可以试着按友盟官网推送SDK集成文档的要求配置手机设备厂商的渠道:厂商通道集成文档
    根据集成文档我们发现,并不只是在友盟推送应用管理后台配置各个手机设备厂商的的AppID和AppSecret就可以了,还需要在项目的APP目录下集成各个手机设备厂商的推送SDK来实现手机推送服务的授权,但是我们在友盟推送官网复制的手机设备厂商推送SDK和手机设备厂商官网的提供的SDK一样吗?
    下面我们就选择小米来试着集成厂商通道:小米推送服务集成官网。创建完应用之后,就按照友盟集成厂商渠道的步骤,添加好x-secert和在app目录下导入友盟提供的设备厂商SDK,然后在Application类的onCreate()方法里面注册,添加应用的AppId和App Secert成功之后就可以在小米系统打印注册日志。
    我按友盟厂商渠道集成的文档添加完之后,编译却报以下错误:

    Manifest merger failed : Attribute application@allowBackup value=(true) from AndroidManifest.xml:41:9-35
    	is also present at [com.umeng.umsdk:xiaomi-umengaccs:1.1.0] AndroidManifest.xml:24:18-45 value=(false).
    	Suggestion: add 'tools:replace="android:allowBackup"' to <application> element at AndroidManifest.xml:39:5-332:19 to override.
    

    看到这个错误,我相信很多人都会和我一样,把AndroidManifest文件的allowBackUp字段改成tools:replace系统推荐的属性,但是编译发现还是报错,但是系统却没有告诉我具体的错误问题。

    Manifest merger failed with multiple errors, see logs
    

    一直尝试着解决,但是因为无法定位具体问题,所以一直都没有解决。到后来我试着把完整的错误日志百度之后,发现是因为我改动之前的代码之后,引发了系列问题 ,但是系统并没有提示我如何去解决。然后tools:replace属性可以添加多个选项,并不需要移除之前的属性代码。

     tools:replace="android:label,android:allowBackup"
    

    我犯的错误就是使用“|”来区别多个属性,导致出现了问题,后来发现是使用“,”来进行区分的。现在问题解决。
    在友盟推送集成文档中集成小米的x-sercet配置:
    在这里插入图片描述
    然后登录小米官网平台,去打开小米官网的推送服务。
    在这里插入图片描述
    总结一下主要以下步骤:

    1)在小米官网上传应用之后,给上线的应用开启推送服务功能。
    2)在友盟官网推送后台-》应用信息配置小米官网的appSecert.
    3)按照友盟推送集成文档集成各个生产厂商的SDK,并在Application类里面注册(通过平台的appkey和appSecert)。
    4)在app清单文件里面配置好离线消息处理类,各厂商都统一继承自UmengNotifyClickActivity。
    5)使用各个设备生产厂商的官网推送测试消息是否可以接受离线消息。
    6)使用友盟推送后台测试推送消息是否可以接受离线消息。
    

    集成厂商SDK之后可以用厂商的推送平台测试,查询设备状态。
    在这里插入图片描述
    测试需要注册的registerId,可以根据友盟推送集成厂商设备的提示过滤字段查找到:
    在这里插入图片描述
    下图是你集成了厂商的SDK,但是没有在厂商的官网开启App的推送服务导致获取不到注册ID的问题:
    在这里插入图片描述
    通过消息轨迹查看消息是否发送成功,如果实在不知道如何解决,可以咨询友盟在线客服。
    在这里插入图片描述

    注意:使用友盟集成厂商渠道离线推送。需要后台推送参数增加两个字段,来标识设备离线时,开启离线下发消息的功能。
    

    App后台推送消息增加以下两个字段:

    "mipush":true
    "mi_activity":"com.umeng.message.example.MipushTestActivity"        //此处请填写Activity完整包路径
    

    推送消息处理类:

    
    /**
     * 小米手机设备推送消息的处理activity
     * @author guotianhui
     */
    public class MipushHandlerActivity extends UmengNotifyClickActivity {
    
        public int TAB_TYPE_TASK = 1003;
    
        @Override
        protected void onCreate(Bundle bundle) {
            super.onCreate(bundle);
            View customView = new View(this);
            customView.setBackgroundColor(Color.TRANSPARENT);
            ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(-1,-1);
            customView.setLayoutParams(layoutParams);
            setContentView(customView);
        }
        /**
         * 设备厂商推送离线消息处理,目前支持小米、OPPO
         */
        @Override
        public void onMessage(Intent intent) {
            super.onMessage(intent);  //此方法必须调用,否则无法统计打开数
            try {
                String body = intent.getStringExtra(AgooConstants.MESSAGE_BODY);
                JSONObject bodyObject = new JSONObject(body);
                UMessage uMessage = new UMessage(bodyObject);
                String custom = uMessage.custom;
                LogUtils.e("推送消息custom:"+custom);
                JSONObject object = new JSONObject(custom);
                Bundle bundle = new Bundle();
                int type = object.getInt("type");
                LogUtils.e("推送消息type:"+type);
                String token = TokenManager.getInstance().getToken();
                if (ObjectUtils.isEmpty(token)) {//判断用户是否登陆,没有登陆直接返回
                    return;
                }
                switch (type) {// 1001 阅读计划,1002 班级任务 1003完成所有班级任务弹窗
                    case 1001://阅读计划
                        bundle.putInt(ConstantExtra.INSTANCE.INTENT_TYPE, TAB_TYPE_TASK);
                        ARouter.getInstance().build(StudentRouter.MAIN_HOME).with(bundle).navigation();
                        break;
                    case 1002: {//班级作业推送
                        String articleId = object.getString(ConstantExtra.INSTANCE.KEY_SUMMARY_ID);
                        int summaryId = 0;
                        try {
                            summaryId = Integer.parseInt(articleId);
                        } catch (Exception e) {
                            LogUtils.e(e.getMessage());
                        }
                        bundle.putInt(ConstantExtra.INSTANCE.ARTICLE_ID, summaryId);
                        //路由的方式跳转,目前出现目的Activity中不再相应路由方式跳转事件
    //                        ARouter.getInstance().build(StudentRouter.FUN_DETAIL_ARTICLE).with(bundle).navigation();
                        Intent intentAction = new Intent();
                        intent.setAction("com.fenjiread.learner.activity.HomeArticleDetailActivity");
                        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                        intent.putExtras(bundle);
                        startActivity(intentAction);
                    }
                    break;
                    case 1003: {//阅读报告推送
                        boolean showNotificationDialog = isShowNotificationDialog();
                        if (showNotificationDialog) {
                            Intent notificaIntent = new Intent(getBaseContext(), NotificationActivity.class);
                            int totalWords = object.getInt(ConstantExtra.INSTANCE.KEY_TOTAL_READ_WORD);
                            int totalDays = object.getInt(ConstantExtra.INSTANCE.KEY_TOTAL_READ_DAY);
                            int todayReadWords = object.getInt(ConstantExtra.INSTANCE.KEY_TODAY_READ_WORD);
                            notificaIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                            notificaIntent.putExtra(ConstantExtra.INSTANCE.KEY_TOTAL_READ_WORD, totalWords);
                            notificaIntent.putExtra(ConstantExtra.INSTANCE.KEY_TOTAL_READ_DAY, totalDays);
                            notificaIntent.putExtra(ConstantExtra.INSTANCE.KEY_TODAY_READ_WORD, todayReadWords);
                            startActivity(notificaIntent);
                            //保存一个时间戳
                            UserPreferences.INSTANCE.saveKeyCurrentTimer(String.valueOf(System.currentTimeMillis()));
                        }
                    }
                    case 1004: {//用户写一写列表
                        int summaryId = object.getInt(ConstantExtra.INSTANCE.KEY_SUMMARY_ID);
                        int levelId = object.getInt(ConstantExtra.INSTANCE.KEY_LEVEL_ID);
                        long questionId = object.getLong(ConstantExtra.INSTANCE.KEY_QUESTION_ID);
                        bundle.putInt(ConstantExtra.ARTICLE_ESSAY_ID, summaryId);
                        bundle.putInt(ConstantExtra.ARTICLE_LEVEL_ID, levelId);
                        bundle.putString(ConstantExtra.WRITE_QUESTION_ID, String.valueOf(questionId));
                        ARouter.getInstance().build(StudentRouter.FUN_DETAIL_ARTICLE_COMMENT).with(bundle).navigation();
                    }
                    break;
                    default: {
    
                    }
                    break;
                }
            } catch (JSONException e) {
                LogUtils.e(">>>>>>>>>>>>>>厂商设备处理友盟推送报错:"+ e.getMessage());
            }
        }
    
        /**
         * 提供一个方法判断是否在本周之内显示
         */
        public boolean isShowNotificationDialog() {
            boolean firstPush = UserPreferences.INSTANCE.getKeyFirstPushState();
            boolean selectedState = UserPreferences.INSTANCE.getKeyIsSelectedState();
            if(firstPush) {
                UserPreferences.INSTANCE.saveKeyFirstPushState(false);
                return true;
            }else {
                Long daytime = 0l, pushTime = 0l;
                String currentTime = UserPreferences.INSTANCE.getKeyCurrentTime();
                if (ObjectUtils.isNotEmpty(currentTime)) {
                    daytime = Long.valueOf(currentTime);
                }
                String pushTimeString = UserPreferences.INSTANCE.getKeyPushTime();
                if (ObjectUtils.isNotEmpty(pushTimeString)) {
                    pushTime = Long.valueOf(pushTimeString);
                }
                //如果没有选中按钮。没有保存时间戳,并且不再本周范围内则显示
                if (!selectedState && !DataUtil.isThisWeek(pushTime) && !DataUtil.isToday(daytime)) {
                    return true;
                } else {
                    return false;
                }
            }
        }
    }
    

    这里接受到的消息参数比较多,查看源码可以使用友盟的数据类进行处理:

     String body = intent.getStringExtra(AgooConstants.MESSAGE_BODY);
                JSONObject bodyObject = new JSONObject(body);
                UMessage uMessage = new UMessage(bodyObject);
                String custom = uMessage.custom;
                LogUtils.e("推送消息custom:"+custom);
                JSONObject object = new JSONObject(custom);
    

    传送门:友盟推送集成的常见问题

    展开全文
  • 用户召回推送消息到达率低?用这4问推出最优解 张晓亮 2018-04-11 17:08App后台进程促活, 到达率, 推送消息, 最优解, 用户召回在消息推送这件事上,国内无法使用谷歌官方的GCM,各个ROM厂商对消息推送的实现...
  • 这个与到达率、速度及费用有关联吗? 首先,这个没有必然的关联,通道号越长,仅仅说他的下级越多,可是不代表他的质量不行,价格也不一定就高。 原因是看上游渠道,也就是一级代理商。假如一级代理商的每个月的发送...
  • 近期,网易云信推出一款稳定可靠、到达率高、扩展性较强的信令通道产品--信令SDK。它能够提供可靠的消息通道,可用于搭建音视频场景下的呼叫邀请机制。信令SDK目前兼容市面上所有主流的音视频SDK,呼叫到达率高达100...
  • 排队论模型(一):基本概念、输入过程与服务时间的常用概率分布 ...排队论模型(五): 有限源排队模型、服务率或到达率依赖状态的排队模型 排队论模型(六):非生灭过程排队模型、爱尔朗(Erlang)排队...
  • kewail验证码短信平台解析短信验证码到达率低原因:作为电子商务企业在移动业务流程中与用户传递重要信息的纽带,短信验证码是否顺畅、及时、准确的到达用户手机端,是关乎到用户是否能持续运用的大事,直接影响到了用户...
  • 因而推送(Push)的到达率越来越重要。 什么是到达率?影响到达率的因素有哪些?怎么做才能提升推送的到达率?别急,接下来将会一一解答。 首先到达率=到达数量/发送数量。导致到达率低的原因主要分两种,一是...
  • 因而推送(Push)的到达率越来越重要。 什么是到达率?影响到达率的因素有哪些?怎么做才能提升推送的到达率?别急,接下来将会一一解答。 首先到达率=到达数量/发送数量。导致到达率低的原因主要分两种,一是技术通道...
  • 2、小程序到达率低(数据统计:性能指标提升会帮助小程序的访问人数增加) 3、小程序C端体验降低,由此影响小程序等级 那么如何优化小程序性能呢?小智给大家推荐一套《智能小程序性能优化实践》专题课程,快速...
  • (Android)关于提高推送到达率问题

    千次阅读 2016-12-03 15:22:33
    现在单个平台的推送的到达率已经很低了,建议采用 小米+华为+ 第三方推送来完成推送工作。即在小米手机上采用小米推送,在华为手机上采用华为推送,其他机型采用第三方推送 判断手机的代码 public class SystemUtil...
  • 如何提高国外电子邮件到达率

    千次阅读 2013-03-14 06:44:19
    因此,防止营销邮件被国外反垃圾邮件工具过滤十分重要,可以采取以下措施提高电子邮件的到达率: 1. 发送电子邮件的IP和域名必须经过验证 如果你的IP和域名没有经过验证,很可能就会被视为垃圾邮件发送者,...
  • 因为安卓app推送经常无法收到或者无法按时收到,所以公司要求我写一个针对推送的优化文档,为...Android的推送,因为google官方服务被屏蔽的原因,所以推送到达率完全得不到保障,目前来看,除了微信、QQ等和国内...
  • 改进 iOS Push 的到达率

    2021-01-08 21:06:47
    <div><p>70% 的时候都收不到...</p><p>该提问来源于开源项目:ruby-china/homeland</p></div>
  • 因而推送(Push)的到达率越来越重要。什么是到达率?影响到达率的因素有哪些?怎么做才能提升推送的到达率?别急,接下来将会一一解答。首先到达率=到达数量/发送数量。导致到达率低的原因主要分两种,一是技术通道...
  • 为什么群发邮件会退回:怎么做来避免邮件退回并提高群发邮件到达率 影响群发邮件到达率的因素很多。 作为销售人员,我们希望相信采用电子邮件协议(SMTP,POP3或IMAP),创建转换主题行和相关内容足以确保每封电子...
  • 在您平日使用邮件营销系统进行投递的时候,不管是少量或批量EDM邮件投递,到达率都是一组直接营销营销效果的数据。当您进行某种紧急、重要的邮件营销活动时,每一个未投递成功的信息都会造成收益的损失。现在360...
  • 我感觉消息可到达比较重要,这块怎么保证的呢? 还有router问题,看之前帖子要解决这层的问题,现在解决了吗</p><p>该提问来源于开源项目:Terry-Mao/goim</p></div>
  • 经常会有人问我,说在别的商家那里,会给他保证短信验证码发送的到达率正常情况下100%,特殊情况的话99.99%,这样的数据可信不可信?在此我只想表示,这是做不到的。无论是硬件方面,还是软件方面,要达到这个水准,...
  • U-Push的Android平台消息到达率是多少?这是U-Push用户最关心的问题之一。小伙伴们每次都想要一个准确的答案,或者是行业的平均值。在这里允许小编卖个关子随后再回答。一、手机品牌大盘趋势&App机型构成1. OPPO...
  • 邮件的到达还不错,除了一些邮件满的,或者DNS错误的,或者其他一些接收者的问题,基本上都到达了,应该说非常不错了。 2.邮件的打开有44%,对于邮件营销而言是个非常不错的成绩,这主要是得益于该用户发送的对象...
  • 1.1: 前台service只需要搞定在状态栏的notification就可以了,同时启动两个id相同的前台Service,然后再将后启动的Service做stop处理,主要是利用了系统的一个漏洞,但是在7.0系统,Android将漏洞封堵了,该方法不...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,076
精华内容 830
关键字:

到达率