本技术涉及终端,尤其涉及一种应用开发系统、方法及设备。
背景技术:
1、随着终端技术的发展,电子设备的种类趋于多样化,越来越多的智能电子设备得到广泛应用。如用户可能同时拥有智能手机和智能手表,其中,智能手机和智能手表上均可以安装应用程序,用户可以通过智能手机使用应用程序提供的功能,也可以通过智能手表使用应用程序提供的功能。
2、由于不同类型的电子设备所支持的功能不同,且不同电子设备的显示屏幕也可能具有不同尺寸或形状,则应用程序开发者需要对不同类型的电子设备设计不同的安装包,并将同一应用程序的多个安装包多次上架应用商城。
技术实现思路
1、本技术提供一种应用开发系统、方法及设备,用以降低应用开发成本,灵活实现应用的开发与下载安装。
2、第一方面,本技术提供一种应用开发系统,所述应用开发系统包括第一电子设备、第二电子设备、第三电子设备以及服务器;
3、所述第一电子设备,用于向所述服务器发送目标应用的原始安装包,所述目标应用的原始安装包用于指示至少一种设备信息对应的功能,和/或,至少一种设备信息对应的页面布局;
4、所述服务器,用于接收所述第一电子设备发送的所述目标应用的原始安装包,根据所述原始安装包确定至少一个目标安装包,其中,所述至少一个目标安装包与所述至少一种设备信息一一对应,每个目标安装包具有一种设备信息对应的功能和/或页面布局;接收所述第二电子设备发送的第一下载请求,所述第一下载请求用于请求下载所述目标应用的安装包;向所述第二电子设备发送第一安装包,所述第一安装包为所述至少一个目标安装包中所述第二电子设备的设备信息对应的目标安装包;接收所述第三电子设备发送的第二下载请求,所述第二下载请求用于请求下载所述目标应用的安装包;向所述第三电子设备发送第二安装包,所述第二安装包为所述至少一个目标安装包中所述第三电子设备的设备信息对应的目标安装包;
5、所述第二电子设备,用于向所述服务器发送所述第一下载请求;接收所述服务器发送的所述第一安装包;
6、所述第三电子设备,用于向所述服务器发送所述第二下载请求;接收所述服务器发送的所述第二安装包。
7、基于上述应用开发系统,应用开发者可以通过第一电子设备上传原始安装包到服务器,服务器可以根据原始安装包生成至少一个目标安装包,每个目标安装包对应一个设备信息,从而开发者无需多次上架同一应用的多种安装包,减少开发成本,提高应用开发的效率。并且,本技术提供的应用开发方法中,具有不同设备信息的电子设备向服务器请求下载的目标安装包不同,从而电子设备下载到的目标安装包可以适用于该电子设备,保证电子设备可以正常运行目标应用,且无需下载与电子设备无关的数据,节省电子设备的存储资源。
8、在一种可能的设计中,所述第一安装包与所述第二安装包满足以下至少一个条件:所述第一安装包的数据量大小与所述第二安装包的数据量大小不同;所述第一安装包的包名与所述第二安装包的包名不同;所述第一安装包中的功能文件与所述第二安装包中的功能文件不同;所述第一安装包中的布局文件与所述第二安装包中的布局文件不同。
9、通过该设计,不同的电子设备向服务器请求下载的安装包不同,每个电子设备获取到的安装包都是适配于该电子设备的目标应用的安装包,保证目标应用可以正常运行。
10、在一种可能的设计中,所述第二电子设备还用于:在向所述服务器发送第一下载请求之前,向所述服务器发送所述第二电子设备的设备信息,接收所述服务器发送的所述第二电子设备支持运行的应用的信息;显示所述第二电子设备支持运行的应用的信息;
11、所述第三电子设备还用于:在向所述服务器发送第二下载请求之前,向所述服务器发送所述第三电子设备的设备信息,接收所述服务器发送的所述第三电子设备支持运行的应用的信息;显示所述第三电子设备支持运行的应用的信息;
12、所述服务器还用于:接收所述第二电子设备发送的所述第二电子设备的设备信息,向所述第二电子设备发送所述第二电子设备支持运行的应用的信息;接收所述第三电子设备发送的所述第三电子设备的设备信息,向所述第三电子设备发送所述第三电子设备支持运行的应用的信息。
13、通过该设计,电子设备可以将自身的设备信息发送给服务器,并接收服务器返回的电子设备支持运行的应用的信息,并显示电子设备支持运行的应用的信息,从而可以便于用户在电子设备支持运行的应用中选择目标应用进行下载。
14、在一种可能的设计中,所述服务器具体用于:根据所述原始安装包中的语法标记对所述原始安装包进行拆分并编译,得到所述至少一个目标安装包。
15、通过该设计,服务器可以对原始安装包进行拆分,而无需开发者向服务器上传多个安装包,降低开发成本,提升应用开发的效率。
16、在一种可能的设计中,所述第一安装包中包括所述第二电子设备的设备信息对应的功能文件和/或所述第二电子设备的设备信息对应的布局文件,所述第二电子设备的设备信息对应的布局文件包括所述第二电子设备的设备信息对应的显示资源;所述第二安装包中包括所述第三电子设备的设备信息对应的功能文件和/或所述第三电子设备的设备信息对应的布局文件,所述第三电子设备的设备信息对应的布局文件包括所述第三电子设备的设备信息对应的显示资源。
17、通过该设计,电子设备获取到的安装包中包括该电子设备的设备信息对应的功能文件和/或布局文件,布局文件中可以包括该电子设备的设备信息对应的显示资源,从而电子设备在下载并安装目标应用的安装包后,可以为用户提供该电子设备支持的功能,并能够显示与该电子设备匹配的显示界面。
18、在一种可能的设计中,所述设备信息包括设备类型、屏幕参数中的至少一项。
19、在一种可能的设计中,所述屏幕参数包括屏幕形状、屏幕尺寸和屏幕分辨率中的至少一项。
20、通过该设计,开发者可以设计不同设备类型或屏幕参数对应的安装包,使得服务器可以拆分得到多种设备信息对应的安装包,便于目标应用的推广,同时降低开发成本。
21、在一种可能的设计中,所述第二电子设备还用于:在所述接收所述服务器发送的所述第一安装包之后,下载所述第一安装包,并根据所述第一安装包在所述第二电子设备上安装所述目标应用;或者在所述接收所述服务器发送的所述第一安装包之后,下载所述第一安装包,并根据所述第一安装包在所述第二电子设备上显示所述目标应用的服务卡片;
22、所述第三电子设备还用于:在所述接收所述服务器发送的所述第二安装包之后,下载所述第二安装包,并根据所述第二安装包在所述第三电子设备上安装所述目标应用;或者在所述接收所述服务器发送的所述第二安装包之后,下载所述第二安装包,并根据所述第二安装包在所述第三电子设备上显示所述目标应用的服务卡片。
23、通过该设计,电子设备可以根据获取到的目标应用的安装包在电子设备上安装目标应用,还可以根据目标应用的安装包显示目标应用的服务卡片,为用户提供多样的应用体验。
24、在一种可能的设计中,所述第二电子设备为智能终端设备、智能穿戴设备、轻智能穿戴设备、物联网设备、智能车载设备中的任一项;所述第三电子设备为智能终端设备、智能穿戴设备、轻智能穿戴设备、物联网设备、智能车载设备中的任一项。
25、其中,智能穿戴设备例如可以为智能手表,轻智能穿戴设备例如可以为运动手表。
26、第二方面,本技术提供一种应用开发方法,应用于电子设备,所述方法包括:向服务器发送第一下载请求,所述第一下载请求用于请求下载目标应用的安装包;接收所述服务器发送的第一安装包,所述第一安装包为所述电子设备的设备信息对应的目标安装包,所述目标安装包为所述服务器根据所述目标应用的原始安装包确定的。
27、在一种可能的设计中,在向所述服务器发送第一下载请求之前,所述方法还包括:向所述服务器发送所述电子设备的设备信息,接收所述服务器发送的所述电子设备支持运行的应用的信息;显示所述电子设备支持运行的应用的信息。
28、在一种可能的设计中,所述第一安装包中包括所述电子设备的设备信息对应的功能文件和/或所述电子设备的设备信息对应的布局文件,所述电子设备的设备信息对应的布局文件包括所述电子设备的设备信息对应的显示资源。
29、在一种可能的设计中,所述设备信息包括设备类型、屏幕参数中的至少一项。
30、在一种可能的设计中,所述屏幕参数包括屏幕形状、屏幕尺寸和屏幕分辨率中的至少一项。
31、在一种可能的设计中,在所述接收所述服务器发送的第一安装包之后,所述方法还包括:下载所述第一安装包,并根据所述第一安装包在所述电子设备上安装所述目标应用;或者下载所述第一安装包,并根据所述第一安装包在所述电子设备上显示所述目标应用的服务卡片。
32、第三方面,本技术提供一种应用开发方法,应用于服务器,所述方法包括:接收第一电子设备发送的所述目标应用的原始安装包,所述目标应用的原始安装包用于指示至少一种设备信息对应的功能,和/或,至少一种设备信息对应的页面布局;根据所述原始安装包确定至少一个目标安装包,其中,所述至少一个目标安装包与所述至少一种设备信息一一对应,每个目标安装包具有一种设备信息对应的功能和/或页面布局;接收第二电子设备发送的第一下载请求,所述第一下载请求用于请求下载所述目标应用的安装包;向所述第二电子设备发送第一安装包,所述第一安装包为所述至少一个目标安装包中所述第二电子设备的设备信息对应的目标安装包;接收第三电子设备发送的第二下载请求,所述第二下载请求用于请求下载所述目标应用的安装包;向所述第三电子设备发送第二安装包,所述第二安装包为所述至少一个目标安装包中所述第三电子设备的设备信息对应的目标安装包。
33、在一种可能的设计中,所述第一安装包与所述第二安装包满足以下至少一个条件:所述第一安装包的数据量大小与所述第二安装包的数据量大小不同;所述第一安装包的包名与所述第二安装包的包名不同;所述第一安装包中的功能文件与所述第二安装包中的功能文件不同;所述第一安装包中的布局文件与所述第二安装包中的布局文件不同。
34、在一种可能的设计中,所述方法还包括:接收所述第二电子设备发送的所述第二电子设备的设备信息,向所述第二电子设备发送所述第二电子设备支持运行的应用的信息;接收所述第三电子设备发送的所述第三电子设备的设备信息,向所述第三电子设备发送所述第三电子设备支持运行的应用的信息。
35、在一种可能的设计中,所述根据所述原始安装包确定至少一个目标安装包,包括:根据所述原始安装包中的语法标记对所述原始安装包进行拆分并编译,得到所述至少一个目标安装包。
36、在一种可能的设计中,所述第一安装包中包括所述第二电子设备的设备信息对应的功能文件和/或所述第二电子设备的设备信息对应的布局文件,所述第二电子设备的设备信息对应的布局文件包括所述第二电子设备的设备信息对应的显示资源;所述第二安装包中包括所述第三电子设备的设备信息对应的功能文件和/或所述第三电子设备的设备信息对应的布局文件,所述第三电子设备的设备信息对应的布局文件包括所述第三电子设备的设备信息对应的显示资源。
37、在一种可能的设计中,所述设备信息包括设备类型、屏幕参数中的至少一项。
38、在一种可能的设计中,所述屏幕参数包括屏幕形状、屏幕尺寸和屏幕分辨率中的至少一项。
39、第四方面,本技术提供一种电子设备,所述电子设备包括多个功能模块;所述多个功能模块相互作用,实现上述任一方面及其各实施方式中第二电子设备或第三电子设备所执行的方法。所述多个功能模块可以基于软件、硬件或软件和硬件的结合实现,且所述多个功能模块可以基于具体实现进行任意组合或分割。
40、第五方面,本技术提供一种电子设备,包括至少一个处理器和至少一个存储器,所述至少一个存储器中存储计算机程序指令,所述电子设备运行时,所述至少一个处理器执行上述任一方面及其各实施方式中第二电子设备或第三电子设备执行的方法。
41、第六方面,本技术提供一种服务器,所述服务器包括多个功能模块;所述多个功能模块相互作用,实现上述任一方面及其各实施方式中服务器所执行的方法。所述多个功能模块可以基于软件、硬件或软件和硬件的结合实现,且所述多个功能模块可以基于具体实现进行任意组合或分割。
42、第七方面,本技术提供一种服务器,包括至少一个处理器和至少一个存储器,所述至少一个存储器中存储计算机程序指令,所述服务器运行时,所述至少一个处理器执行上述任一方面及其各实施方式中服务器执行的方法。
43、第八方面,本技术还提供一种计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行上述任一方面及其各实施方式中第二电子设备、第三电子设备或服务器执行的方法。
44、第九方面,本技术还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序被计算机执行时,使得所述计算机执行上述任一方面及其各实施方式中第二电子设备、第三电子设备或服务器执行的方法。
45、第十方面,本技术还提供一种芯片,所述芯片用于读取存储器中存储的计算机程序,执行上述任一方面及其各实施方式中第二电子设备、第三电子设备或服务器执行的方法。
46、第十一方面,本技术还提供一种芯片系统,该芯片系统包括处理器,用于支持计算机装置实现上述任一方面及其各实施方式中第二电子设备、第三电子设备或服务器执行的方法。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器用于保存该计算机装置必要的程序和数据。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。