CN108132808A - 一种渠道包生成方法及装置 - Google Patents

一种渠道包生成方法及装置 Download PDF

Info

Publication number
CN108132808A
CN108132808A CN201611095833.6A CN201611095833A CN108132808A CN 108132808 A CN108132808 A CN 108132808A CN 201611095833 A CN201611095833 A CN 201611095833A CN 108132808 A CN108132808 A CN 108132808A
Authority
CN
China
Prior art keywords
packet
application program
target
channel
target channel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201611095833.6A
Other languages
English (en)
Other versions
CN108132808B (zh
Inventor
丁赞
邓龙光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd, Beijing Kingsoft Cloud Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN201611095833.6A priority Critical patent/CN108132808B/zh
Publication of CN108132808A publication Critical patent/CN108132808A/zh
Application granted granted Critical
Publication of CN108132808B publication Critical patent/CN108132808B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/73Program documentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例公开了一种渠道包生成方法及装置,该方法包括:获得原始应用程序包;确定所述原始应用程序包的目标开发平台、目标开发引擎以及所述原始应用程序包所要接入的目标渠道;根据所述目标开发平台和所述目标开发引擎,在所述原始应用程序包中嵌入目标功能***,获得第一中间应用程序包;在所述第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包,其中,所述连接信息为:用于连接至所述目标功能***的服务器的信息;利用渠道包制作工具,根据所述目标渠道对应的SDK和所述第二中间应用程序包,生成所述目标渠道对应的目标渠道包。应用本发明实施例,可以降低软件开发者制作渠道包的工作量,缩短制作多个渠道包的时间。

Description

一种渠道包生成方法及装置
技术领域
本发明涉及互联网技术领域,特别涉及一种渠道包生成方法及装置。
背景技术
SDK(Software Development Kit,软件开发工具包)是指被软件工程师用于为特定的软件包、软件框架、硬件平台、操作***等建立应用软件的开发工具的集合。每个渠道都会发布自己独特的SDK给软件开发者,当软件开发者开发出一款应用程序并使用特定的渠道进行推广时,软件开发者需要手动在该应用程序的原始包中集成该渠道的SDK,从而将该应用程序的原始包制作成适合该渠道的渠道包,然后将渠道包上传到该渠道,就可以将该应用程序接入到该渠道,通过该渠道进行推广。渠道包,也就是在渠道进行发布的安装包。
通常情况下,为了更好地推广开发出的应用程序,软件开发者会将自己的应用程序通过多个渠道进行推广。这样,软件开发者需要分别在自己的应用程序的原始包中集成不同渠道的SDK,从而制作出不同渠道对应的渠道包。这样,对于每个渠道,软件开发者都需要制作出一个对应的渠道包,由于软件开发者制作渠道包都是人工操作的,因此制作多个渠道包的工作量较大,并且所花费的时间较长。
发明内容
本发明实施例的目的在于提供一种渠道包生成方法及装置,降低软件开发者制作渠道包的工作量,缩短制作多个渠道包的时间。具体技术方案如下:
为达到上述目的,本发明实施例公开了一种渠道包生成方法,所述方法包括步骤:
获得原始应用程序包;
确定所述原始应用程序包的目标开发平台、目标开发引擎以及所述原始应用程序包所要接入的目标渠道;
根据所述目标开发平台和所述目标开发引擎,在所述原始应用程序包中嵌入目标功能***,获得第一中间应用程序包;
在所述第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包,其中,所述连接信息为:用于连接至所述目标功能***的服务器的信息;
利用渠道包制作工具,根据所述目标渠道对应的SDK和所述第二中间应用程序包,生成所述目标渠道对应的目标渠道包。
可选的,所述根据所述目标开发平台和所述目标开发引擎,在所述原始应用程序包中嵌入目标功能***的步骤,包括:
根据所述目标开发平台和所述目标开发引擎,获得目标功能***的目标代码;
将所述目标代码嵌入至所述原始应用程序包中。
可选的,所述连接信息为:根据所述目标功能***的服务器的接口信息生成的信息。
可选的,所述方法还包括:
在生成所述目标渠道包失败时,确定导致生成所述目标渠道包失败的目标原因;
根据预先确定的失败原因与解决方案之间的对应关系和所述目标原因,生成目标解决方案;
根据所述目标解决方案对所述第二中间应用程序包进行修正;
利用所述渠道包制作工具,根据所述目标渠道对应的SDK和修正后的所述第二中间应用程序包,重新生成所述目标渠道包。
可选的,在所述生成所述目标渠道对应的目标渠道包的步骤之后,还包括:
将所述目标渠道包上传到所述目标渠道。
可选的,所述方法还包括:
获得所述目标渠道包在所述目标渠道的表现数据;
基于所获得的表现数据,生成针对所述原始应用程序包对应的程序开发者的渠道推荐信息。
可选的,所述目标功能***包括以下功能***中的至少一种:
账户***、登录***、支付***、社交分享***、消息推送***、广告***、指纹识别***。
为达到上述目的,本发明实施例还公开了一种渠道包生成装置,所述装置包括:
第一获得模块,用于获得原始应用程序包;
第一确定模块,用于确定所述原始应用程序包的目标开发平台、目标开发引擎以及所述原始应用程序包所要接入的目标渠道;
第一嵌入模块,用于根据所述目标开发平台和所述目标开发引擎,在所述原始应用程序包中嵌入目标功能***,获得第一中间应用程序包;
第二嵌入模块,用于在所述第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包,其中,所述连接信息为:用于连接至所述目标功能***的服务器的信息;
第一生成模块,用于利用渠道包制作工具,根据所述目标渠道对应的SDK和所述第二中间应用程序包,生成所述目标渠道对应的目标渠道包。
可选的,所述第一嵌入模块,包括:
获得子模块,用于根据所述目标开发平台和所述目标开发引擎,获得目标功能***的目标代码;
嵌入子模块,用于将所述目标代码嵌入至所述原始应用程序包中。
可选的,所述连接信息为:根据所述目标功能***的服务器的接口信息生成的信息。
可选的,所述装置还包括:
第二确定模块,用于在生成所述目标渠道包失败时,确定导致生成所述目标渠道包失败的目标原因;
第二生成模块,用于根据预先确定的失败原因与解决方案之间的对应关系和所述目标原因,生成目标解决方案;
修正模块,用于根据所述目标解决方案对所述第二中间应用程序包进行修正;
第三生成模块,用于利用所述渠道包制作工具,根据所述目标渠道对应的SDK和修正后的所述第二中间应用程序包,重新生成所述目标渠道包。
可选的,所述装置还包括:
上传模块,用于在所述第一生成模块或所述第三生成模块生成所述目标渠道对应的目标渠道包之后,将所述目标渠道包上传到所述目标渠道。
可选的,所述装置还包括:
第二获得模块,用于获得所述目标渠道包在所述目标渠道的表现数据;
第四生成模块,用于基于所获得的表现数据,生成针对所述原始应用程序包对应的程序开发者的渠道推荐信息。
可选的,所述目标功能***包括以下功能***中的至少一种:
账户***、登录***、支付***、社交分享***、消息推送***、广告***、指纹识别***。
由以上可见,本发明实施例所提供的渠道包生成方法及装置,在获得原始应用程序包后,确定原始应用程序包的目标开发平台、目标开发引擎以及所要接入的目标渠道,根据目标开发平台、目标开发引擎,在原始应用程序包中嵌入目标功能***,获得第一中间应用程序包;在第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包,其中,连接信息为:用于连接至目标功能***的服务器的信息;利用渠道包制作工具,根据目标渠道对应的SDK和第二中间应用程序包,生成目标渠道对应的目标渠道包,其中,渠道包制作工具包含目标渠道对应的SDK。
可见,本发明实施例提供的方案,在对原始应用程序包中嵌入目标功能***,获得第一中间应用程序包,并在第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包之后,基于该第二应用程序包,可以利用渠道包制作工具自动生成多个目标渠道对应的目标渠道包。因此,本方案可以降低软件开发者制作渠道包的工作量,缩短制作多个渠道包的时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种渠道包生成方法的流程示意图;
图2为本发明实施例提供的一种渠道包生成装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面首先对本实施例中涉及到的技术用语进行简单介绍。
应用程序包用于将逻辑相关的PL/SQL块或元素(变量、常量、过程、函数等)组织在一起,作为一个完整的单元存储在数据库中,用包名称来标识应用程序包。应用程序程序包由两部分构成:规范(specification)和主体(body)。应用程序包规范就是包说明,对包的所有部件进行一个简单的声明,其中的函数、过程、变量、常量和游标都是公共的,可以被外界应用程序在执行过程中调用。主体则是函数和存储过程的具体实现。
原始应用程序包,也叫裸包,是指软件开发者开发出的还未接入任何渠道的SDK的纯功能包。
SDK(Software Development Kit,软件开发工具包)一般都是一些软件开发者为特定的软件包、软件框架、硬件平台、操作***等建立应用程序时的开发工具的集合。广义上,SDK可以指包括辅助开发某一类应用程序的相关文档、范例和工具的集合。它可以简单的为某个应用程序设计提供所需的API(Application Programming Interface,应用程序接口)文件。SDK还可以包括示例代码、支持性的技术注解或者其他的为基本参考资料澄清疑点的支持文档。
为解决现有技术问题,本发明实施例提供了一种渠道包生成方法及装置。下面首先对本发明实施例所提供的一种渠道生成方法进行详细说明。
图1为本发明实施例提供的渠道包生成方法的第一种流程示意图,该方法可以包括:
S101,获得原始应用程序包。
可以理解的,应用程序包指具有特定的功能、用来完成特定任务的一个程序或一组程序,例如游戏类、社交类的应用程序包。本实施例中,应用程序包可以为应用于移动终端的应用程序包,也可以为其他类型的应用程序包,本实施例对此不做限定。
S102,确定原始应用程序包的目标开发平台、目标开发引擎以及原始应用程序包所要接入的目标渠道。
开发平台,简单的理解就是:以某种编程语言或者某几种编程语言为基础开发出来的一个软件。而这软件不是一个最终的软件产品,它是一个二次开发软件框架,软件开发者可以在这个产品上进行各种各样的软件产品的开发,并且在这个产品上进行开发的时候,不需要像以往的编程方式那样编写大量的代码,而是只需要进行一些简单的配置,或者是写极少量的代码便可以完成一个软件产品的开发工作。常见的开发平台有IOS(一种属于类Unix的操作***)、Android(一种以Linux与JAVA为基础的开放源代码操作***)、Windows(视窗操作***)等。
开发引擎是一个为运行某一类应用程序的机器设计的能够被机器识别的代码(指令)集合。它像一个发动机,控制着应用程序的运行。以游戏应用程序为例,一个游戏应用程序可以分为开发引擎和游戏资源两大部分。游戏资源包括图象、声音、动画等,,列一个公式就是:游戏=开发引擎(程序代码)+游戏资源(图象,声音,动画等)开发引擎就是按照应用程序的设计要求的顺序调用这些游戏资源。常见的开发引擎有ObjectC、Unity 3D、Cocos2D、Native等,其中,ObjectC可以用于编写iOS操作***的游戏应用程序,Unity 3D、Cocos2D、Native可以用于编写Android操作***的游戏应用程序。
可以理解的,对于一个应用程序来说,它可以有多个不同类型的原始包,其中,每一个原始包都是是基于一个开发引擎开发并应用于一个开发平台上的。以游戏应用软件“开心消消乐”为例,其可以有两种类型的原始包,分别应用于开发平台Android和IOS,其中,应用于开发平台Android的原始包可以是基于开发引擎Cocos 2D开发的,应用于开发平台IOS的原始包可以是基于开发引擎ObjectC开发的。
可以理解的,原始应用程序包的开发平台、开发引擎,可以是由原始应用程序包的开发者提供的,也可以是对原始应用程序包进行检测分析得到的,本实施例对此不做限定。
另外,原始应用程序包所要接入的渠道,也就是要通过哪些渠道来推广该应用程序。渠道拥有海量的用户资源,并服务于应用程序开发者,常见的渠道有金山通行证、安卓市场等。渠道本身聚合了大量的用户,进而形成应用程序推广平台,软件开发者可以将自己的应用程序接入到一渠道,通过该渠道的用户资源向广大用户推广自己的应用程序。
需要说明的是,由于不同的渠道所推广的应用程序的开发平台可能存在差异,因此,在实际应用中,软件开发者可以根据自己的原始应用程序包所应用的开发平台来选择所要接入的渠道。
例如,假定渠道A只能推广Android开发平台的应用程序、渠道B可以推广Android和IOS两种开发平台的应用程序,那么,一个应用于开发平台IOS的应用程序的原始包只能接入渠道B,而一个应用于开发平台Android的应用程序的原始包可以接入渠道A和/或渠道B。
S103,根据目标开发平台和目标开发引擎,在原始应用程序包中嵌入目标功能***,获得第一中间应用程序包。
在实际应用中,目标功能***可以包括以下功能***中的至少一种:
账户***、登录***、支付***、社交分享***、消息推送***、广告***、指纹识别***。
当然,还可以在原始应用程序包中嵌入其他功能***,本实施例只是以上述为例对原始应用程序包中可以嵌入的功能***进行说明,并不对此进行限定。
具体的,根据目标开发平台和目标开发引擎,在原始应用程序包中嵌入目标功能***的步骤,可以包括:
根据目标开发平台和目标开发引擎,获得目标功能***的目标代码;
将目标代码嵌入至原始应用程序包中。
实际应用中,可以将上述每个功能***对应的代码封装起来,只对外提供该功能***所涉及的接口信息,并将所有封装后的代码组成通用的软件开发工具包SDK。
以游戏应用程序的登录***为例,登录***涉及登录接口、进入游戏接口、登出接口等,其中,登录接口用于在登录时调用,将拉起登录界面;进入游戏接口用于在登录成功后正式进入游戏时调用,将进入游戏界面;登出接口用于退出时调用,将退出当前账号的游戏界面。分别将登录***涉及到的每一个接口对应代码封装起来,可以得到登录***对应的软件开发工具。
由前述描述可知,不同的开发平台和开发引擎所对应的原始应用程序包所使用的编程语言是不同的,因此,在封装每个功能***对应的代码时,还需要根据不同的开发平台和开发引擎来分别进行封装,形成不同的开发平台和开发引擎所对应的通用SDK,满足原始应用程序包多样性的需求。
这样,在确定原始应用程序包的开发平台、开发引擎后,可以确定该原始应用程序包对应的通用SDK。从所确定的通用SDK中可以获得要嵌入的功能***对应的目标代码,然后可以将目标代码嵌入至原始应用程序包中。例如,将目标代码对应的文件复制至原始应用程序包中,并在原始应用程序包中嵌入一些代码以调用该目标代码,等等。
S104,在第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包。
其中,连接信息为:用于连接至目标功能***的服务器的信息。
在得到第一中间应用程序包之后,由于在原始应用程序包中嵌入了功能***,而该应用程序在运行的过程中,需要与相应的服务器进行交互才能实现这些功能***的功能,因此,还需要在第一中间应用程序包中嵌入连接信息,用于连接至目标功能***的服务器。
可以理解的,连接信息可以为:根据目标功能***的服务器的接口信息生成的信息。实际应用中,可以将目标功能***的服务器的接口信息封装起来,并将封装后的代码加入到通用的软件开发工具包SDK中。当需要在第一中间应用程序包中嵌入连接信息时,直接调用通用SDK中对应的代码即可。
示例性的,对于一游戏应用程序的登录***,当用户在终端上安装该应用程序后,每次在该游戏对应的客户端进行登录时,该游戏对应的服务器需要验证用户的登录信息,在对用户的登录信息验证通过的情况下,游戏服务器才会允许该用户进入游戏界面进行游戏。因此,需要将该游戏服务器的接口信息嵌入到第一中间应用程序包中,以使得该游戏客户端在运行时可以连接到该游戏服务器进行交互。
进一步的,由于渠道的盈利模式,渠道限定了在游戏的客户端或服务器能够与该渠道的服务器进行交互的情况下,才会允许该游戏应用程序接入到该渠道进行推广。因此,还需要在第一中间应用程序包中嵌入与渠道服务器相关的接口信息。
S105,利用渠道包制作工具,根据目标渠道对应的SDK和第二中间应用程序包,生成目标渠道对应的目标渠道包。
渠道包就是在渠道进行发布的安装包,渠道包制作工具也可以看做是安装包制作工具。安装包制作工具用于将应用程序相关的文件进行打包制作出应用程序安装包。
但是,对于渠道包而言,还需要在第二中间应用程序包的基础上分别集成各个渠道的SDK,才能生成适合各个渠道的不同的渠道包,因此,可以根据各个渠道对应的SDK和第二中间应用程序包,利用渠道包制作工具,自动生成各个渠道对应的渠道包。
实际应用中,可以使用渠道包制作工具一次性生成多个渠道对应的渠道包,也可以每次只生成一个渠道的渠道包,本实施例对此不做限定。
具体的,利用渠道包制作工具,根据渠道对应的SDK和第二中间应用程序包生成渠道包的具体过程可以参照现有技术中利用安装包制作工具制作安装包的过程,在此不做赘述。
需要强调的是,在原始应用程序包中嵌入功能***得到第一中间应用程序包,和在第一中间应用程序包中嵌入连接信息得到第二中间程序包,这两个步骤是需要人工进行操作的。在现有技术中,当原始应用程序包需要接入到的渠道较多时,针对每一渠道,都需要人工将该渠道的SDK接入到原始应用程序包中,这对于软件开发者来说,工作量较大。而应用本实施例的方法,只需要人工进行一次接入操作,即将通用SDK接入到原始应用程序包中得到中间应用程序包,而根据中间应用程序包生成不同渠道包的操作可以由渠道包制作工具自动完成,这样,降低了软件开发者制作渠道包的工作量,缩短了制作多个渠道包的时间。
由上述描述可知,在原始应用程序包中嵌入功能***得到第一中间应用程序包,和在第一中间应用程序包中嵌入连接信息得到第二中间程序包,这两个步骤是由人工操作的,由于人工操作不可避免的会存在一些错误,导致最终生成渠道包失败。
鉴于此,本实施例所提供的渠道包生成方法,还可以包括:
在生成目标渠道包失败时,确定导致生成目标渠道包失败的目标原因;
根据预先确定的失败原因与解决方案之间的对应关系和目标原因,生成目标解决方案;
根据目标解决方案对第二中间应用程序包进行修正;
利用渠道包制作工具,根据目标渠道对应的SDK和修正后的第二中间应用程序包,重新生成所述目标渠道包。
示例性的,渠道A要求接入的通用SDK中某一参数android:targetSdkVersion的字节个数不能超过20,那么当第二中间程序包中的该参数的字节个数设置为超过20的某一数值时,将会导致生成渠道A的渠道包失败。渠道包制作工具可以将错误原因提示给应用程序开发者,以便于开发者根据该错误原因确定解决方案,并根据解决方案对第二中间程序包进行修正,将第二中间程序包中的该参数android:targetSdkVersion的字节个数设置为不超过20的数值。然后,利用渠道包制作工具,根据该渠道A对应的SDK和修正后的第二中间应用程序包,重新生成渠道A对应的渠道包。
实际应用中,在生成目标渠道对应的目标渠道包的之后,还可以将该目标渠道包上传到目标渠道,以通过目标渠道对应用程序进行推广。
具体的,将渠道包上传到渠道的方法可以参照现有技术,在此不做赘述。
在渠道包上传到渠道之后,该渠道包制作方法还可以包括:
获得目标渠道包在目标渠道的表现数据;
基于所获得的表现数据,生成针对原始应用程序包对应的程序开发者的渠道推荐信息。
当渠道包上传到渠道后,该渠道包可以被该渠道的用户下载和使用。渠道包在渠道的表现数据可以为:该渠道包的点击量、下载量、使用该应用程序的设备数量、登陆该应用程序的用户账号数量、付费金额、付费次数、付费的用户账号数量,等等。
在获取到渠道包在渠道的表现数据后,可以根据预设的数据分析算法模型,生成针对原始应用程序包对应的程序开发者的渠道推荐信息,例如,给程序开发者提供效益最大化的应用程序推广方案和广告推广方案。
例如,利用同一原始应用程序包对应的各个渠道包在各个渠道的表现数据,可以分析得到该原始应用程序包在各个渠道上的推广效果,则该原始应用程序包对应的程序开发者在需要推广相同类型的其他应用程序时,可以在效果好的渠道上进行推广这个应用程序或投放这个应用程序的广告,而不在效果差的渠道商上进行推广或投放。
又如,根据不同原始应用程序包对应的渠道包在同一渠道的表现数据,可以分析得到不同原始应用程序包在该渠道上的推广效果,进而可以判断出何种类型的应用程序在该渠道上的推广效果较好,则程序开发者可以优先选择在该渠道上推广这种类型的应用程序、或投放这种类型的应用程序的广告。
由以上可知,本实施例所提供的渠道包生成方法,在获得原始应用程序包后,确定原始应用程序包的目标开发平台、目标开发引擎以及所要接入的目标渠道,根据目标开发平台、目标开发引擎,在原始应用程序包中嵌入目标功能***,获得第一中间应用程序包;在第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包,其中,连接信息为:用于连接至目标功能***的服务器的信息;利用渠道包制作工具,根据目标渠道对应的SDK和第二中间应用程序包,生成目标渠道对应的目标渠道包,其中,渠道包制作工具包含目标渠道对应的SDK。
可见,本实施例提供的方案,在对原始应用程序包中嵌入目标功能***,获得第一中间应用程序包,并在第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包之后,基于该第二应用程序包,可以利用渠道包制作工具自动生成多个目标渠道对应的目标渠道包。因此,本实施例可以降低软件开发者制作渠道包的工作量,缩短制作多个渠道包的时间。
与上述的渠道包生成方法相对应,本发明实施例还提供了一种渠道包生成装置。
与图1所示的方法实施例相对应,图2为本发明实施例提供的一种渠道包生成装置的结构示意图,该装置可以包括:
第一获得模块201,用于获得原始应用程序包;
第一确定模块202,用于确定所述原始应用程序包的目标开发平台、目标开发引擎以及所述原始应用程序包所要接入的目标渠道;
第一嵌入模块203,用于根据所述目标开发平台和所述目标开发引擎,在所述原始应用程序包中嵌入目标功能***,获得第一中间应用程序包;
第二嵌入模块204,用于在所述第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包,其中,所述连接信息为:用于连接至所述目标功能***的服务器的信息;
第一生成模块205,用于利用渠道包制作工具,根据所述目标渠道对应的SDK和所述第二中间应用程序包,生成所述目标渠道对应的目标渠道包。
具体的,所述第一嵌入模块203,可以包括:
获得子模块(图中未示出),用于根据所述目标开发平台和所述目标开发引擎,获得目标功能***的目标代码;
嵌入子模块(图中未示出),用于将所述目标代码嵌入至所述原始应用程序包中。
实际应用中,所述连接信息为:根据所述目标功能***的服务器的接口信息生成的信息。
具体的,所述装置还可以包括:
第二确定模块(图中未示出),用于在生成所述目标渠道包失败时,确定导致生成所述目标渠道包失败的目标原因;
第二生成模块(图中未示出),用于根据预先确定的失败原因与解决方案之间的对应关系和所述目标原因,生成目标解决方案;
修正模块(图中未示出),用于根据所述目标解决方案对所述第二中间应用程序包进行修正;
第三生成模块(图中未示出),用于利用所述渠道包制作工具,根据所述目标渠道对应的SDK和修正后的所述第二中间应用程序包,重新生成所述目标渠道包。
具体的,所述装置还可以包括:
上传模块(图中未示出),用于在所述第一生成模块或所述第三生成模块生成所述目标渠道对应的目标渠道包之后,将所述目标渠道包上传到所述目标渠道。
具体的,所述装置还可以包括:
第二获得模块(图中未示出),用于获得所述目标渠道包在所述目标渠道的表现数据;
第四生成模块(图中未示出),用于基于所获得的表现数据,生成针对所述原始应用程序包对应的程序开发者的渠道推荐信息。
具体的,所述目标功能***可以包括以下功能***中的至少一种:
账户***、登录***、支付***、社交分享***、消息推送***、广告***、指纹识别***。
由以上可知,本实施例所提供的渠道包生成装置,在获得原始应用程序包后,确定原始应用程序包的目标开发平台、目标开发引擎以及所要接入的目标渠道,根据目标开发平台、目标开发引擎,在原始应用程序包中嵌入目标功能***,获得第一中间应用程序包;在第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包,其中,连接信息为:用于连接至目标功能***的服务器的信息;利用渠道包制作工具,根据目标渠道对应的SDK和第二中间应用程序包,生成目标渠道对应的目标渠道包,其中,渠道包制作工具包含目标渠道对应的SDK。
可见,本实施例提供的方案,在对原始应用程序包中嵌入目标功能***,获得第一中间应用程序包,并在第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包之后,基于该第二应用程序包,可以利用渠道包制作工具自动生成多个目标渠道对应的目标渠道包。因此,本实施例可以降低软件开发者制作渠道包的工作量,缩短制作多个渠道包的时间。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (14)

1.一种渠道包生成方法,其特征在于,所述方法包括步骤:
获得原始应用程序包;
确定所述原始应用程序包的目标开发平台、目标开发引擎以及所述原始应用程序包所要接入的目标渠道;
根据所述目标开发平台和所述目标开发引擎,在所述原始应用程序包中嵌入目标功能***,获得第一中间应用程序包;
在所述第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包,其中,所述连接信息为:用于连接至所述目标功能***的服务器的信息;
利用渠道包制作工具,根据所述目标渠道对应的SDK和所述第二中间应用程序包,生成所述目标渠道对应的目标渠道包。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标开发平台和所述目标开发引擎,在所述原始应用程序包中嵌入目标功能***的步骤,包括:
根据所述目标开发平台和所述目标开发引擎,获得目标功能***的目标代码;
将所述目标代码嵌入至所述原始应用程序包中。
3.根据权利要求1所述的方法,其特征在于,
所述连接信息为:根据所述目标功能***的服务器的接口信息生成的信息。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在生成所述目标渠道包失败时,确定导致生成所述目标渠道包失败的目标原因;
根据预先确定的失败原因与解决方案之间的对应关系和所述目标原因,生成目标解决方案;
根据所述目标解决方案对所述第二中间应用程序包进行修正;
利用所述渠道包制作工具,根据所述目标渠道对应的SDK和修正后的所述第二中间应用程序包,重新生成所述目标渠道包。
5.根据权利要求1-4任一项所述的方法,其特征在于,在所述生成所述目标渠道对应的目标渠道包的步骤之后,还包括:
将所述目标渠道包上传到所述目标渠道。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
获得所述目标渠道包在所述目标渠道的表现数据;
基于所获得的表现数据,生成针对所述原始应用程序包对应的程序开发者的渠道推荐信息。
7.根据权利要求1所述的方法,其特征在于,所述目标功能***包括以下功能***中的至少一种:
账户***、登录***、支付***、社交分享***、消息推送***、广告***、指纹识别***。
8.一种渠道包生成装置,其特征在于,所述装置包括:
第一获得模块,用于获得原始应用程序包;
第一确定模块,用于确定所述原始应用程序包的目标开发平台、目标开发引擎以及所述原始应用程序包所要接入的目标渠道;
第一嵌入模块,用于根据所述目标开发平台和所述目标开发引擎,在所述原始应用程序包中嵌入目标功能***,获得第一中间应用程序包;
第二嵌入模块,用于在所述第一中间应用程序包中嵌入连接信息,获得第二中间应用程序包,其中,所述连接信息为:用于连接至所述目标功能***的服务器的信息;
第一生成模块,用于利用渠道包制作工具,根据所述目标渠道对应的SDK和所述第二中间应用程序包,生成所述目标渠道对应的目标渠道包。
9.根据权利要求8所述的装置,其特征在于,所述第一嵌入模块,包括:
获得子模块,用于根据所述目标开发平台和所述目标开发引擎,获得目标功能***的目标代码;
嵌入子模块,用于将所述目标代码嵌入至所述原始应用程序包中。
10.根据权利要求8所述的装置,其特征在于,
所述连接信息为:根据所述目标功能***的服务器的接口信息生成的信息。
11.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第二确定模块,用于在生成所述目标渠道包失败时,确定导致生成所述目标渠道包失败的目标原因;
第二生成模块,用于根据预先确定的失败原因与解决方案之间的对应关系和所述目标原因,生成目标解决方案;
修正模块,用于根据所述目标解决方案对所述第二中间应用程序包进行修正;
第三生成模块,用于利用所述渠道包制作工具,根据所述目标渠道对应的SDK和修正后的所述第二中间应用程序包,重新生成所述目标渠道包。
12.根据权利要求8-11任一项所述的装置,其特征在于,所述装置还包括:
上传模块,用于在所述第一生成模块或所述第三生成模块生成所述目标渠道对应的目标渠道包之后,将所述目标渠道包上传到所述目标渠道。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
第二获得模块,用于获得所述目标渠道包在所述目标渠道的表现数据;
第四生成模块,用于基于所获得的表现数据,生成针对所述原始应用程序包对应的程序开发者的渠道推荐信息。
14.根据权利要求8所述的装置,其特征在于,所述目标功能***包括以下功能***中的至少一种:
账户***、登录***、支付***、社交分享***、消息推送***、广告***、指纹识别***。
CN201611095833.6A 2016-12-01 2016-12-01 一种渠道包生成方法及装置 Active CN108132808B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611095833.6A CN108132808B (zh) 2016-12-01 2016-12-01 一种渠道包生成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611095833.6A CN108132808B (zh) 2016-12-01 2016-12-01 一种渠道包生成方法及装置

Publications (2)

Publication Number Publication Date
CN108132808A true CN108132808A (zh) 2018-06-08
CN108132808B CN108132808B (zh) 2021-05-14

Family

ID=62387761

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611095833.6A Active CN108132808B (zh) 2016-12-01 2016-12-01 一种渠道包生成方法及装置

Country Status (1)

Country Link
CN (1) CN108132808B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109522030A (zh) * 2018-11-29 2019-03-26 北纬通信科技南京有限责任公司 基于一键生成多个游戏渠道包的平台出包方法
CN111324381A (zh) * 2020-02-17 2020-06-23 腾讯科技(深圳)有限公司 开发***、方法、装置、计算机设备及存储介质
CN111970542A (zh) * 2020-08-21 2020-11-20 广州欢网科技有限责任公司 智能电视不升级自有广告app兼容支持SDK监测的***和方法
CN112069077A (zh) * 2020-09-14 2020-12-11 深圳市小元元科技有限公司 一种h5程序多引擎多渠道快速打包方法
CN114253432A (zh) * 2020-09-11 2022-03-29 腾讯科技(深圳)有限公司 应用渠道包的投放方法及***

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799444A (zh) * 2011-05-27 2012-11-28 华为软件技术有限公司 跨平台打包程序的方法及装置
CN103279355A (zh) * 2013-06-04 2013-09-04 沈琼茂 创建移动应用商店的***及方法
CN103731401A (zh) * 2012-10-13 2014-04-16 成都哆可梦网络科技有限公司 手机网络游戏运营平台***与方法
CN103838573A (zh) * 2014-01-03 2014-06-04 浙江宇天科技股份有限公司 应用程序生成方法及装置
US20140207575A1 (en) * 2013-01-22 2014-07-24 Index Systems, Inc. Electronic commerce network using mobile devices
CN104035778A (zh) * 2014-06-26 2014-09-10 上海斐讯数据通信技术有限公司 一种Android应用程序开发方法
CN104363264A (zh) * 2014-10-22 2015-02-18 北京棱镜云桥科技有限公司 移动终端软件的多渠道sdk接入***及方法
CN104461582A (zh) * 2014-12-30 2015-03-25 乐视网信息技术(北京)股份有限公司 业务处理方法、装置以及设备
CN104516755A (zh) * 2013-10-08 2015-04-15 博雅网络游戏开发(深圳)有限公司 安装包生成方法和装置
CN105068818A (zh) * 2015-08-26 2015-11-18 网易(杭州)网络有限公司 生成渠道包的方法、装置与批量生成渠道包的方法、***
CN105323285A (zh) * 2014-07-28 2016-02-10 上海指游网络技术有限公司 一种app产品多平台发布方法
WO2016061762A1 (zh) * 2014-10-22 2016-04-28 刘大澎 移动终端软件的多渠道sdk接入***及方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799444A (zh) * 2011-05-27 2012-11-28 华为软件技术有限公司 跨平台打包程序的方法及装置
CN103731401A (zh) * 2012-10-13 2014-04-16 成都哆可梦网络科技有限公司 手机网络游戏运营平台***与方法
US20140207575A1 (en) * 2013-01-22 2014-07-24 Index Systems, Inc. Electronic commerce network using mobile devices
CN103279355A (zh) * 2013-06-04 2013-09-04 沈琼茂 创建移动应用商店的***及方法
CN104516755A (zh) * 2013-10-08 2015-04-15 博雅网络游戏开发(深圳)有限公司 安装包生成方法和装置
CN103838573A (zh) * 2014-01-03 2014-06-04 浙江宇天科技股份有限公司 应用程序生成方法及装置
CN104035778A (zh) * 2014-06-26 2014-09-10 上海斐讯数据通信技术有限公司 一种Android应用程序开发方法
CN105323285A (zh) * 2014-07-28 2016-02-10 上海指游网络技术有限公司 一种app产品多平台发布方法
CN104363264A (zh) * 2014-10-22 2015-02-18 北京棱镜云桥科技有限公司 移动终端软件的多渠道sdk接入***及方法
WO2016061762A1 (zh) * 2014-10-22 2016-04-28 刘大澎 移动终端软件的多渠道sdk接入***及方法
CN104461582A (zh) * 2014-12-30 2015-03-25 乐视网信息技术(北京)股份有限公司 业务处理方法、装置以及设备
CN105068818A (zh) * 2015-08-26 2015-11-18 网易(杭州)网络有限公司 生成渠道包的方法、装置与批量生成渠道包的方法、***

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
佚名: "教你快速高效接入SDK——iOS多渠道自动打包工具核心原理", 《HTTPS://BLOG.CSDN.NET/CHENJIE19891104/ARTICLE/DETAILS/52079215》 *
刘奕君: "基于Android的移动应用内支付平台设计与实现", 《软件导刊 软件开发与应用》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109522030A (zh) * 2018-11-29 2019-03-26 北纬通信科技南京有限责任公司 基于一键生成多个游戏渠道包的平台出包方法
CN109522030B (zh) * 2018-11-29 2021-07-30 北纬通信科技南京有限责任公司 基于一键生成多个游戏渠道包的平台出包方法
CN111324381A (zh) * 2020-02-17 2020-06-23 腾讯科技(深圳)有限公司 开发***、方法、装置、计算机设备及存储介质
CN111324381B (zh) * 2020-02-17 2021-06-15 腾讯科技(深圳)有限公司 开发***、方法、装置、计算机设备及存储介质
CN111970542A (zh) * 2020-08-21 2020-11-20 广州欢网科技有限责任公司 智能电视不升级自有广告app兼容支持SDK监测的***和方法
CN114253432A (zh) * 2020-09-11 2022-03-29 腾讯科技(深圳)有限公司 应用渠道包的投放方法及***
CN114253432B (zh) * 2020-09-11 2023-09-08 腾讯科技(深圳)有限公司 应用渠道包的投放方法及***
CN112069077A (zh) * 2020-09-14 2020-12-11 深圳市小元元科技有限公司 一种h5程序多引擎多渠道快速打包方法

Also Published As

Publication number Publication date
CN108132808B (zh) 2021-05-14

Similar Documents

Publication Publication Date Title
CN108132808A (zh) 一种渠道包生成方法及装置
JP5965080B2 (ja) コンパイル及び配備サービスを用いたソフトウェアのビルド及びロード処理のためのシステム、方法及びコンピュータプログラムプロダクト
AU2016304571B2 (en) Model integration tool
CN104363264B (zh) 移动终端软件的多渠道sdk接入***
CN105512304B (zh) 在线生成互联网应用方法和***集成方法及支撑平台
CN102222012B (zh) 针对外部数据源的静态类型检查
Rosenmüller et al. Tailoring dynamic software product lines
CN105765527A (zh) 用于定制的软件开发包(sdk)的方法和装置
CN110187902A (zh) 基于spring boot的项目改造方法、装置、设备及存储介质
CN106598924A (zh) 表单的生成方法和装置
CN103582867A (zh) 用于指定基于云的部署的配置的高级语言
US20070073724A1 (en) System and method for automatic or semi-automatic software integration
US20140068551A1 (en) Configuring Assembly of a System using Supplied Architectural Artifacts
CN110765010B (zh) 基于Flink的可视化开发在线调试方法及装置
CN106528150A (zh) 一种j2ee项目的开发方法及开发平台
US20160117160A1 (en) Preparing installations and updates for software systems
CN109871241A (zh) 一种跨环境应用服务器的配置方法
CN110489088A (zh) 一种跨平台的小程序开发方法
CN112558953A (zh) 基于图形化编辑器的编程实现方法、装置及设备
AU2022203306A1 (en) Computerized gaming system and method of operating thereof
Stevens Connecting software build with maintaining consistency between models: towards sound, optimal, and flexible building from megamodels
CN107590064A (zh) 一种应用升级测试方法、装置和***
US20020133752A1 (en) Component/web service operational profile auto-sequencing
CN101882066B (zh) 创建具体类的实现方法
CN113591279A (zh) 在线建模仿真的方法、装置、设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant