应用程序发布版本监控方法与监控装置与流程

文档序号:12182452阅读:508来源:国知局
应用程序发布版本监控方法与监控装置与流程

本发明涉及通信领域,尤其涉及应用程序发布版本监控方法与监控装置。



背景技术:

为了给用户提供最新的体验和在线服务,应用程序(Application,APP)开发者需要不断地更新APP的版本并进行发布。而且,很多APP的开发公司为了对APP进行大范围的推广,通常会选在大量的推广渠道(如,应用宝、百度应用市场等)进行版本发布和更新,然而,各渠道对APP的版本发布效率并不一致,会导致应用程序在各个不同发布渠道所发布的APP版本不一致的问题,因此,需要对APP在各渠道的版本发布数据进行监控和统计。

目前,一种APP监控方式为:在为渠道定制的APP渠道包中可以附带独立的渠道标签,在APP被用户安装之后,APP会通过该渠道标签上报数据,监控装置根据上报的数据统计各渠道中APP的相关信息,例如查看APP在每个渠道的版本发布数据,或,统计每个版本的APP在各渠道的发布数据等。若发现APP在各个渠道发布的版本不一致,则会通知开发人员处理。

然而,在实际应用中,由于各渠道之间竞争比较激烈,经常发送以下情况:某渠道A会从其他渠道B抓取版本更高的APP(渠道标签为B),虽然用户是从渠道A下载的该APP,然而,其上报数据显示的渠道标签为B,因为监控数据源的错误,会导致监控装置得不到渠道A中APP的正确的版本发布信息。并且,即使发现各渠道版本不一致,还需要通知开发人员处理,导致处理效率较低。



技术实现要素:

本发明实施例提供了应用程序发布版本监控方法与监控装置,用于更准确的监控APP在各个渠道版本发布数据,并自动解决各渠道APP版本不一致的问题。

一种应用程序发布版本监控方法,包括:

从预置渠道的APP下载页面抓取并解析预置APP的发布数据,所述发布数据包括APP的当前版本数据,所述预置渠道包括至少两个渠道,所述预置APP包括至少一个APP;

根据所述发布数据,确定所述预置APP的版本统计数据,所述版本统计数据包括所述预置APP在所述预置渠道中各渠道的当前版本,以及所述预置APP的最新版本;

当第一渠道中第一APP的当前版本与所述第一APP的最新版本不同时,将最新版本的第一APP上传到所述第一渠道,其中,所述第一渠道为所述预置渠道中的一个,所述第一APP为所述预置APP中的一个。

一种监控装置,所述装置包括:

抓取模块,用于从预置渠道的APP下载页面抓取并解析预置APP的发布数据,所述发布数据包括APP的当前版本数据,所述预置渠道包括至少两个渠道,所述预置APP包括至少一个APP;

第一确定模块,用于根据所述发布数据,确定所述预置APP的版本统计数据,所述版本统计数据包括所述预置APP在所述预置渠道中各渠道的当前版本,以及所述预置APP的最新版本;

上传模块,用于当第一渠道中第一APP的当前版本与所述第一APP的最新版本不同时,将最新版本的第一APP上传到所述第一渠道,其中,所述第一渠道为所述预置渠道中的一个,所述第一APP为所述预置APP中的一个。

从以上技术方案可以看出,本发明实施例具有以下优点:本发明实施例中,监控装置主动通过预置渠道的APP下载页面抓取并解析预置APP的发布数据,不需要通过APP上报的数据来进行数据处理,保证了数据源的准确性,根据包括有APP的当前版本的发布数据,监控装置确定该预置APP的版本统计数据,其中包括有该预置APP在预置渠道中各渠道的当前版本,以及该预置APP的最新版本,根据更准确的数据源得到了APP在各渠道的版本发布数据,然后,再对比各渠道中第一APP的当前版本是否为该最新版本,将最新版本的该第一APP上传到当前版本不是最新版本的渠道,保证了各预置渠道中APP版本的一致性,在更准确的监控APP在各个渠道版本发布数据的同时,自动解决了各渠道APP版本不一致的问题。

附图说明

图1为本发明实施例中应用程序发布版本监控方法一个流程示意图;

图2为本发明实施例中应用程序发布版本监控方法另一个流程示意图;

图3为本发明实施例中监控装置一个结构示意图;

图4为本发明实施例中监控装置另一个结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

可以理解的是,本发明实施例中术语“发布版本不一致”表示在各个不同的发布渠道所发布的APP版本不一致。

请参阅图1,本发明实施例中应用程序发布版本监控方法一个实施例包括:

101、从预置渠道的APP下载页面抓取并解析预置APP的发布数据;

其中,所述发布数据包括APP的当前版本数据,所述预置渠道包括至少两个渠道,所述预置APP包括至少一个APP;

可以理解的是,该预置渠道可以为预先设置的需要监控的渠道,该预置APP可以包括用户自己开发的APP,也可以包括其他开发者开发的竞品APP,此处不作限定。

102、根据所述发布数据,确定所述预置APP的版本统计数据;

其中,所述版本统计数据包括所述预置APP在所述预置渠道中各渠道的当前版本,以及所述预置APP的最新版本;

监控装置得到各预置渠道下预置APP的发布数据后,可以统计得到各APP在各渠道下的版本统计数据,对各渠道下的当前版本进行比较后,可以确定各APP的最新版本。

103、当第一渠道中第一APP的当前版本与所述第一APP的最新版本不 同时,将最新版本的第一APP上传到所述第一渠道。

其中,所述第一渠道为所述预置渠道中的一个,所述第一APP为所述预置APP中的一个。

监控装置确定各APP的最新版本,以及在各渠道下的当前版本后,依次对比各渠道的当前版本是否为该最新版本,若是,则对比下一个,直到预置渠道中所有渠道对比完成;若不是最新版本,则将相应的最新版本的APP上传到该渠道,最终使得预置渠道中所有渠道的APP版本都统一成该最新版本。

本发明实施例中,监控装置主动通过预置渠道的APP下载页面抓取并解析预置APP的发布数据,不需要通过APP上报的数据来进行数据处理,保证了数据源的准确性,根据包括有APP的当前版本的发布数据,监控装置确定该预置APP的版本统计数据,其中包括有该预置APP在预置渠道中各渠道的当前版本,以及该预置APP的最新版本,根据更准确的数据源得到了APP在各渠道的版本发布数据,然后,再对比各渠道中第一APP的当前版本是否为该最新版本,将最新版本的该第一APP上传到当前版本不是最新版本的渠道,保证了各预置渠道中APP版本的一致性,在更准确的监控APP在各个渠道版本发布数据的同时,自动解决了各渠道APP版本不一致的问题。

上面实施例中,发布数据中包括APP的当前版本数据,根据该发布数据确定APP的版本统计数据,在实际应用中,该发布数据中还可以包括更多其他的数据,根据该发布数据还可以统计出更多其他的信息;此外,上面实施例中将最新版本的第一APP上传到所述第一渠道,在实际应用中,根据不同的情况,可以有多种上传的方式,下面对本发明实施例中应用程序发布版本监控方法进行具体描述:

请参阅图2,本发明实施例中应用程序发布版本监控方法另一个实施例包括:

201、从预置渠道的APP下载页面抓取并解析预置APP的发布数据;

其中,所述发布数据包括APP的当前版本数据,所述预置渠道包括至少两个渠道,所述预置APP包括至少一个APP;所述发布数据还包括:APP编译时间和版本更新时间,以及上一版本发布时间;

具体的,监控装置可以依次对预置渠道中的各渠道进行抓取,例如采用 如下步骤:

1、获取发布渠道列表,该发布渠道列表中包括预置渠道,记为List;

2、设置List(0)为当前抓取渠道;

3、抓取并解析当前渠道预置APP的发布数据;

4、与上次抓取的结果进行对比;

5、确定该渠道的版本是否有更新;

6、若有更新,保存该渠道的新版本数据,触发步骤8;

7、如没有更新,直接触发步骤8;

8、确定List中的渠道是否已遍历结束;

9、若结束,则暂停抓取;

10、若没有结束,则获取下一个渠道作为当前抓取渠道,触发步骤3。

在实际应用中,步骤201之前,监控装置可以先配置该预置渠道,该预置APP,该预置APP的描述页或接口页、抓取类的路径,解析类的路径以及目标字段匹配规则等,则,从预置渠道的APP下载页面抓取并解析预置APP的发布数据,具体过程可以为:根据所述抓取类的路径动态加载抓取类,抓取得到所述预置渠道的所述预置APP的描述页或接口页的返回数据;根据所述解析类的路径解析所述返回数据,得到目标字段;按照所述目标字段匹配规则解析所述目标字段,得到所述预置APP的发布数据。

可以理解的是,由于解析类和目标解析字段都可以动态配置,因此可以进行快速扩展以支持对其他数据的监控,例如APP依赖的SDK、开发工具、APP下载量、用户评论数据等。

202、根据所述发布数据,确定所述预置APP的版本统计数据;

其中,所述版本统计数据包括所述预置APP在所述预置渠道中各渠道的当前版本,以及所述预置APP的最新版本;

与步骤102类似,此处不作限定。

203、根据所述发布数据,确定所述预置APP在所述预置渠道的各个渠道中的版本发布耗时和版本更新周期;

其中,所述版本发布耗时为所述版本更新时间与所述APP编译时间的差值,所述版本更新周期为所述版本更新时间与所述上一版本发布时间的差值。

可以理解的是,在实际应用中,监控装置可以以表格或其他方式将各APP的版本统计数据、版本发布耗时、版本更新周期等展示给用户。

在实际应用中,监控装置还可以获取各APP在每个渠道的历史版本的发布效率、更新周期等数据,进而评估出每个渠道的平均发布效率和平均发布周期等关键数据。

204、当第一渠道中第一APP的当前版本与所述第一APP的最新版本不同时,将最新版本的第一APP上传到所述第一渠道。

其中,所述第一渠道为所述预置渠道中的一个,所述第一APP为所述预置APP中的一个。

可以理解的是,步骤204中,监控装置可以仅对预置APP中预先指定的APP(例如用户自己拥有的APP)进行检查,而不对预置APP中的竞品APP进行检查。

具体的,监测装置可以依次对比预先制定的APP中的每个APP在每个渠道的版本是否为最新版本,例如采用如下步骤:

1、设置第一APP为当前检查APP;

2、设置List(0)为当前检查渠道;

2、确定第一APP在List(0)的版本是否为最新版本;

3、当确定不是最新版本时,将最新版本的第一APP上传到List(0),然后触发步骤4;

4、获取下一个渠道最为当前检查渠道,触发步骤2。

5、当确定是最新版本时,确定List中的渠道是否遍历结束;

6、当确定遍历未结束时,触发步骤4;

7、当确定遍历结束时,选择设置下一个APP为当前检测APP,触发步骤2,直到预先制定的APP检测完毕。

可以理解的是,检测到不是最新版本时,还可以将监控数据发送给对应的开发人员。

需要说明的是,根据不同的情况,将最新版本的第一APP上传到所述第一渠道可以有多种方式:

可选的,若该第一APP在编译平台上有源程序,则当确定第一渠道中第 一APP的当前版本与所述第一APP的最新版本不同时,监控设备可以查找该最新版本的第一APP对应的源程序,根据该源程序,自动编译最新版本的第一APP,然后将编译完成的最新版本的第一APP上传到所述第一渠道。可选的,在实际应用中,编译过程中可以在该最新版本的第一APP中携带第一渠道的标识,也可以不携带,此处不作限定。

可选的,若该第一APP在编译平台上没有源程序,则当确定第一渠道中第一APP的当前版本与所述第一APP的最新版本不同时,监控设备从有最新版本的第一APP的渠道,下载该最新版本的第一APP,然后将下载的该最新版本的第一APP上传到该第一渠道。

根据实际情况,还可以有其他上传最新版本的第一APP到该第一渠道的方式,此处不作限定。

可以理解的是,由于移动端的APP一般分为Android、iOS和Winphone等不同的类型,不同类型APP的版本信息没有可比性,因此即使具有相同的名称,在本发明实施例中也将不同类型的APP作为相互不同的APP,在步骤201中进行发布数据抓取时可进行区分。

本发明实施例中,能够对预置渠道,该预置APP,该预置APP的描述页或接口页、抓取类的路径,解析类的路径以及目标字段匹配规则等进行动态配置,使得监控装置能快速支持监控同类竞品APP的版本更新周期、发布效率等数据,同时,能够确定各个渠道的发布效率(发布耗时)、发布周期等数据,使得用户能更好的比较各渠道的优劣。

为便于理解,下面以一具体应用场景对本发明实施例中应用程序发布版本监控方法进行具体描述:

开发者自己开发了应用程序A,将该应用程序A在渠道1,渠道2和渠道3这三个渠道发布,该应用程序A的竞品应用程序B也在这三个渠道有发布;

监控装置配置应用程序A和B分别在渠道1、2和3的描述页和接口页、抓取类的路径、解析类的路径以及目标字段匹配规则,抓取并解析应用程序A和B在这三个渠道中的发布数据,包括:当前版本数据,编译时间,版本更新时间,上一版本发布时间等;

监控装置根据该发布数据,分别确定应用程序A和B的版本统计数据、版本发布耗时和版本更新周期等信息;

例如,确定的应用程序A的信息如下表1所示:

表1

其中,版本发布耗时=版本更新时间-编译时间;

版本更新周期=版本更新时间-上一版本发布时间。

根据上述信息,监控装置可以确定应用程序的最新版本V3;

监控装置可以确定竞品APP的上述信息作为参考;

对于应用程序A,监控装置依次选择渠道1,渠道2和渠道3,对比其中应用程序A的当前版本是否为最新版本V3,监控装置确定渠道1和渠道3中的当前版本不是最新版本V3,由于该应用程序为开发者自己开发,监控装置中的编译平台上存储有该应用程序的最新版本V3的源程序,则,该监控装置根据该源程序,重新编译版本为最新版本V3的应用程序A,并在其中分别携带渠道1和渠道3的标识,编译完成之后,分别上传至渠道1和渠道3,使得渠道1、渠道2和渠道3中应用程序A的版本都统一成为最新版本V3。

下面对本发明实施例中的监控装置进行描述:

请参阅图3,本发明实施例中监控装置一个实施例包括:

抓取模块301,用于从预置渠道的APP下载页面抓取并解析预置APP的发布数据,所述发布数据包括APP的当前版本数据,所述预置渠道包括至少两个渠道,所述预置APP包括至少一个APP;

第一确定模块302,用于根据所述发布数据,确定所述预置APP的版本统计数据,所述版本统计数据包括所述预置APP在所述预置渠道中各渠道的当前版本,以及所述预置APP的最新版本;

上传模块303,用于当第一渠道中第一APP的当前版本与所述第一APP 的最新版本不同时,将最新版本的第一APP上传到所述第一渠道,其中,所述第一渠道为所述预置渠道中的一个,所述第一APP为所述预置APP中的一个。

本发明实施例中,抓取模块301主动通过预置渠道的APP下载页面抓取并解析预置APP的发布数据,不需要通过APP上报的数据来进行数据处理,保证了数据源的准确性,根据包括有APP的当前版本的发布数据,第一确定模块302确定该预置APP的版本统计数据,其中包括有该预置APP在预置渠道中各渠道的当前版本,以及该预置APP的最新版本,根据更准确的数据源得到了APP在各渠道的版本发布数据,然后,再对比各渠道中第一APP的当前版本是否为该最新版本,上传模块303将最新版本的该第一APP上传到当前版本不是最新版本的渠道,保证了各预置渠道中APP版本的一致性,在更准确的监控APP在各个渠道版本发布数据的同时,自动解决了各渠道APP版本不一致的问题。

上面实施例中,发布数据中包括APP的当前版本数据,第一确定模块302根据该发布数据确定APP的版本统计数据,在实际应用中,该发布数据中还可以包括更多其他的数据,监控装置根据该发布数据还可以统计出更多其他的信息;此外,上面实施例中将最新版本的第一APP上传到所述第一渠道,在实际应用中,根据不同的情况,可以有多种上传的方式,下面对本发明实施例中监控装置进行具体描述:

请参阅图4,本发明实施例中监控装置另一个实施例包括:

抓取模块401,用于从预置渠道的APP下载页面抓取并解析预置APP的发布数据,所述发布数据包括APP的当前版本数据,所述预置渠道包括至少两个渠道,所述预置APP包括至少一个APP;

第一确定模块402,用于根据所述发布数据,确定所述预置APP的版本统计数据,所述版本统计数据包括所述预置APP在所述预置渠道中各渠道的当前版本,以及所述预置APP的最新版本;

上传模块403,用于当第一渠道中第一APP的当前版本与所述第一APP的最新版本不同时,将最新版本的第一APP上传到所述第一渠道,其中,所述第一渠道为所述预置渠道中的一个,所述第一APP为所述预置APP中的一 个;

可选的,本实施例中,所述发布数据还包括APP编译时间和版本更新时间,以及上一版本发布时间;

该监控装置还可以包括:

第二确定模块404,用于根据所述发布数据,确定所述预置APP在所述预置渠道的各个渠道中的版本发布耗时和版本更新周期,其中,所述版本发布耗时为所述版本更新时间与所述APP编译时间的差值,所述版本更新周期为所述版本更新时间与所述上一版本发布时间的差值;

可选的,上述上传模块403具体可以包括:

查找单元,用于当第一渠道中第一APP的当前版本与所述第一APP的最新版本不同时,查找所述最新版本的第一APP对应的源程序,其中,所述第一渠道为所述预置渠道中的一个,所述第一APP为所述预置APP中的一个;

编译单元,用于根据所述源程序,自动编译携带有所述第一渠道的标识的最新版本的第一APP;

第一上传单元,用于将所述携带有所述第一渠道的标识的最新版本的第一APP上传到所述第一渠道;

可选的,上述上传模块403具体可以包括:

下载单元,用于下载所述最新版本的第一APP;

第二上传单元,用于将下载的所述最新版本的第一APP上传到所述第一渠道;

可选的,该监控装置还可以包括:

配置模块405,用于配置所述预置渠道,所述预置APP,所述预置APP的描述页或接口页、抓取类的路径,解析类的路径以及目标字段匹配规则;

所述抓取模块401具体包括:

抓取单元4011,用于根据所述抓取类的路径动态加载抓取类,抓取得到所述预置渠道的所述预置APP的描述页或接口页的返回数据;

数据解析单元4012,用于根据所述解析类的路径解析所述返回数据,得到目标字段;

字段解析单元4013,用于按照所述目标字段匹配规则解析所述目标字段, 得到所述预置APP的发布数据。

本发明实施例中,配置模块405能够对预置渠道,该预置APP,该预置APP的描述页或接口页、抓取类的路径,解析类的路径以及目标字段匹配规则等进行动态配置,使得监控装置能快速支持监控同类竞品APP的版本更新周期、发布效率等数据,同时,第二确定模块404能够确定各个渠道的发布效率(发布耗时)、发布周期等数据,使得用户能更好的比较各渠道的优劣。

为了便于理解上述实施例,下面以上述监控装置各个模块在一个具体应用场景中的交互过程进行说明:

开发者自己开发了应用程序A,将该应用程序A在渠道1,渠道2和渠道3这三个渠道发布,该应用程序A的竞品应用程序B也在这三个渠道有发布;

配置模块405配置应用程序A和B分别在渠道1、2和3的描述页和接口页、抓取类的路径、解析类的路径以及目标字段匹配规则,抓取模块401抓取并解析应用程序A和B在这三个渠道中的发布数据,包括:当前版本数据,编译时间,版本更新时间,上一版本发布时间等;

第一确定模块402和第二确定模块404根据该发布数据,分别确定应用程序A和B的版本统计数据、版本发布耗时和版本更新周期等信息;

例如,确定的应用程序A的信息如上表1所示;

根据上述信息,第一确定模块402可以确定应用程序的最新版本V3;

第一确定模块402和第二确定模块404可以确定竞品APP的上述信息作为参考;

对于应用程序A,上传模块403依次选择渠道1,渠道2和渠道3,对比其中应用程序A的当前版本是否为最新版本V3,上传模块403确定渠道1和渠道3中的当前版本不是最新版本V3,由于该应用程序为开发者自己开发,监控装置中的编译平台上存储有该应用程序的最新版本V3的源程序,则,查找单元查找到该源程序,编译单元根据该源程序,重新编译版本为最新版本V3的应用程序A,并在其中分别携带渠道1和渠道3的标识,编译完成之后,第一上传单元分别上传至渠道1和渠道3,使得渠道1、渠道2和渠道3中应用程序A的版本都统一成为最新版本V3。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应 当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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