一种基于Android平台客户端消息推送优化方法和装置与流程

文档序号:15979413发布日期:2018-11-17 00:08阅读:250来源:国知局

本发明涉及消息推送技术领域,尤其涉及一种基于android平台客户端消息推送优化方法、装置、电子设备及存储介质。

背景技术

随着移动设备的风靡和发展,谷歌的android系统在现今移动端设备系统中的市占已达85.9%(数据来自外媒gartner于2018年初公布的2017年整年的移动端数据),在中国的市占也在70%左右(无权威数据支撑,数据收集于各大移动端统计平台),快递行业中移动端产品android平台应用也是占比最大的。

移动端应用产品离不开推送消息,任何一款移动端产品都对消息推送有不小的依赖,而快递行业产品更是对消息推送有更强的稳定性和到达率的需求。谷歌公司推出gcm(googlecloudmessaging,谷歌云消息服务)以保证运行在android系统上的应用有极高的推送保障,但随着谷歌退出中国市场,国内无法使用该服务。又由于谷歌早期开源了android系统,使得国内很多手机厂商都能够对自己研发的移动设备装入定制化的系统(如小米手机miui系统、华为手机emui、魅族手机flymeos等)。这些定制化系统对于消息推送能力的支持和实现手段各不相同,行业中android应用的推送到达率都不高,大多数公司都仅仅采用第三方公司的推送服务(使用高存活率的长连接实现的消息推送),公开数据显示,百分之四十的综合到达率已是业界领先。

而低到达率对于快递行业产品负面影响很大,首先,配送员因通知时效问题可能导致一些经济损失,例如配送调度发生变化未能及时通知,使得配送员工作效率与期望不符,配送员对技术信任度降低,产品效用不达期望。



技术实现要素:

有鉴于此,本发明实施例提供一种基于android平台客户端消息推送优化方法、装置、电子设备及存储介质,能够提高消息推送到达率。

第一方面,本发明实施例提供一种基于android平台客户端消息推送优化方法,包括:

按照预设的多个推送方案对待优化的机型进行测试,选取出消息推送到达率最高的推送方案;

将选取出的推送方案下发至所述待优化的机型以进行执行。

结合第一方面,在第一方面的一种实施方式中,所述预设的多个推送方案包括以下中的两个以上方案:系统级推送、自研发推送长连接模式、自研发推送轮询模式、第三方推送服务、谷歌推送、组合推送方案;其中,所述组合推送方案包括以下至少一种:自研发推送轮询模式+长连接模式、自研发推送轮询模式+第三方推送、第三方推送a+第三方推送b。

结合第一方面,在第一方面的另一种实施方式中,所述按照预设的多个推送方案对待优化的机型进行测试,选取出消息推送到达率最高的推送方案包括:

判断所述待优化的机型是否支持系统级推送服务,如果是则测试其采用系统级推送服务时的消息推送到达率,如果消息推送到达率超过预设到达率阈值,则将系统级推送作为所述选取出的推送方案,如果不支持系统级推送服务或消息推送到达率未超过预设到达率阈值,则执行下一步骤;

按照预设顺序从所述预设的多个推送方案中选择除系统级推送和已进行过abtest测试的推送方案外的两个推送方案,对多种不同机型进行abtest测试,得到测试结果,并将所述两个推送方案中测试结果高的推送方案下发到所述待优化的机型进行测试,其中所述多种不同机型包括所述待优化的机型;

判断所述待优化的机型的消息推送到达率是否超过预设到达率阈值,如果是,则将所述测试结果高的推送方案作为所述选取出的推送方案,否则,转至上一步骤。

结合第一方面,在第一方面的再一种实施方式中,所述将所述两个推送方案中测试结果高的推送方案下发到所述待优化的机型进行测试包括:

获取所述待优化的机型在所述测试结果高的推送方案下的测试数据,其中,所述测试数据包含移动设备唯一标志、设备型号、系统版本、定制化的系统类型、定制化版本、到达后电量、未到达时电量、未到达时网络延时、已到达时网络延时、该设备的推送到达率;

对所述测试数据进行聚类分析,以对推送方案的选择进行决策。

结合第一方面,在第一方面的又一种实施方式中,所述对所述测试数据进行聚类分析,以对推送方案的选择进行决策包括:

将网络情况进行区间划分,5000ms以上为弱网,5000ms以下为网络情况正常,无延时数据则为无网情况;将电量划分为低电量、非低电量、充电中,其中百分之二十以下为低电量,百分之二十以上为电量正常,且区分用户是否开启省电模式;将内存情况区分为手机系统提供的正常和低内存两种;

如果发现当前推送方案对电量和内存产生巨大影响以至于让用户无法使用手机,则不选择当前推送方案,进行下一推送方案的abtest测试和选择。

结合第一方面,在第一方面的又一种实施方式中,当选取出的推送方案为组合推送方案时,所述消息中包含唯一性标志,以使客户端收到不同服务推送而来的消息时,通过所述唯一性标志过滤掉重复的消息。

第二方面,本发明实施例提供一种基于android平台客户端消息推送优化装置,包括:

测试及选取模块,用于按照预设的多个推送方案对待优化的机型进行测试,选取出消息推送到达率最高的推送方案;

下发模块,用于将选取出的推送方案下发至所述待优化的机型以进行执行。

结合第二方面,在第二方面的一种实施方式中,所述预设的多个推送方案包括以下中的两个以上方案:系统级推送、自研发推送长连接模式、自研发推送轮询模式、第三方推送服务、谷歌推送、组合推送方案;其中,所述组合推送方案包括以下至少一种:自研发推送轮询模式+长连接模式、自研发推送轮询模式+第三方推送、第三方推送a+第三方推送b。

结合第二方面,在第二方面的另一种实施方式中,所述测试及选取模块包括:

第一判断子模块,用于判断所述待优化的机型是否支持系统级推送服务,如果是则测试其采用系统级推送服务时的消息推送到达率,如果消息推送到达率超过预设到达率阈值,则将系统级推送作为所述选取出的推送方案,如果不支持系统级推送服务或消息推送到达率未超过预设到达率阈值,则转至测试子模块;

测试子模块,用于按照预设顺序从所述预设的多个推送方案中选择除系统级推送和已进行过abtest测试的推送方案外的两个推送方案,对多种不同机型进行abtest测试,得到测试结果,并将所述两个推送方案中测试结果高的推送方案下发到所述待优化的机型进行测试,其中所述多种不同机型包括所述待优化的机型;

第二判断子模块,用于判断所述待优化的机型的消息推送到达率是否超过预设到达率阈值,如果是,则将所述测试结果高的推送方案作为所述选取出的推送方案,否则,转至测试子模块。

结合第二方面,在第二方面的再一种实施方式中,所述测试子模块,包括:

获取子模块,用于获取所述待优化的机型在所述测试结果高的推送方案下的测试数据,其中,所述测试数据包含移动设备唯一标志、设备型号、系统版本、定制化的系统类型、定制化版本、到达后电量、未到达时电量、未到达时网络延时、已到达时网络延时、该设备的推送到达率;

分析子模块,用于对所述测试数据进行聚类分析,以对推送方案的选择进行决策。

结合第二方面,在第二方面的又一种实施方式中,所述分析子模块包括:

划分子模块,用于将网络情况进行区间划分,5000ms以上为弱网,5000ms以下为网络情况正常,无延时数据则为无网情况;将电量划分为低电量、非低电量、充电中,其中百分之二十以下为低电量,百分之二十以上为电量正常,且区分用户是否开启省电模式;将内存情况区分为手机系统提供的正常和低内存两种;

选择子模块,用于如果发现当前推送方案对电量和内存产生巨大影响以至于让用户无法使用手机,则不选择当前推送方案,进行下一推送方案的abtest测试和选择。

结合第二方面,在第二方面的又一种实施方式中,当选取出的推送方案为组合推送方案时,所述消息中包含唯一性标志,以使客户端收到不同服务推送而来的消息时,通过所述唯一性标志过滤掉重复的消息。

第三方面,本发明实施例提供一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一所述的方法。

第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述任一所述的方法。

本发明实施例提供的一种基于android平台客户端消息推送优化方法、装置、电子设备及存储介质,首先按照预设的多个推送方案对待优化的机型进行测试,选取出消息推送到达率最高的推送方案,然后将选取出的推送方案下发至所述待优化的机型以进行执行。由于选取出了消息推送到达率最高的推送方案提供给待优化的机型使用,故本发明实施例能够提高消息推送到达率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1为本发明基于android平台客户端消息推送优化方法实施例一的流程图;

图2为本发明基于android平台客户端消息推送优化方法实施例二的流程图;

图3为本发明的基于android平台客户端消息推送优化装置实施例一的结构图;

图4为本发明的基于android平台客户端消息推送优化装置实施例二的结构图;

图5为本发明的电子设备实施例的结构图。

具体实施方式

下面结合附图对本发明实施例进行详细描述。

应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

如图1所示,本发明实施例提供一种基于android平台客户端消息推送优化方法,包括:

步骤101:按照预设的多个推送方案对待优化的机型进行测试,选取出消息推送到达率最高的推送方案;

本步骤中,预设的多个推送方案包括以下中的两个以上方案:系统级推送、自研发推送长连接模式、自研发推送轮询模式、第三方推送服务、谷歌推送、组合推送方案;其中,所述组合推送方案包括以下至少一种:自研发推送轮询模式+长连接模式、自研发推送轮询模式+第三方推送、第三方推送a+第三方推送b。

其中,系统级推送是指如小米、华为等具有的系统的推送服务,“自研发”是指用户自行研发的推送技术,第三方推送服务为市面上他人提供的推送服务,如信鸽推送、极光推送、友盟推送等,组合推送方案用于在单一推送方式推送到达率不满足要求时可以尝试采用两种或更多种推送服务叠加(即同时使用)的组合推送方案,以提高推送到达率。

预设的推送方案数量越多越好,以提供广泛的选择性。例如可以采用下表的预设推送方案:

步骤102:将选取出的推送方案下发至所述待优化的机型以进行执行。

本实施例中,首先按照预设的多个推送方案对待优化的机型进行测试,选取出消息推送到达率最高的推送方案,然后将选取出的推送方案下发至所述待优化的机型以进行执行。由于选取出了消息推送到达率最高的推送方案提供给待优化的机型使用,故本实施例能够提高消息推送到达率。本实施例适用于对消息推送到达率有一定要求的行业如快递行业等。

在进一步的实施例中,如图2所示,上述步骤101包括:

步骤1011:判断所述待优化的机型是否支持系统级推送服务,如果是则测试其采用系统级推送服务时的消息推送到达率,如果消息推送到达率超过预设到达率阈值,则将系统级推送作为所述选取出的推送方案,如果不支持系统级推送服务或消息推送到达率未超过预设到达率阈值,则执行下一步骤;

本步骤中,首先判断移动端系统是否支持系统级推送服务,并开始测试其推送到达率,若高达99.9%(通常系统级推送宣称的到达率),则该设备到达率已达最优,此时可以直接将系统级推送作为所述选取出的推送方案。预设到达率阈值可以根据实际需要灵活设定,例如设为90%、80%、50%等所期望的数值。

步骤1012:按照预设顺序从所述预设的多个推送方案中选择除系统级推送和已进行过abtest测试的推送方案外的两个推送方案,对多种不同机型进行abtest测试,得到测试结果,并将所述两个推送方案中测试结果高的推送方案下发到所述待优化的机型进行测试,其中所述多种不同机型包括所述待优化的机型;

本步骤中,当移动端系统不支持系统级推送服务,则触发本步骤的推送配置决策,从预设的推送方案中选择优先级最高的推送方案(例如:手动配置自研发推送服务轮询+长连接组合优先级最高),和优先级次高的推送方案(例如:手动配置第三方推送服务“信鸽”优先级次高)进行不同机群,不同时段的abtest,并获取手机测试数据;得到测试结果后,选择高的结果下发到待优化的机型,并测试更大数据量的结果。

abtest测试举例:同时在同一种机型群体上在日级别的同一时间段上使用不同的推送服务,如本周周一到周五,使用a推送,则下周周一到周五对同一用户群使用b。收集其效果数据,以综合到达率为准确定ab哪个优先使用。

步骤1013:判断所述待优化的机型的消息推送到达率是否超过预设到达率阈值,如果是,则将所述测试结果高的推送方案作为所述选取出的推送方案,否则,转至上一步骤。

本步骤中,若得到的结果不符合期望数值(例如预设到达率阈值为45%),则继续在方案列表中选择优先级更低的方案进行比较,直至选择到高于期望数值的推送方案,并可以将该方案提高优先级列表,并将结论上报给技术人员。若最终所有方案都不符合期望,则可以选择表现最好的方案,并通知技术人员。

这样,通过对预设的多种推送方案进行测试,可以选取出消息推送到达率最高的推送方案。

众所周知,android客户端手机在运行中的环境是非常复杂的。有网络、电量、权限配置、内存情况、cpu压力等等影响因素。对于哪些数据该要,哪些数据不该要的决策至关重要。经不断的尝试发现,主要影响推送到达率的因素是(1)自研推送服务的存活,(2)是否有系统级推送服的支持。而影响(1)的因素有电量(低电量系统自动关闭后台服务),内存(低内存系统自动关系后台服务),网络(网络不可达导致消息不可达),用户权限(是否同意服务在后台运行)。

故,为了增加推送方案决策的准确性,上述步骤1012可以包括:

步骤10121:获取所述待优化的机型在所述测试结果高的推送方案下的测试数据,其中,所述测试数据包含:

1)移动设备唯一标志

2)设备型号

3)系统版本

4)定制化的系统类型、定制化版本

5)到达后电量、未到达时电量(估算得来)

6)未到达时网络延时、已到达时网络延时

7)该设备的推送到达率。

注1:估算电量方法,客户端获取手机的充电状态,以时间维度判断当时的电量,例:若10:00到达一次,电量为90%,10:45未到达,11:15到达了一次,电量为75%,故可大致估算未到达时电量在75~90%之间,若此间有充电,则缩短电量百分比范围。

注2:未到达时的指标数据可收集在手机存储,待网络情况优时上传。

步骤10122:对所述测试数据进行聚类分析,以对推送方案的选择进行决策。

本步骤中,将所述测试数据进行综合处理,获得对于该设备和该类型设备的整体到达率、以及该类型设备的各类信息,以便于分析,具体可以进行聚类分析(即按类排序,例如根据机型和系统版本),以对所述待优化的机型的推送方案选择进行决策。

测试数据聚类分析具体处理方案:

测试数据以移动设备唯一标志进行存储,包含上述所有字段,并新增统计时间段(time)字段。

将网络情况划分为未到达时和已到达时网络延时,并进行区间划分,5000ms以上为弱网,5000ms以下为网络情况正常,无延时数据则为无网情况;

将电量划分为未到达时和已到达时低电量、非低电量、充电中,并且百分之二十以下为低电量,百分之二十以上为电量正常,且区分用户是否开启省电模式。

将内存情况区分为手机系统提供的正常和低内存两种。

存储手机中安装的所有软件。

该手机的推送到达率。

该手机的当前使用的推送方案(系统,自研,组合,gcm等等)

例如:以机型维度将所有机型分为各个厂商定制的系统(如小米、华为、魅族)。对于不同的机型进行单独处理和决策,如果发现当前推送方案对电量和内存产生巨大影响以至于让用户无法使用手机,则不选择当前推送方案,进行下一推送方案的abtest测试和选择。

而其余数据,交由最终决策不理想时,技术人员手动干预使用。

以上实施例中,优选的,当选取出的推送方案为组合推送方案时,所述消息中包含唯一性标志(该标志确保消息的唯一性),以使客户端收到不同服务推送而来的消息时,通过所述唯一性标志过滤掉重复的消息。这样,可以保证用户仅收到一次消息,避免重复收到同一条消息影响用户体验。

具体的,客户端可以存储已通知过的消息的唯一性标志,并记录用户是否有效处理,在收到由不同服务推送而来的同一内容的消息时,以时间先后为依据,显示最先到达的消息。其余的消息废弃。若到达时间差距较大,则根据用户是否有效处理来决定是否显示已显示过的消息,若用户未阅读该消息,则不继续展示重复消息。

综上,在实际应用中,上述技术方案能够有效解决不断优化择优的推送优化,并且应对新的机型面世,也可在多次比较中选择最优化的方案运行。并且在样本和方案积累足够全面的情况下,可节省大量技术人员的人力资源。

而对于行业的有益效果:

1、获取大量应用的各种推送服务的表现,有益于向业界输出技术结论和数据。

2、大幅提升产品推送服务综合到达率以提升产品使用者工作效率。

3、获取快递行业应用推送服务的使用特点以研究更优产品方案。

图3为本发明的基于android平台客户端消息推送优化装置实施例一的结构示意图,如图3所示,本实施例的装置可以包括:

测试及选取模块31,用于按照预设的多个推送方案对待优化的机型进行测试,选取出消息推送到达率最高的推送方案;

下发模块32,用于将选取出的推送方案下发至所述待优化的机型以进行执行。

本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。

优选的,所述预设的多个推送方案包括以下中的两个以上方案:系统级推送、自研发推送长连接模式、自研发推送轮询模式、第三方推送服务、谷歌推送、组合推送方案;其中,所述组合推送方案包括以下至少一种:自研发推送轮询模式+长连接模式、自研发推送轮询模式+第三方推送、第三方推送a+第三方推送b。

图4为在图3实施例的基础上改进得到的实施例,如图4所示,所述测试及选取模块31包括:

第一判断子模块311,用于判断所述待优化的机型是否支持系统级推送服务,如果是则测试其采用系统级推送服务时的消息推送到达率,如果消息推送到达率超过预设到达率阈值,则将系统级推送作为所述选取出的推送方案,如果不支持系统级推送服务或消息推送到达率未超过预设到达率阈值,则转至测试子模块312;

测试子模块312,用于按照预设顺序从所述预设的多个推送方案中选择除系统级推送和已进行过abtest测试的推送方案外的两个推送方案,对多种不同机型进行abtest测试,得到测试结果,并将所述两个推送方案中测试结果高的推送方案下发到所述待优化的机型进行测试,其中所述多种不同机型包括所述待优化的机型;

第二判断子模块313,用于判断所述待优化的机型的消息推送到达率是否超过预设到达率阈值,如果是,则将所述测试结果高的推送方案作为所述选取出的推送方案,否则,转至测试子模块312。

本实施例的装置,可以用于执行图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。

优选的,所述测试子模块312,包括:

获取子模块,用于获取所述待优化的机型在所述测试结果高的推送方案下的测试数据,其中,所述测试数据包含移动设备唯一标志、设备型号、系统版本、定制化的系统类型、定制化版本、到达后电量、未到达时电量、未到达时网络延时、已到达时网络延时、该设备的推送到达率;

分析子模块,用于对所述测试数据进行聚类分析,以对推送方案的选择进行决策。

优选的,所述分析子模块包括:

划分子模块,用于将网络情况进行区间划分,5000ms以上为弱网,5000ms以下为网络情况正常,无延时数据则为无网情况;将电量划分为低电量、非低电量、充电中,其中百分之二十以下为低电量,百分之二十以上为电量正常,且区分用户是否开启省电模式;将内存情况区分为手机系统提供的正常和低内存两种;

选择子模块,用于如果发现当前推送方案对电量和内存产生巨大影响以至于让用户无法使用手机,则不选择当前推送方案,进行下一推送方案的abtest测试和选择。

优选的,当选取出的推送方案为组合推送方案时,所述消息中包含唯一性标志,以使客户端收到不同服务推送而来的消息时,通过所述唯一性标志过滤掉重复的消息。这样,可以保证用户仅收到一次消息,避免重复收到同一条消息影响用户体验。

本发明实施例还提供一种电子设备,如图5所示,可以实现本发明图1-2所示方法实施例的流程,该电子设备包括:壳体41、处理器42、存储器43、电路板44和电源电路45,其中,电路板44安置在壳体41围成的空间内部,处理器42和存储器43设置在电路板44上;电源电路45,用于为上述电子设备的各个电路或器件供电;存储器43用于存储可执行程序代码;处理器42通过读取存储器43中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一方法实施例所述的方法。

处理器42对上述步骤的具体执行过程以及处理器42通过运行可执行程序代码来进一步执行的步骤,可以参见本发明图1-2所示方法实施例的描述,在此不再赘述。

该电子设备以多种形式存在,包括但不限于:

(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iphone)、多媒体手机、功能性手机,以及低端手机等。

(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:pda、mid和umpc设备等,例如ipad。

(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如ipod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。

(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(5)其他具有数据交互功能的电子设备。

本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一方法实施例所述的方法步骤。

本发明的实施例还提供一种应用程序,所述应用程序被执行以实现本发明任一方法实施例提供的方法。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。为了描述的方便,描述以上装置是以功能分为各种单元/模块分别描述。当然,在实施本发明时可以把各单元/模块的功能在同一个或多个软件和/或硬件中实现。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1