CN114443002A - 创建应用程序的方法、装置、计算机设备及存储介质 - Google Patents

创建应用程序的方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN114443002A
CN114443002A CN202011227642.7A CN202011227642A CN114443002A CN 114443002 A CN114443002 A CN 114443002A CN 202011227642 A CN202011227642 A CN 202011227642A CN 114443002 A CN114443002 A CN 114443002A
Authority
CN
China
Prior art keywords
program
application
user
application program
identifier
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.)
Pending
Application number
CN202011227642.7A
Other languages
English (en)
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202011227642.7A priority Critical patent/CN114443002A/zh
Publication of CN114443002A publication Critical patent/CN114443002A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Landscapes

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

Abstract

本申请提供了一种创建应用程序的方法、装置、计算机设备及存储介质,属于互联网技术领域。方法包括:根据应用创建请求,生成程序标识,应用创建请求携带有应用程序的配置信息,配置信息用于指示应用程序的用户界面资源;基于程序标识,获取签名证书,签名证书用于发布应用程序;基于配置信息、签名证书以及通用程序源代码,创建目标应用程序,通用程序源代码为与目标应用程序具有相同的业务功能的其他应用程序的源代码。上述技术方案,通过其他应用程序的源代码,结合用户上传的配置信息以及服务器获取的签名证书,来创建目标应用程序,不需要重新开发既可得到业务功能和界面满足需求的应用程序,节省了开发时间,且开发成本较低。

Description

创建应用程序的方法、装置、计算机设备及存储介质
技术领域
本申请涉及互联网技术领域,特别涉及一种创建应用程序的方法、装置、计算机设备及存储介质。
背景技术
随着互联网技术的发展,人们的工作生活方式逐渐发生改变。例如,企业依托于互联网技术,通过软件和硬件相结合,实现了无纸化办公、线上交流以及远程办公。然而,由于企业通常采用第三方成熟的应用程序来实现企业用户之间的沟通与交流,存在应用程序不满足企业的实际需求的问题。
目前,为解决上述问题,企业通常采用的方式是针对企业的实际需求,委托自己的软件研发部门或者第三方软件研发公司,进行应用程序的是定制开发。通过这种方式得到的应用程序符合企业的实际需求。
上述方式存在的问题是,定制开发应用程序需要花费大量的时间,且开发成本较高。
发明内容
本申请实施例提供了一种创建应用程序的方法、装置、计算机设备及存储介质,不需要重新开发既可得到业务功能和界面满足需求的应用程序,节省了开发时间,且开发成本较低。所述技术方案如下:
一方面,提供了一种创建应用程序的方法,所述方法包括:
根据应用创建请求,生成程序标识,所述应用创建请求携带有应用程序的配置信息,所述配置信息用于指示应用程序的用户界面资源;
基于所述程序标识,获取签名证书,所述签名证书用于发布应用程序;
基于所述配置信息、所述签名证书以及通用程序源代码,创建目标应用程序,所述通用程序源代码为与所述目标应用程序具有相同的业务功能的其他应用程序的源代码。
另一方面,提供了一种创建应用程序的装置,所述装置包括:
程序标识生成模块,用于根据应用创建请求,生成程序标识,所述应用创建请求携带有应用程序的配置信息,所述配置信息用于指示应用程序的用户界面资源;
签名证书获取模块,用于基于所述程序标识,获取签名证书,所述签名证书用于发布应用程序;
程序创建模块,用于基于所述配置信息、所述签名证书以及通用程序源代码,创建目标应用程序,所述通用程序源代码为与所述目标应用程序具有相同的业务功能的其他应用程序的源代码。
在一种可选的实现方式中,所述程序标识生成模块,用于对所述应用创建请求进行解析,得到所述配置信息和用户资质信息,所述用户资质信息用于指示发起所述应用创建请求的用户的相关信息;响应于所述配置信息和所述用户资质信息通过审核,生成所述程序标识。
在一种可选的实现方式中,所述签名证书获取模块,用于向应用程序管理服务器发送证书获取请求,所述证书获取请求携带所述程序标识;接收所述应用程序管理服务器返回的所述签名证书。
在一种可选的实现方式中,所述程序创建模块,用于响应于程序打包请求,获取所述通用程序源代码;基于所述配置信息和所述程序标识,替换所述通用程序源代码对应的用户界面资源,得到目标程序安装包;基于所述签名证书,对所述目标应用程序的安装包进行签名,得到所述目标应用程序。
在一种可选的实现方式中,所述装置还包括:
公钥获取模块,用于基于所述程序标识,获取程序公钥,所述程序公钥用于应用程序与第三方服务进行通信;将所述程序公钥添加到所述目标应用程序的配置文件中。
在一种可选的实现方式中,所述用户界面资源包括文本信息资源、图像资源、界面样式资源、功能配置资源以及色彩资源中的至少一种。
在一种可选的实现方式中,所述装置还包括:
信息添加模块,用于在所述目标应用程序的配置文件中添加类型信息,所述类型信息用于指示所述目标应用程序为目标类型的应用程序。
在一种可选的实现方式中,所述装置还包括:
信息获取模块,用于响应于所述目标应用程序的应用修改请求,获取所述应用修改请求携带的配置修改信息;
更新包生成模块,用于基于所述配置修改信息,生成所述目标应用程序的更新包;
更新包推送模块,用于向安装有所述目标应用程序的至少一个终端,推送所述更新包。
在一种可选的实现方式中,所述装置还包括:
标识获取模块,用于响应于用户登录请求,获取所述用户登录请求携带的第三方账户标识以及所述程序标识;
标识生成模块,用于生成与所述第三方账户标识对应的第一用户身份标识和与所述程序标识对应的第二用户身份标识;
关系建立模块,用于建立所述第一用户身份标识和所述第二身份标识之间的对应关系,一个第一用户身份标识对应至少一个第二用户身份标识。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器用于存储至少一段计算机程序,所述至少一段计算机程序由所述处理器加载并执行以实现本申请实施例中的创建应用程序的方法中所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一段计算机程序,所述至少一段计算机程序由处理器加载并执行以实现如本申请实施例中创建应用程序的方法中所执行的操作。
另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述各个方面或者各个方面的各种可选实现方式中提供的创建应用程序的方法。
本申请实施例提供的技术方案带来的有益效果是:
在本申请实施例中,提供了一种创建应用程序的方法,通过基于具有相同的业务功能的其他应用程序的源代码,结合用户上传的配置信息以及服务器获取的签名证书,来创建目标应用程序,不需要重新开发既可得到业务功能和界面满足需求的应用程序,节省了开发时间,且开发成本较低。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请实施例提供的创建应用程序的方法的实施环境示意图;
图2是根据本申请实施例提供的一种创建应用程序的方法的流程图;
图3是根据本申请实施例提供的另一种创建应用程序的方法的流程图;
图4是根据本申请实施例提供的一种应用程序图标和名称的对比示意图;
图5是根据本申请实施例提供的一种应用程序的欢迎页样式的对比示意图;
图6是根据本申请实施例提供的一种应用程序的登录页样式的对比示意图;
图7是根据本申请实施例提供的一种应用程序的业务功能入口的对比示意图;
图8是根据本申请实施例提供的一种通用版本的即时通讯应用程序的企业选择界面的示意图;
图9是根据本申请实施例提供的另一种创建应用程序的方法的流程图;
图10是根据本申请实施例提供的一种创建应用程序的装置的框图;
图11是根据本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
以下,介绍本申请实施例提供的创建应用程序的方法的实施环境。图1是根据本申请实施例提供的创建应用程序的方法的实施环境示意图。参见图1,该实施环境包括终端101和服务器102。
终端101和服务器102能够通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
可选的,终端101是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端101安装和运行有应用程序。该应用程序是社交类应用程序、游戏类应用程序、办公类应用程序中的任意一种。示意性的,终端101是用户使用的终端,终端101登录有用户的用户账户。
可选的,服务器102是独立的物理服务器,或者是多个物理服务器构成的服务器集群或者分布式系统,还能够是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。服务器102用于为应用程序提供后台服务。可选地,服务器102承担主要计算工作,终端101承担次要计算工作;或者,服务器102承担次要计算工作,终端101承担主要计算工作;或者,服务器102和终端101二者之间采用分布式计算架构进行协同计算。
本领域技术人员知晓,上述终端的数量可以更多或更少。比如上述终端可以仅为一个,或者上述终端为几十个或几百个,或者更多数量。本申请实施例对终端的数量和设备类型不加以限定。
可选的,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也能够是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible MarkupLanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还能够使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet ProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还能够使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
图2是根据本申请实施例提供的一种创建应用程序的方法的流程图,如图2所示,在本申请实施例中以应用于服务器为例进行说明。该创建应用程序的方法包括以下步骤:
201、服务器根据应用创建请求,生成程序标识,该应用创建请求携带有应用程序的配置信息,该配置信息用于指示应用程序的用户界面资源。
在本申请实施例中,服务器在接收到应用创建请求时,为待创建的应用程序生成一个程序标识,该程序标识用于唯一标识该应用程序。该配置信息为请求创建应用程序的用户所提交的用户界面资源,如应用程序图标、应用程序名称、应用程序欢迎页样式以及主题颜色等用户自定义的UI(User Interface,用户界面)样式。
202、服务器基于该程序标识,获取签名证书,该签名证书用于发布应用程序。
在本申请实施例中,应用程序需要通过应用市场等应用程序管理机构的许可,才能够发布,从而被用户下载和使用。因此,服务器在生成程序标识之后,基于该程序标识向应用程序管理机构发起申请,从应用程序管理机构获取签名证书。
203、服务器基于该配置信息、该签名证书以及通用程序源代码,创建目标应用程序,该通用程序源代码为与该目标应用程序具有相同的业务功能的其他应用程序的源代码。
在本申请实施例中,服务器首先从源代码服务器获取通用程序代码,该通用程序代码为成熟的应用程序的源代码,能够实现用户需要的业务功能。然后服务器基于该配置信息对通用程序代码对应的用户界面资源进行更换,如更换欢迎页的样式、主题的颜色或者按钮排列的顺序等,从而得到目标应用程序的安装包。最后,服务器基于该签名证书对该安装包进行签名,则该应用程序即可发布,由用户通过应用市场下载并使用。
在本申请实施例中,提供了一种创建应用程序的方法,通过基于具有相同的业务功能的其他应用程序的源代码,结合用户上传的配置信息以及服务器获取的签名证书,来创建目标应用程序,不需要重新开发既可得到业务功能和界面满足需求的应用程序,节省了开发时间,且开发成本较低。
以上图2是根据本申请实施例提供的一种创建应用程序的方法的主要流程。下面基于创建具有办公功能的即时通讯应用程序的场景进行举例说明。上述即时通讯应用程序具有通用版本,即任何用户都能够下载和使用的版本,通过本申请实施例提供的创建应用程序的方法,能够为企业用户定制专属版本的即时通讯应用程序。参见图3所示,图3是根据本申请实施例提供的另一种创建应用程序的方法的流程图,如图3所示,在本申请实施例中以应用于服务器为例进行说明。该创建应用程序的方法包括以下步骤:
301、服务器根据应用创建请求,生成程序标识,该应用创建请求携带有应用程序的配置信息,该配置信息用于指示应用程序的用户界面资源。
在本申请实施例中,服务器用于为企业用户提供应用程序的创建服务,来为企业用户创建专属版本的即时通讯应用程序。服务器在接收到企业用户发起的应用创建请求之后,需要对该应用创建请求进行解析,得到配置信息和用户资质信息,该用户资质信息用于指示发起该应用创建请求的用户的相关信息,如企业用户的注册信息、经营状况信息以及经营类别信息等。响应于该配置信息和该用户资质信息通过审核,服务器能够生成程序标识,该程序标识用于唯一标识待创建的即时通讯应用程序。其中,该企业用户为管理员用户。
其中,企业用户能够上传一些符合其企业文化的内容作为配置信息,如程序logo(标识)、程序名称、欢迎页样式、登录页样式、程序主题颜色等自定义的UI样式。该UI样式指的是应用程序能够识别并渲染的富文本信息,包括图片、文本、文本格式、图文布局信息等常用的UI样式,本申请实施例对此不进行限制。企业用户还能够配置应用程序展示的业务功能入口,如消息、通讯录、工作台、我的(对应用户设置功能)、文档、日历以及企业首页等业务功能的入口,本申请实施例对此不进行限制。
需要说明的是,服务器会在通用版本的即时通讯应用程序或者即时通讯应用程序对应的官方网站上,提供创建专属版本的即时通讯应用程序的入口,以及创建该专属版本的即时通讯应用程序所需的资料。企业用户在根据要求准备好相关资料后,通过上述入口向服务器发送应用创建请求。
需要说明的是,对于不需要人工审核的内容,如图片尺寸、图片像素、文字长度等,服务器通过预设的审核标准来确定是否通过审核;而对于其他内容,如文本是否包括敏感词、图片是否包括限制性内容、企业资料是否真实以及申请原因是否合理等,由审核人员进行人工审核,服务器根据审核人员的审核结果来确定是否通过审核。如果审核通过,服务器执行步骤302;如果审核不通过,服务器向企业用户返回修改响应,提示企业用户进行修改。当然服务器也能够向企业用户返回拒绝响应,拒绝企业用户的应用创建请求。
302、服务器基于该程序标识,获取签名证书,该签名证书用于发布应用程序。
在本申请实施例中,通常应用程序在发布之前,需要通过应用程序管理机构的许可,如安卓系统的应用市场、应用商店,苹果系统的Appstore等,由应用程序管理机构颁发签名证书后,该应用程序才能够发布,使得用户能够通过应用市场或者Appstore下载和使用该应用程序。相应的,服务器在生成程序标识之后,向应用程序管理服务器发送携带该程序标识的证书申请请求,由应用程序管理服务器根据该程序标识生成签名证书。其中应用程序管理服务器为应用程序管理机构的服务器。可选的,上述证书申请请求还携带有该程序标识对应的即时通讯应用程序相关的信息,由应用程序管理服务器进行审核,审核通过后下发签名证书。其中,即时通讯应用程序相关的信息包括应用程序的类别、应用程序的业务功能以及应用程序的开发公司等,本申请实施例对此不进行限制。
303、服务器基于该程序标识,获取程序公钥,该程序公钥用于应用程序与第三方服务进行通信。
在本申请实施例中,上述应用创建请求所请求创建的即时通讯应用程序,具有与第三方服务进行通信的功能,该第三方服务为通讯程序、购物程序、资讯程序或者交友程序所提供的服务,本申请实施例对此不进行限制。服务器在生成上述程序标识后,向第三方服务的管理服务器发送程序接入请求,该程序接入请求携带该程序标识,由该第三方服务的管理服务器生成与该程序标识对应的程序公钥,该程序公钥用于应用程序与第三方服务进行通信,以实现用户通过第三方服务对应的用户账户授权登录上述即时通讯应用程序时,在该即时通讯应用程序与第三方服务对应的应用程序之间进行跳转。
例如,第三方服务为交友程序提供的服务,该交友程序登录有用户的交友账号,用户在终端登录专属版本的即时通讯应用程序时,请求第三方服务授权登录,此时基于该交友程序的授权登录界面,向交友程序的后台服务器发送授权登录请求,该授权登录请求携带上述程序公钥,该交友程序的后台服务器根据该程序公钥与程序标识的对应关系,在确定授权后返回该程序标识,使得完成授权登录后,终端基于该程序标识,通过应用程序接口跳转回专属版本的即时通讯应用程序。
304、响应于程序打包请求,服务器获取通用程序源代码,该通用程序源代码为与目标应用程序具有相同的业务功能的其他应用程序的源代码。
在本申请实施例中,服务器在生成程序标识后,需要企业用户确认是否生成该专属版本的即时通讯应用程序,也即目标应用程序。如果企业用户还需要进行配置信息等内容的修改,则可以在执行对应的修改流程;如果确有用户不需要再进行修改,则可以触发程序打包请求,由服务器获取通用程序源代码,该通用程序源代码为通用版本的即时通讯应用程序的源代码。
需要说明的是,由于通用版本的即时通讯应用程序包括的业务功能较多,对于通用版本的即时通讯应用程序的一些业务功能,如果企业用户不需要这些功能,则企业用户可以在配置文件中选择需要保留的业务功能,然后服务器在获取通用程序源代码之后,根据企业用户选择的业务功能来从通用程序源代码中提取相应的业务代码模块,从而能够减少后续生成的程序安装包的体积。
需要说明的是,如果企业用户想要定制通用版本的即时通讯应用程序当前没有的业务功能,则可以递交业务添加申请,由开发人员进行定制开发,开发完成后,以更新包的形式对专属版的即时通讯应用程序进行更新,以添加相关的业务功能。
305、服务器基于该配置信息和该程序标识,替换该通用程序源代码对应的用户界面资源,得到目标程序安装包。
在本申请实施例中,服务器获取通用程序源代码之后,对该通用程序源代码进行编译打包,生成目标程序安装包,然后服务器使用配置信息中的用户界面资源,来替换目标程序安装包中通用程序源代码对应的用户界面资源,以及服务器将程序标识存储到目标程序安装包对应的配置文件中。
例如,通用版本的即时通讯应用程序的程序名称叫做ABC程序,服务器根据配置信息将专用版本的即时通讯应用程序的程序名称,修改为DE公司BC程序,服务器根据配置信息将ABC程序的程序图像由图像a修改为图像b,服务器根据配置信息对ABC程序的欢迎页样式、登录页样式、主题颜色以及显示的业务功能入口进行修改,并将修改后的结果保存在目标程序安装包对应的配置文件中。并且,服务器将程序标识也存储到该配置文件中。
需要说明的是,服务器还能够在上述配置文件中,也即目标应用程序的配置文件中,添加类型信息,该类型信息用于指示该目标应用程序为目标类型的应用程序。该目标类型用于指示应用程序为非通用版本,而是专属版本。
例如,服务器在配置文件中存入一个标志位,该标志位标识该目标应用程序安装包为专属版本的即时通讯应用程序。
306、服务器将该程序公钥添加到该目标应用程序的配置文件中。
307、服务器基于该签名证书,对该目标应用程序的安装包进行签名,得到该目标应用程序。
在本申请实施例中,服务器得到目标程序安装包之后,基于上述签名证书与该目标程序安装包进行签名,从而目标应用程序可以被发布在应用市场或者Appstore,由企业用户下载该目标应用程序的目标程序安装包。当然,服务器也可以直接将该目标程序安装包,返回至触发应用创建请求的企业用户,本申请实施例对此不进行限制。
在一种可选的实现方式中,企业用户可以向服务器申请对该目标应用程序进行修改,相应的,响应于目标应用程序的应用修改请求,服务器获取该应用修改请求携带的配置修改信息,然后基于该配置修改信息,生成该目标应用程序的更新包,然后向安装有该目标应用程序的至少一个终端,推送该更新包,以实现对该目标应用程序的更新。当然,服务器也可以不生成更新包,而是更新云端(也即服务器端)的专属配置信息,由目标应用程序的客户端在启动后,从服务器拉取最新的专属配置信息,来更新本地的配置文件,从而实现目标应用程序的动态更新。
例如,企业更新了logo之后,企业用户向服务器提交应用修改请求,配置修改信息中携带更新后的logo,服务器生成对应的更新包,然后进行推送,使得安装有该目标应用程序的各个终端,能够动态更新该logo。
下面简单介绍企业用户如何进行配置信息的配置,以及配置信息如何生效。
首先,企业用户通过终端向服务器发送应用定制请求,服务器根据该应用定制请求向终端返回信息配置界面的链接。该信息配置界面包括多个子界面,每个子界面用于配置一种类别的配置信息,如logo子界面用于配置企业logo、图标子界面用于配置程序图标以及程序内显示的各业务功能的图标、业务子界面用于配置程序中显示的业务入口等,本申请实施例对此不进行限制。当然,信息配置界面还包括用于上传企业用户的注册信息、经营状况信息以及经营类别信息等企业信息的子界面。以logo子界面为例,该logo子界面显示有对logo图像的要求,如图像尺寸、文件大小、清晰度、分辨率以及包括的内容等。企业用户在logo子界面上传符合要求的logo图像。
然后,企业用户能够在上述多个子界面中,分别对企业logo、程序图标、业务入口以及企业信息等进行配置。响应于企业用户的提交操作,终端生成上述应用创建请求。服务器接收道该创建请求后,对该创建请求进行解析,得到企业用户设置的配置信息,其中,每个类别的配置信息分别对应一个唯一标识,服务器根据每个类别的唯一标识,来对该配置信息进行存储。
再然后,服务器在接收到程序打包请求之后,获取通用程序源代码对应的用户界面资源,然后根据各用户界面资源对应的唯一标识,从上述配置信息中获取对应的配置信息。如根据程序图标对应的唯一标识,将通用程序源代码对应的程序图标,替换为企业用户上传的程序图标;再如,根据界面显示的logo对应的唯一标识,将通用程序代码对应的logo,替换为企业用户上传的企业logo。
最后,服务器将打包完毕的目标程序安装包发送至终端,由终端对该目标程序安装包进行解析,并运行通用程序源代码,加载修改后的上述配置信息,从而得到专属版本的即时通讯应用程序,即目标应用程序。
相应的,基于企业用户提交的配置信息,用户在下载并安装该目标应用程序之后,该目标应用程序所展示的界面与通用版本的即时通讯应用程序有所区别。
例如,参见图4至图7所示。图4是根据本申请实施例提供的一种应用程序图标和名称的对比示意图。如图4所示,401表示专属版本的即时通讯应用程序的图标,402表示通用版本的即时通讯应用程序的图标。专属版本的即时通讯应用程序的名称为XX公司程序,通用版本的即时通讯应用程序的名称为YY程序。图5是根据本申请实施例提供的一种应用程序的欢迎页样式的对比示意图。如图5所示,501表示专属版本的即时通讯应用程序的欢迎页,该欢迎页包括企业用户针对其企业定制的欢迎语和企业logo。502表示通用版本的即时通讯应用程序的欢迎页,包括通用的欢迎语,但不包括企业logo。图6是根据本申请实施例提供的一种应用程序的登录页样式的对比示意图。如图6所示,601表示专属版本的即时通讯应用程序的登录页,该登录页包括企业用户针对其企业定制的企业logo以及准许接入的第三方服务的登录接口:第三方登录接口M。602表示通用版本的即时通讯应用程序的登录页,该登录页包括应用程序的图标以及准许接入的第三方服务的登录接口:第三方登录接口M和第三方登录接口N。图7是根据本申请实施例提供的一种应用程序的业务功能入口的对比示意图。如图7所示,701表示专属版本的即时通讯应用程序的一个界面,该界面包括多个企业用户配置的业务功能入口:搜索、消息、日程、文档、通讯录以及网页。702表示通用版本的即时通讯应用程序的一个界面,该界面包括通用的业务员功能入口:消息、通讯录、工作台以及我的。
需要说明的是,一个用户可能在多个企业任职,如果该用户使用通用版本的即时通讯应用程序,则该用户在登录后需要选择对应的企业,并等待对应的企业的管理员对该用户的身份进行认证,在认证通过后,用户才能够进入该企业对应的页面;如果该用户使用专属版本的即时通讯应用程序,则该用户不再需要选择企业,节约了用户的操作流程,提高了人机交互效率。
例如,参见图8所示,图8是根据本申请实施例提供的一种通用版本的即时通讯应用程序的企业选择界面的示意图。如图8所示,用户已经通过了企业A和企业C的认证,可以点击对应的箭头进入对应企业的页面,而用户未通过企业B的认证,不能进入企业B对应的页面。
另外,针对于一个用户可能在多个企业任职的情况,由于为专属版本的即时通讯应用程序生成了唯一的程序标识,使得用户可以同时下载不同企业定制的专属版本的即时通讯应用程序,即在同一个终端上,同时不同企业定制的专属版本的即时通讯应用程序。当然,用户还能够同时安装通用版本的即时通讯应用程序。
下面针对一个用户可能在多个企业任职的情况,介绍本申请实施例提供的创建应用程序的方法,如何实现一个用户登录多个专属版本的即时通讯应用程序。首先,服务器还包括账户管理服务器,该账户管理服务器用于管理用户账号。其次,对于任一用户,该用户对应一个唯一的全局用户账户,该全局用户账户可以与第三方服务的账户进行关联,如与交友程序的交友账户进行关联;还可以与手机号进行关联,也即全局用户账户、交友账户以及手机号为一对一的关系。再次,对于任一企业,该企业对应一个唯一的全局企业账户,该全局企业账户对应该企业相关的资源数据。最后,对于任一用户,该用户在每个企业对应一个身份账户,而一个全局企业账户对应有多个身份账户,也即,一个用户的全局用户账户可以对应至少一个身份账户,该至少一个身份账户可以对应于一个全局企业账户,也可以对应于多个全局企业账户。另外,用户在于第三方服务进行交互时,根据第三方服务的不同,所使用的账户也不同。如对于交友场景,由于涉及用户在企业内的身份,此时采用用户的身份账户与对方建立好友关系;对于支付场景,由于涉及资金,此时采用用户的全局用户账户来跳转支付程序进行支付。
例如,参见表1所示,用户1在企业2对应职位3和职位4,则该用户1的全局用户账户对应企业2的全局企业账户,还对应一个身份账户。而用户2在企业1对应职位1,在企业2对应职位2,则该用户2的全局用户账户对应企业1的全局企业账户和一个身份账户,还对应企业2的全局企业账户和一个身份账户,即用户2对应两个身份账户。当然,职位3和职位4也可以分别对应一个不同的身份账户,即用户1对应两个身份账户,该两个身份账户具有不同的权限,如职位3为管理职位,对应的身份账户具有人员管理的权限;职位4为技术职位,对应的身份账户具有数据管理的权限。
表1
Figure BDA0002764097920000131
在一种可选的实现方式中,响应于用户登录请求,服务器获取用户登录请求携带的第三方账户标识以及程序标识。然后服务器生成与第三方账户标识对应的第一用户身份标识和与程序标识对应的第二用户身份标识;建立第一用户身份标识和第二身份标识之间的对应关系,一个第一用户身份标识对应至少一个第二用户身份标识。其中,该第一用户身份标识为用户的全局用户账户,该第二用户身份标识为用户的身份账户。
例如,用户在启动应用程序的客户端之后,通过读取配置文件中的标志为来判断启动的是专用版本还是通用版本的即时通讯应用程序。如果是通用版本的即时通讯应用程序,则账户管理服务器为用户生成并下发全局用户账户,然后指示用户绑定手机号或者第三方服务的账户。如果是专用版本的即时通讯应用程序,通过用户登录请求携带手机号或者第三方服务的账户,得到全局用户账户,客户端还会发送携带程序标识的企业账户获取请求,得到账户管理服务器返回的全局用户账户对应的全局企业账户、对应的企业信息以及生成的身份账户,从而用户不用再选择企业,即可直接使用对应的功能。
需要说明的是,上述步骤301至步骤307是本申请实施例提供的创建应用程序的方法的可选实现方式。当然,该创建应用程序的方法还具有其他实现方式,例如参见图9所示,图9是根据本申请实施例提供的另一种创建应用程序的方法的流程图。如图9所示,服务器包括专属企业程序申请服务器、企业程序专属配置存储服务器、专属企业程序自动化打包服务器以及通用版本程序源代码服务器。创建专属企业程序的流程包括以下步骤:901、企业用户在申请专属企业程序时,向专属企业程序申请服务器提交企业自定义的UI样式和功能配置。902、专属企业程序申请服务器对企业用户提交的内容进行审核(机器审核+人工审核),审核通过时生成唯一的程序标识,向企业用户返回审核结果和该程序标识。903、专属企业程序申请服务器将企业用户提交的自定义UI样式、功能配置以及生成的程序标识,作为申请信息,存储到企业程序专属配置存储服务器。904、专属企业程序申请服务器通过程序标识,向应用程序管理机构申请签名证书。905、将应用程序管理机构下发的签名证书,存储到企业程序专属配置存储服务器。906、专属企业程序申请服务器通过程序标识,向第三方服务的管理服务器申请第三方服务接入。907、将第三方服务器的管理服务器分配为程序公钥,存储到企业程序专属配置存储服务器。908、企业用户向专属企业程序自动化打包服务器发送打包申请。909、专属企业程序自动化打包服务器从通用版本程序源代码服务器,获取通用程序源代码,对该通用程序源代码进行编译,得到专属企业安装包。910、专属企业程序自动化打包服务器从企业程序专属配置存储服务器,获取上述申请信息,对通用程序源代码对应的用户界面资源进行替换。911、专属企业程序自动化打包服务器从企业程序专属配置存储服务器,获取上述签名证书,对该专属企业安装包进行签名。912、专属企业程序自动化打包服务器向企业用户返回签名后的专属企业安装包。
在本申请实施例中,提供了一种创建应用程序的方法,通过基于具有相同的业务功能的其他应用程序的源代码,结合用户上传的配置信息以及服务器获取的签名证书,来创建目标应用程序,不需要重新开发既可得到业务功能和界面满足需求的应用程序,节省了开发时间,且开发成本较低。
图10是根据本申请实施例提供的一种创建应用程序的装置的框图。该装置用于执行上述创建应用程序的方法执行时的步骤,参见图10,装置包括:程序标识生成模块1001、签名证书获取模块1002以及程序创建模块1003。
程序标识生成模块1001,用于根据应用创建请求,生成程序标识,该应用创建请求携带有应用程序的配置信息,该配置信息用于指示应用程序的用户界面资源;
签名证书获取模块1002,用于基于该程序标识,获取签名证书,该签名证书用于发布应用程序;
程序创建模块1003,用于基于该配置信息、该签名证书以及通用程序源代码,创建目标应用程序,该通用程序源代码为与该目标应用程序具有相同的业务功能的其他应用程序的源代码。
在一种可选的实现方式中,该程序标识生成模块1001,用于对该应用创建请求进行解析,得到该配置信息和用户资质信息,该用户资质信息用于指示发起该应用创建请求的用户的相关信息;响应于该配置信息和该用户资质信息通过审核,生成该程序标识。
在一种可选的实现方式中,该签名证书获取模块1002,用于向应用程序管理服务器发送证书获取请求,该证书获取请求携带该程序标识;接收该应用程序管理服务器返回的该签名证书。
在一种可选的实现方式中,该程序创建模块1003,用于响应于程序打包请求,获取该通用程序源代码;基于该配置信息和该程序标识,替换该通用程序源代码对应的用户界面资源,得到目标程序安装包;基于该签名证书,对该目标应用程序的安装包进行签名,得到该目标应用程序。
在一种可选的实现方式中,该装置还包括:
公钥获取模块,用于基于该程序标识,获取程序公钥,该程序公钥用于应用程序与第三方服务进行通信;将该程序公钥添加到该目标应用程序的配置文件中。
在一种可选的实现方式中,该用户界面资源包括文本信息资源、图像资源、界面样式资源、功能配置资源以及色彩资源中的至少一种。
在一种可选的实现方式中,该装置还包括:
信息添加模块,用于在该目标应用程序的配置文件中添加类型信息,该类型信息用于指示该目标应用程序为目标类型的应用程序。
在一种可选的实现方式中,该装置还包括:
信息获取模块,用于响应于该目标应用程序的应用修改请求,获取该应用修改请求携带的配置修改信息;
更新包生成模块,用于基于该配置修改信息,生成该目标应用程序的更新包;
更新包推送模块,用于向安装有该目标应用程序的至少一个终端,推送该更新包。
在一种可选的实现方式中,该装置还包括:
标识获取模块,用于响应于用户登录请求,获取该用户登录请求携带的第三方账户标识以及该程序标识;
标识生成模块,用于生成与该第三方账户标识对应的第一用户身份标识和与该程序标识对应的第二用户身份标识;
关系建立模块,用于建立该第一用户身份标识和该第二身份标识之间的对应关系,一个第一用户身份标识对应至少一个第二用户身份标识。
在本申请实施例中,提供了一种创建应用程序的方法,通过基于具有相同的业务功能的其他应用程序的源代码,结合用户上传的配置信息以及服务器获取的签名证书,来创建目标应用程序,不需要重新开发既可得到业务功能和界面满足需求的应用程序,节省了开发时间,且开发成本较低。
需要说明的是:上述实施例提供的创建应用程序的装置在创建应用程序时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的创建应用程序的装置与创建应用程序的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图11是根据本申请实施例提供的一种服务器的结构示意图,该服务器1100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(CentralProcessing Units,CPU)1101和一个或一个以上的存储器1102,其中,该存储器1102中存储有至少一条计算机程序,该至少一条计算机程序由该处理器1101加载并执行以实现上述各个方法实施例提供的创建应用程序的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质应用于服务器,该计算机可读存储介质中存储有至少一段计算机程序,该至少一段计算机程序由处理器加载并执行以实现上述实施例的创建应用程序的方法中服务器所执行的操作。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中。服务器的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该服务器执行上述各种可选实现方式中提供的创建应用程序的方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (15)

1.一种创建应用程序的方法,其特征在于,所述方法包括:
根据应用创建请求,生成程序标识,所述应用创建请求携带有应用程序的配置信息,所述配置信息用于指示应用程序的用户界面资源;
基于所述程序标识,获取签名证书,所述签名证书用于发布应用程序;
基于所述配置信息、所述签名证书以及通用程序源代码,创建目标应用程序,所述通用程序源代码为与所述目标应用程序具有相同的业务功能的其他应用程序的源代码。
2.根据权利要求1所述的方法,其特征在于,所述根据应用创建请求,生成程序标识,包括:
对所述应用创建请求进行解析,得到所述配置信息和用户资质信息,所述用户资质信息用于指示发起所述应用创建请求的用户的相关信息;
响应于所述配置信息和所述用户资质信息通过审核,生成所述程序标识。
3.根据权利要求1所述的方法,其特征在于,所述基于所述程序标识,获取签名证书,包括:
向应用程序管理服务器发送证书获取请求,所述证书获取请求携带所述程序标识;
接收所述应用程序管理服务器返回的所述签名证书。
4.根据权利要求1所述的方法,其特征在于,所述基于所述配置信息、所述签名证书以及通用程序源代码,创建目标应用程序,包括:
响应于程序打包请求,获取所述通用程序源代码;
基于所述配置信息和所述程序标识,替换所述通用程序源代码对应的用户界面资源,得到目标程序安装包;
基于所述签名证书,对所述目标应用程序的安装包进行签名,得到所述目标应用程序。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于所述程序标识,获取程序公钥,所述程序公钥用于应用程序与第三方服务进行通信;
将所述程序公钥添加到所述目标应用程序的配置文件中。
6.根据权利要求1所述的方法,其特征在于,所述用户界面资源包括文本信息资源、图像资源、界面样式资源、功能配置资源以及色彩资源中的至少一种。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述目标应用程序的配置文件中添加类型信息,所述类型信息用于指示所述目标应用程序为目标类型的应用程序。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述目标应用程序的应用修改请求,获取所述应用修改请求携带的配置修改信息;
基于所述配置修改信息,生成所述目标应用程序的更新包;
向安装有所述目标应用程序的至少一个终端,推送所述更新包。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于用户登录请求,获取所述用户登录请求携带的第三方账户标识以及所述程序标识;
生成与所述第三方账户标识对应的第一用户身份标识和与所述程序标识对应的第二用户身份标识;
建立所述第一用户身份标识和所述第二身份标识之间的对应关系,一个第一用户身份标识对应至少一个第二用户身份标识。
10.一种创建应用程序的装置,其特征在于,所述装置包括:
程序标识生成模块,用于根据应用创建请求,生成程序标识,所述应用创建请求携带有应用程序的配置信息,所述配置信息用于指示应用程序的用户界面资源;
签名证书获取模块,用于基于所述程序标识,获取签名证书,所述签名证书用于发布应用程序;
程序创建模块,用于基于所述配置信息、所述签名证书以及通用程序源代码,创建目标应用程序,所述通用程序源代码为与所述目标应用程序具有相同的业务功能的其他应用程序的源代码。
11.根据权利要求10所述的装置,其特征在于,所述程序标识生成模块,用于对所述应用创建请求进行解析,得到所述配置信息和用户资质信息,所述用户资质信息用于指示发起所述应用创建请求的用户的相关信息;响应于所述配置信息和所述用户资质信息通过审核,生成所述程序标识。
12.根据权利要求10所述的装置,其特征在于,所述签名证书获取模块,用于向应用程序管理服务器发送证书获取请求,所述证书获取请求携带所述程序标识;接收所述应用程序管理服务器返回的所述签名证书。
13.根据权利要求10所述的装置,其特征在于,所述程序创建模块,用于响应于程序打包请求,获取所述通用程序源代码;基于所述配置信息和所述程序标识,替换所述通用程序源代码对应的用户界面资源,得到目标程序安装包;基于所述签名证书,对所述目标应用程序的安装包进行签名,得到所述目标应用程序。
14.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器用于存储至少一段计算机程序,所述至少一段计算机程序由所述处理器加载并执行权利要求1至9任一权利要求所述的创建应用程序的方法。
15.一种存储介质,其特征在于,所述存储介质用于存储至少一段计算机程序,所述至少一段计算机程序用于执行权利要求1至9任一权利要求所述的创建应用程序的方法。
CN202011227642.7A 2020-11-06 2020-11-06 创建应用程序的方法、装置、计算机设备及存储介质 Pending CN114443002A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011227642.7A CN114443002A (zh) 2020-11-06 2020-11-06 创建应用程序的方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011227642.7A CN114443002A (zh) 2020-11-06 2020-11-06 创建应用程序的方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN114443002A true CN114443002A (zh) 2022-05-06

Family

ID=81361003

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011227642.7A Pending CN114443002A (zh) 2020-11-06 2020-11-06 创建应用程序的方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN114443002A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115129300A (zh) * 2022-08-30 2022-09-30 太平金融科技服务(上海)有限公司深圳分公司 应用开发方法、装置、设备、介质和程序产品
CN115309376A (zh) * 2022-08-25 2022-11-08 北京泰迪熊移动科技有限公司 一种应用创建方法、装置、电子设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115309376A (zh) * 2022-08-25 2022-11-08 北京泰迪熊移动科技有限公司 一种应用创建方法、装置、电子设备及存储介质
CN115129300A (zh) * 2022-08-30 2022-09-30 太平金融科技服务(上海)有限公司深圳分公司 应用开发方法、装置、设备、介质和程序产品

Similar Documents

Publication Publication Date Title
CN111580820B (zh) 一种小程序生成方法和装置
CN107733922B (zh) 用于调用服务的方法和装置
US11182746B2 (en) Systems and methods for integrating third-party services with a client instance
US9778924B2 (en) Platform for enabling creation and use of an API for a specific solution
CN111213350A (zh) 用于创建去中心化标识的系统和方法
US10733238B2 (en) Script manager for distributed systems
US20130304713A1 (en) System and method for metadata level validation of custom setup objects
CN108427550B (zh) 一种Web服务生成方法、装置及设备
CN110692070B (zh) 跨越内容管理系统和嵌入其中的任何软件应用两者的自动化批量用户注册的系统和方法
US11252130B2 (en) System and method for data security management
US9330198B1 (en) Mapping stored client data to requested data using metadata
US8848922B1 (en) Distributed encryption key management
US11004054B2 (en) Updating account data for multiple account providers
KR101086620B1 (ko) 스마트 오피스 시스템 및 운용을 위한 서버 및 운용 방법
CN114443002A (zh) 创建应用程序的方法、装置、计算机设备及存储介质
CN115392718A (zh) 流程模型的处理方法、装置、设备及介质
US20230145461A1 (en) Receiving and integrating external data into a graphical user interface of an issue tracking system
CN113746719A (zh) 一种任务信息处理方法、装置、电子设备及存储介质
CN114816361A (zh) 拼搭工程生成方法、装置、设备、介质和程序产品
US20240061719A1 (en) Dual level multi-tenancy for exposing artificial intelligence content as cloud service
CN114564673A (zh) 一种基于大数据的企业智能政策服务实现方法及系统
CN114816965A (zh) 一种数据验证方法及装置
CN114157581A (zh) 提供区块链服务的方法、装置、存储介质和电子设备
US10083313B2 (en) Remote modification of a document database by a mobile telephone device
CN110083589A (zh) 一种面向航电系统的能力仓库

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40068472

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination