一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种的生成文件的方法及电子设备与流程

2022-03-19 15:44:07 来源:中国专利 TAG:


1.本技术涉及电子技术领域,尤其涉及一种的生成文件的方法及电子设备。


背景技术:

2.当用户在安装有app(application,app)的电子设备上启动了该app后,电子设备的显示屏会显示该app的相关页面,例如,当用户在电子设备上启动了华为游戏app后,电子设备显示华为游戏app的首页。
3.app的安装包内通常会包含各类文件,例如,页面布局文件,图片资源文件、媒体资源文件等,其中,页面布局文件可以描述app的页面所需的所有资源文件。
4.在app的启动过程中,操作系统(operating system,os)根据页面布局文件确定app将要显示的页面需要的资源文件,加载该资源文件后通过显示屏显示给用户。
5.对于用户而言,用户启动app后,相应页面显示的越快,用户的体验越好,因此,加快app的页面的显示速度是很有必要的。


技术实现要素:

6.本技术提供一种生成文件的方法与电子设备,在app的编译阶段对app的各个页面对应的页面布局文件进行解析,将属于同一页面或具有关联关系的页面的原始资源文件合并为一个文件,使得在页面显示时,当加载原始资源文件时,实际加载的是合并后生成的资源文件,并且从该合并后生成的资源文件中依次连续读取原始资源文件,无需在页面显示时对原始资源文件依次加载再进行读取,从而在页面显示时提升读取原始资源文件的速度,进而提升页面的显示速度。
7.第一方面,提供一种方法,应用于电子设备,该方法包括:根据资源索引文件,获取第一信息,所述资源索引文件包括多个资源文件的索引、文件名与路径信息,所述多个资源文件包括第一资源文件与第二资源文件,所述第一信息包括所述第一文件的路径信息与文件名;根据所述第一信息,加载第一文件,所述第一文件是由所述第一资源文件与所述第二资源文件合并后生成的,所述第一资源文件与所述第二资源文件属于第一页面;根据第二信息,从所述第一文件中获取所述第一资源文件与所述第二资源文件,所述第二信息用于从所述第一资源文件中提取所述第一资源文件与所述第二资源文件;根据所述第一资源文件与所述第二资源文件,所述电子设备显示所述第一页面。
8.值得一提的是,本技术实施例涉及的加载文件的过程,可以是先将文件从非易失性存储器中读取出来,再将读取到的文件存储到随机存取存储器的过程。例如,对于第一文件,加载第一文件时,可以将第一文件从非易失性存储器中读取出来,再将第一文件存储到随机存取存储器。
9.基于上述技术方案,在app的编译阶段,根据app的各个页面对应的页面布局文件,将属于同一页面的原始资源文件合并为一个文件,使得在页面显示时,当加载原始资源文件时,实际加载的是合并后生成的资源文件,例如,加载合并后生成的资源文件时,将合并
后生成的资源文件从非易失性存储器中读取出来,再将合并后生成的资源文件存储到随机存取存储器,使得可以从合并后生成的资源文件中依次连续读取原始资源文件,无需在页面显示时对原始资源文件依次加载再进行读取,从而在页面显示时提升读取原始资源文件的速度,进而提升页面的显示速度。
10.需要说明的是,本技术实施例提供的方法并不限定页面所包括的原始资源文件的数量,换句话说,本技术实施例提供的方法同样适用于一个页面包括多个原始资源文件的情况。
11.结合第一方面和上述实现方式,在第一方面的某些实现方式中,所述第二信息包括所述第一资源文件的起始位置相对于所述第一文件的起始位置的偏移量与所述第二资源文件的起始位置相对于所述第一文件的起始位置的偏移量。
12.基于上述技术方案,在进行页面显示时,使得电子设备能够根据第二信息确定第一资源文件在第一文件中的位置与第一资源文件的长度,并且确定第二资源文件在第一文件中的位置与第二资源文件的长度,根据该位置以及长度,依次从第一文件中获取第一资源文件与第二资源文件,从而根据第一资源文件与第二资源文件显示第一页面。
13.结合第一方面和上述实现方式,在第一方面的某些实现方式中,所述第二信息包括所述第一资源文件的长度与所述第二资源文件的长度。
14.基于上述技术方案,在进行页面显示时,使得电子设备能够根据第二信息确定第一资源文件在第一文件中的位置与第一资源文件的长度,并且确定第二资源文件在第一文件中的位置与第二资源文件的长度,根据该位置以及长度,依次从第一文件中获取第一资源文件与第二资源文件,从而根据第一资源文件与第二资源文件显示第一页面。
15.结合第一方面和上述实现方式,在第一方面的某些实现方式中,所述第二信息保存在所述第一文件或所述资源索引文件中。
16.基于上述技术方案,通过将第二信息保存在第一文件或资源索引文件中,使得在显示页面时,电子设备能够较为快速地获取到第二信息,并根据第二信息从第一文件中获取第一资源文件与第二资源文件,从而提高根据第一资源文件与第二资源文件显示第一页面的速度。
17.结合第一方面和上述实现方式,在第一方面的某些实现方式中,所述第一资源文件与所述第二资源文件的类型相同。
18.结合第一方面和上述实现方式,在第一方面的某些实现方式中,所述第一文件的长度小于或等于预设阈值。
19.基于上述技术方案,由于合并后生成的资源文件的大小会对加载速度产生影响,因此,通过限定合并后生成的资源文件的长度,例如,限定第一文件的长度小于或等于预设阈值,从而提升显示速度。
20.第二方面,提供一种生成文件的方法,所述方法包括:获取第一页面的页面布局文件;根据第一页面的页面布局文件,确定所述第一页面包括第一资源文件与第二资源文件;对所述第一资源文件与所述第二资源文件进行合并,生成第一文件。
21.值得一提的是,本技术实施例涉及的加载文件的过程,可以是先将文件从非易失性存储器中读取出来,再将读取到的文件存储到随机存取存储器的过程。例如,对于第一文件,加载第一文件时,可以将第一文件从非易失性存储器中读取出来,再将第一文件存储到
随机存取存储器。
22.基于上述技术方案,在app的编译阶段,根据app的各个页面对应的页面布局文件,将属于同一页面的原始资源文件合并为一个文件,使得在页面显示时,当加载原始资源文件时,实际加载的是合并后生成的资源文件,例如,加载合并后生成的资源文件时,将合并后生成的资源文件从非易失性存储器中读取出来,再将合并后生成的资源文件存储到随机存取存储器,使得可以从合并后生成的资源文件中依次连续读取原始资源文件,无需在页面显示时对原始资源文件依次加载再进行读取,从而在页面显示时提升读取原始资源文件的速度,进而提升页面的显示速度。
23.需要说明的是,本技术实施例提供的生成文件的方法并不限定页面所包括的原始资源文件的数量,换句话说,本技术实施例提供的生成文件的方法同样适用于一个页面包括多个原始资源文件的情况。
24.结合第二方面,在第二方面的某些实现方式中,所述根据所述第一页面的页面布局文件,确定所述第一页面包括第一资源文件与第二资源文件,包括:根据所述第一页面的页面布局文件中包括的所述第一资源文件的标识与所述第二资源文件的标识,确定所述第一资源文件与所述第二资源文件属于所述第一页面。
25.结合第二方面,在第二方面的某些实现方式中,所述第一文件中存储有所述第一资源文件的起始位置相对于所述第一文件的起始位置的偏移量与所述第二资源文件的起始位置相对于所述第一文件的起始位置的偏移量,和/或,所述第一文件中存储有所述第一资源文件的长度与所述第二资源文件的长度。
26.基于上述技术方案,在进行页面显示时,使得电子设备能够根据第二信息确定第一资源文件在第一文件中的位置与第一资源文件的长度,并且确定第二资源文件在第一文件中的位置与第二资源文件的长度,根据该位置以及长度,依次从第一文件中获取第一资源文件与第二资源文件,从而根据第一资源文件与第二资源文件显示第一页面。
27.结合第二方面,在第二方面的某些实现方式中,所述方法还包括:生成资源索引文件,所述资源索引文件包括多个资源文件的索引、文件名与路径信息,所述多个资源文件包括所述第一资源文件与所述第二资源文件。
28.结合第二方面,在第二方面的某些实现方式中,所述资源索引文件中存储有所述第一资源文件的起始位置相对于所述第一文件的起始位置的偏移量与所述第二资源文件的起始位置相对于所述第一文件的起始位置的偏移量,和/或,所述第一文件中存储有所述第一资源文件的长度与所述第二资源文件的长度。
29.结合第二方面和上述实现方式,在第二方面的某些实现方式中,所述第一资源文件与所述第二资源文件是根据所述第一页面的至少一个页面布局文件确定的。
30.结合第二方面和上述实现方式,在第二方面的某些实现方式中,所述第一资源文件与所述第二资源文件的类型相同。
31.结合第二方面和上述实现方式,在第二方面的某些实现方式中,所述第一文件的长度小于或等于预设阈值。
32.基于上述技术方案,由于合并后生成的资源文件的大小会对加载速度产生影响,因此,通过限定合并后生成的资源文件的长度,例如,限定第一文件的长度小于或等于预设阈值,从而加快显示速度。
33.第三方面,提供一种方法,应用于包括显示屏的电子设备,其特征在于,所述方法包括:获取第一页面的页面布局文件;根据第一页面的至少一个页面布局文件,确定所述第一页面包括第一资源文件与第二资源文件;对所述第一资源文件与所述第二资源文件进行合并,生成第一文件;根据资源索引文件,获取第一信息,所述资源索引文件包括多个资源文件的索引、文件名与路径信息,所述多个资源文件包括所述第一资源文件与所述第二资源文件,所述第一信息包括所述第一文件的路径信息与文件名;根据所述第一信息,加载所述第一文件;根据第一信息,加载所述第一文件;根据第二信息,从所述第一文件中获取所述第一资源文件与所述第二资源文件,所述第二信息用于从所述第一资源文件中提取所述第一资源文件与所述第二资源文件;根据所述第一资源文件与所述第二资源文件,所述电子设备显示所述第一页面。
34.值得一提的是,本技术实施例涉及的加载文件的过程,可以是先将文件从非易失性存储器中读取出来,再将读取到的文件存储到随机存取存储器的过程。例如,对于第一文件,加载第一文件时,可以将第一文件从非易失性存储器中读取出来,再将第一文件存储到随机存取存储器。
35.基于上述技术方案,在app的编译阶段,根据app的各个页面对应的页面布局文件,将属于同一页面的原始资源文件合并为一个文件,使得在页面显示时,当加载原始资源文件时,实际加载的是合并后生成的资源文件,例如,加载合并后生成的资源文件时,将合并后生成的资源文件从非易失性存储器中读取出来,再将合并后生成的资源文件存储到随机存取存储器,使得可以从合并后生成的资源文件中依次连续读取原始资源文件,无需在页面显示时对原始资源文件依次加载再进行读取,从而在页面显示时提升读取原始资源文件的速度,进而提升页面的显示速度。
36.需要说明的是,本技术实施例提供的方法并不限定页面所包括的原始资源文件的数量,换句话说,本技术实施例提供的方法同样适用于一个页面包括多个原始资源文件的情况。
37.第四方面,提供一种文件,包括根据第二方面中生成文件的方法生成的第一文件,和/或,包括根据第二方面中生成文件的方法生成的资源索引文件。
38.第五方面,提供一种电子设备,包括显示屏,存储器,一个或多个处理器,以及一个或多个程序;其中所述一个或多个程序被存储在所述存储器中;所述一个或多个处理器在执行所述一个或多个程序时,使得所述电子设备执行上述任一方面任一项可能的实现中的方法。
39.第六方面,提供一种电子设备,包括存储器,一个或多个处理器,以及一个或多个程序;其中所述一个或多个程序被存储在所述存储器中;所述一个或多个处理器在执行所述一个或多个程序时,使得所述电子设备执行上述任一方面任一项可能的实现中的生成文件的方法。
40.第七方面,提供一种装置,包括处理模块与显示模块,处理模块用于根据资源索引文件,获取第一信息,所述资源索引文件包括多个资源文件的索引、文件名与路径信息,所述多个资源文件包括第一资源文件与第二资源文件,所述第一信息包括所述第一文件的路径信息与文件名;处理模块还用于根据所述第一信息,加载第一文件,所述第一文件是由所述第一资源文件与所述第二资源文件合并后生成的,所述第一资源文件与所述第二资源文
件属于第一页面;处理模块还用于根据第二信息,从所述第一文件中获取所述第一资源文件与所述第二资源文件,所述第二信息用于从所述第一资源文件中提取所述第一资源文件与所述第二资源文件;显示模块用于根据所述第一资源文件与所述第二资源文件,显示所述第一页面。
41.结合第七方面和上述实现方式,在第七方面的某些实现方式中,所述第二信息包括所述第一资源文件的起始位置相对于所述第一文件的起始位置的偏移量与所述第二资源文件的起始位置相对于所述第一文件的起始位置的偏移量。
42.结合第七方面和上述实现方式,在第七方面的某些实现方式中,所述第二信息包括所述第一资源文件的长度与所述第二资源文件的长度。
43.结合第七方面和上述实现方式,在第七方面的某些实现方式中,所述第二信息保存在所述第一文件或所述资源索引文件中。
44.结合第七方面和上述实现方式,在第七方面的某些实现方式中,所述第一资源文件与所述第二资源文件的类型相同。
45.结合第七方面和上述实现方式,在第七方面的某些实现方式中,所述第一文件的长度小于或等于预设阈值。
46.第八方面,提供一种装置,包括处理模块,处理模块用于获取第一页面的页面布局文件;处理模块还用于根据第一页面的页面布局文件,确定所述第一页面包括第一资源文件与第二资源文件;处理模块还用于对所述第一资源文件与所述第二资源文件进行合并,生成第一文件。
47.结合第八方面和上述实现方式,在第八方面的某些实现方式中,处理模块还用于根据所述第一页面的页面布局文件中包括的所述第一资源文件的标识与所述第二资源文件的标识,确定所述第一资源文件与所述第二资源文件属于所述第一页面。
48.结合第八方面和上述实现方式,在第八方面的某些实现方式中,所述第一文件中存储有所述第一资源文件的起始位置相对于所述第一文件的起始位置的偏移量与所述第二资源文件的起始位置相对于所述第一文件的起始位置的偏移量,和/或,所述第一文件中存储有所述第一资源文件的长度与所述第二资源文件的长度。
49.结合第八方面和上述实现方式,在第八方面的某些实现方式中,处理模块还用于生成资源索引文件,所述资源索引文件包括多个资源文件的索引、文件名与路径信息,所述多个资源文件包括所述第一资源文件与所述第二资源文件。
50.结合第八方面和上述实现方式,在第八方面的某些实现方式中,所述资源索引文件中存储有所述第一资源文件的起始位置相对于所述第一文件的起始位置的偏移量与所述第二资源文件的起始位置相对于所述第一文件的起始位置的偏移量,和/或,所述第一文件中存储有所述第一资源文件的长度与所述第二资源文件的长度。
51.结合第八方面和上述实现方式,在第八方面的某些实现方式中,所述第一资源文件与所述第二资源文件是根据所述第一页面的至少一个页面布局文件确定的。
52.结合第八方面和上述实现方式,在第八方面的某些实现方式中,所述第一资源文件与所述第二资源文件的类型相同。
53.结合第八方面和上述实现方式,在第八方面的某些实现方式中,所述第一文件的长度小于或等于预设阈值。
54.第九方面,提供一种装置,处理模块与显示模块,处理模块用于获取第一页面的页面布局文件;处理模块还用于根据第一页面的至少一个页面布局文件,确定所述第一页面包括第一资源文件与第二资源文件,所述第一信息包括所述第一文件的路径信息与文件名;处理模块还用于对所述第一资源文件与所述第二资源文件进行合并,生成第一文件;处理模块还用于根据资源索引文件,获取第一信息,所述资源索引文件包括多个资源文件的索引、文件名与路径信息,所述多个资源文件包括所述第一资源文件与所述第二资源文件;处理模块还用于根据所述第一信息,加载所述第一文件;处理模块还用于根据第一信息,加载所述第一文件;处理模块还用于根据第二信息,从所述第一文件中获取所述第一资源文件与所述第二资源文件,所述第二信息用于从所述第一资源文件中提取所述第一资源文件与所述第二资源文件;显示模块用于根据所述第一资源文件与所述第二资源文件,显示所述第一页面。
55.第十方面,本技术提供了一种计算机存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行上述任一方面任一项可能的方法。
56.第十一方面,本技术提供了一种计算机存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行上述任一方面任一项可能的生成文件的方法。
57.第十二方面,本技术提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述任一方面任一项可能的方法。
58.第十三方面,本技术提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述任一方面任一项可能的生成文件的方法。
附图说明
59.图1是本技术实施例提供的界面示意图;
60.图2是本技术实施例提供的一例电子设备的结构示意图;
61.图3中的(a)图是本技术实施例提供的生成文件的方法的一种应用场景的示意图;
62.图3中的(b)图是本技术实施例提供的生成文件的方法的又一种应用场景的示意图;
63.图3中的(c)图是本技术实施例提供的生成文件的方法的再一种应用场景的示意图;
64.图3中的(d)图是本技术实施例提供的生成文件的方法的再一种应用场景的示意图;
65.图4是本技术实施例提供的生成文件的方法的示意性流程图;
66.图5中的(a)图是本技术实施例提供的原始资源文件的合并过程的示意图;
67.图5中的(b)图是本技术实施例提供的合并文件的示意图;
68.图5中的(c)图是本技术实施例提供的资源索引文件的一例示意图;
69.图5中的(d)图是本技术实施例提供的资源索引文件的另一例示意图;
70.图6是本技术实施例提供的原始资源文件的另一例合并过程的示意图;
71.图7是本技术实施例提供的方法的示意性流程图;
72.图8是本技术实施例提供的原始资源文件的一例加载过程的示意图;
73.图9是本技术实施例提供的原始资源文件的另一例加载过程的示意图;
74.图10是本技术实施例提供的原始资源文件的再一例加载过程的示意图;
75.图11是本技术实施例提供的方法的另一示意性流程图。
具体实施方式
76.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。其中,在本技术实施例的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,在本技术实施例的描述中,“多个”是指两个或多于两个。
77.以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,例如本技术实施例中描述的“第一资源文件”、“第二资源文件”。
78.本技术实施例提供了一种生成文件的方法,在app的编译阶段对app的各个页面对应的页面布局文件进行解析,将属于同一页面的原始资源文件合并为一个文件,使得在页面显示时,当加载原始资源文件时,实际加载的是合并文件,并且从该合并文件中依次获取原始资源文件,无需在页面显示时对原始资源文件依次进行加载,从而在页面显示时减少加载资源文件的次数,提高页面的显示速度。在本技术实施例中,将合并前的资源文件称为原始资源文件,将对原始资源文件合并后生成的资源文件称为合并文件。
79.本技术实施例提供了一种方法,在页面显示时,通过加载合并文件,并且从该合并文件中依次获取原始资源文件,无需在页面显示时对原始资源文件依次进行加载,从而在页面显示时减少加载原始资源文件的次数,提高页面的显示速度。
80.本技术实施例提供的生成文件的方法与方法可以应用于增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、手机、平板电脑、可穿戴设备、车载设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本、个人数字助理(personal digital assistant,pda)等电子设备上。本技术实施例对电子设备的具体类型不作任何限制。
81.在介绍本技术实施例的方法之前,先介绍几个相关概念。
82.app的页面
83.app的页面可以理解为电子设备检测到用户启动app的操作时,响应于该操作,电子设备的显示界面所显示的内容,或者,也可以是app被启动后,电子设备检测到用户切换页面的操作时,响应于该操作,电子设备的显示界面所显示的内容。
84.例如,当app为华为游戏app时,app的页面可以理解为电子设备检测到用户启动华为游戏app的操作时,响应于该操作,电子设备的显示界面所显示的华为游戏app的首页,首页的界面内容101如图1中的(a)图所示,或者,也可以是华为游戏app被启动后,电子设备检测到用户由首页切换至关注页面的操作时,响应于该操作,电子设备所显示的关注页面,关注页面的界面内容102如图1中的(b)图所示。
85.app的页面布局文件与app的资源文件
86.页面布局文件与原始资源文件均为开发者在app的开发过程中的引入的文件,页
面布局文件用于描述该app的各个页面的显示所需的各类原始资源文件,其中,每个页面对应一个页面布局文件,电子设备在显示相应页面时,通过解析页面布局文件,确定当前页面的显示包括的原始资源文件,获取相应原始资源文件并将该原始资源文件通过电子设备的显示屏显示在页面的相应位置。
87.原始资源文件例如可以是app的页面中包括的图片、文本等。
88.资源索引文件
89.app开发完成之后,在app的编译阶段,可以针对app所引用的原始资源文件,生成原始资源文件索引,将页面布局文件中引用的原始资源文件的文件名替换为原始资源文件的索引,根据原始资源文件的索引、文件名以及路径信息生成资源索引文件。
90.需要说明的是,在本技术实施例中,资源索引文件中保存的是合并文件的文件名以及合并文件的路径信息。例如,将1.png与4.xml合并后,生成合并文件1-4.png,此时1.png与4.xml的文件名均是合并文件的文件名,因此,1.png的索引在资源索引文件中对应的文件名与4.xml的索引在资源索引文件中对应的文件名是一致的,1.png的索引在资源索引文件中对应的路径信息与4.xml的索引在资源索引文件中对应的路径信息是一致的。
91.此外,还可以针对页面布局文件生成索引,根据页面布局文件的索引、页面布局文件的文件名以及页面布局文件的路径信息生成资源索引文件。应理解,针对页面布局文件生成的资源索引文件与针对资源文件生成的资源索引文件可以是同一个文件,或者,也可以是不同的文件,本技术实施例对此不作限定。
92.例如,当app为华为游戏app时,电子设备在显示华为游戏app的首页时,根据获取到的页面布局文件的索引,在页面布局文件的资源索引文件中确定首页的页面布局文件的文件名以及路径信息,进而获取页面布局文件,根据首页对应的页面布局文件,确定首页的包括的资源文件的索引,根据该索引在资源索引文件中找到合并文件的文件名以及路径信息,进而获取合并文件,最终根据从合并文件中获取的原始资源文件完成首页的显示。
93.示例性的,图2是是本技术实施例提供的一例电子设备100的结构示意图。电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,usb)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,sim)卡接口195等。其中传感器模块180可以包括压力传感器180a,陀螺仪传感器180b,气压传感器180c,磁传感器180d,加速度传感器180e,距离传感器180f,接近光传感器180g,指纹传感器180h,温度传感器180j,触摸传感器180k,环境光传感器180l,骨传导传感器180m等。
94.可以理解的是,本技术实施例示意的结构并不构成对电子设备100的具体限定。在本技术另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
95.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,存储器,视频编解码
器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
96.其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
97.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
98.在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,i2c)接口,集成电路内置音频(inter-integrated circuit sound,i2s)接口,脉冲编码调制(pulse code modulation,pcm)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,uart)接口,移动产业处理器接口(mobile industry processor interface,mipi),通用输入输出(general-purpose input/output,gpio)接口,用户标识模块(subscriber identity module,sim)接口,和/或通用串行总线(universal serial bus,usb)接口等。
99.i2c接口是一种双向同步串行总线,包括一根串行数据线(serial data line,sda)和一根串行时钟线(derail clock line,scl)。在一些实施例中,处理器110可以包含多组i2c总线。处理器110可以通过不同的i2c总线接口分别耦合触摸传感器180k,充电器,闪光灯,摄像头193等。例如:处理器110可以通过i2c接口耦合触摸传感器180k,使处理器110与触摸传感器180k通过i2c总线接口通信,实现电子设备100的触摸功能。
100.i2s接口可以用于音频通信。在一些实施例中,处理器110可以包含多组i2s总线。处理器110可以通过i2s总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过i2s接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
101.pcm接口也可以用于音频通信,将模拟信号抽样,量化和编码。uart接口是一种通用串行数据总线,用于异步通信。mipi接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。mipi接口包括摄像头串行接口(camera serial interface,csi),显示屏串行接口(display serial interface,dsi)等。在一些实施例中,处理器110和摄像头193通过csi接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过dsi接口通信,实现电子设备100的显示功能。
102.gpio接口可以通过软件配置。gpio接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,gpio接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。gpio接口还可以被配置为i2c接口,i2s接口,uart接口,mipi接口等。
103.usb接口130是符合usb标准规范的接口,具体可以是mini usb接口,micro usb接口,usb type c接口等。usb接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如ar设备等。
104.可以理解的是,本技术实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本技术另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
105.充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
106.电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
107.电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
108.电子设备100通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
109.显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,lcd),有机发光二极管(organic light-emitting diode,oled),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,amoled),柔性发光二极管(flex light-emitting diode,fled),miniled,microled,micro-oled,量子点发光二极管(quantum dot light emitting diodes,qled)等。在一些实施例中,电子设备100可以包括1个或n个显示屏194,n为大于1的正整数。
110.电子设备100可以通过isp,摄像头193,视频编解码器,gpu,显示屏194以及应用处理器等实现拍摄功能。
111.isp用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给isp处理,转化为肉眼可见的图像。isp还可以对图像的噪点,亮度,肤色进行算法优化。isp还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,isp可以设置在摄像头193中。
112.摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,电子设备100可以包括1个或n个摄像头193,n为大于1的正整数。
113.数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。视频编解码器用于对数字视频压缩或解压缩。npu为神经网络(neural-network,nn)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模
式,对输入信息快速处理,还可以不断的自学习。通过npu可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
114.内部存储器121可以包括一个或多个随机存取存储器(random access memory,ram)和一个或多个非易失性存储器(non-volatile memory,nvm)。
115.随机存取存储器可以包括静态随机存储器(static random-access memory,sram)、动态随机存储器(dynamic random access memory,dram)、同步动态随机存储器(synchronous dynamic random access memory,sdram)、双倍资料率同步动态随机存取存储器(double data rate synchronous dynamic random access memory,ddr sdram,例如第五代ddr sdram一般称为ddr5 sdram)等。
116.非易失性存储器可以包括磁盘存储器件、快闪存储器(flash memory)。
117.快闪存储器按照运作原理划分可以包括nor flash、nand flash、3d nand flash等,按照存储单元电位阶数划分可以包括单阶存储单元(single-level cell,slc)、多阶存储单元(multi-level cell,mlc)、三阶储存单元(triple-level cell,tlc)、四阶储存单元(quad-level cell,qlc)等,按照存储规范划分可以包括通用闪存存储(英文:universal flash storage,ufs)、嵌入式多媒体存储卡(embedded multi media card,emmc)等。
118.随机存取存储器可以由处理器110直接进行读写,可以用于存储操作系统或其他正在运行中的程序的可执行程序(例如机器指令),还可以用于存储用户及应用程序的数据等。
119.非易失性存储器也可以存储可执行程序和存储用户及应用程序的数据等,可以提前加载到随机存取存储器中,用于处理器110直接进行读写。外部存储器接口120可以用于连接外部的非易失性存储器,实现扩展电子设备100的存储能力。外部的非易失性存储器通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部的非易失性存储器中。
120.电子设备100可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。电子设备100的按键190可以包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。sim卡接口195用于连接sim卡。
121.此外,电子设备100还包括各种不同传感器,例如,压力传感器180a用于感受压力信号,可以将压力信号转换成电信号。陀螺仪传感器180b可以用于确定电子设备100的运动姿态。气压传感器180c用于测量气压。磁传感器180d包括霍尔传感器。加速度传感器180e可检测电子设备100在各个方向上(一般为三轴)加速度的大小。距离传感器180f,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备100可以利用距离传感器180f测距以实现快速对焦。接近光传感器180g可以包括例如发光二极管(led)和光检测器,例如光电二极管。环境光传感器180l用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。指纹传感器180h用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。触摸传感器180k,也称“触控面板”。触摸传感器180k可以设置于显示屏194,由触摸
139.resource6=“3.xml/”140.根据上述代码,可以确定原始资源文件1.png与原始资源文件4.xml属于页面1,原始资源文件2.png与原始资源文件5.xml属于页面2,原始资源文件6.jaon与原始资源文件3.xml属于页面3,可以将原始资源文件1.png与原始资源文件4.xml合并为一个文件,将原始资源文件2.png与原始资源文件5.xml合并为一个文件,可以将原始资源文件3.xml与原始资源文件6.jaon合并为一个文件。例如,在合并原始资源文件时,可以将原始资源文件1.png与原始资源文件4.xml放在命名为1-4.png合并文件中,可以将原始资源文件2.png与原始资源文件5.xml放在命名为2-5.png的文件中,可以将原始资源文件3.xml与原始资源文件6.jaon放在命名为3-6.xml的文件中,合并过程如图5中的(a)图所示。
141.方法200中的第一页面可以对应页面1、页面2与页面3中的任意一种,对于页面1,第一资源文件可以对应1.png,第二资源文件可以对应4.xml,第一文件可以对应1.png与4.xml合并后生成的文件;对于页面2,第一资源文件可以对应2.png,第二资源文件可以对应5.xml,第一文件可以对应2.png与5.xml合并后生成的文件;对于页面3,第一资源文件可以对应3.xml,第二资源文件可以对应6.jaon,第一文件可以对应3.xml与6.jaon合并后生成的文件。
142.在将第一资源文件与第二资源文件合并为第一文件后,为了使得显示页面时能够在第一文件中准确找到第一资源文件与第二资源文件,就需要知道第一资源文件的起始位置相对于第一文件的起始位置的偏移量(offset)以及第一资源文件的长度(length),并且需要知道第二资源文件的起始位置相对于第一文件的起始位置的偏移量以及第二资源文件的长度。
143.为了达到该目的,在一种实现方式中,可以在生成第一文件时记录第一资源文件的起始位置相对于第一文件的起始位置的偏移量与第二资源文件的起始位置相对于第一文件的起始位置的偏移量。需要说明的是,以下是基于第一资源文件的起始位置相对于第一文件的起始位置的偏移量小于第二资源文件的起始位置相对于第一文件的起始位置的偏移量进行描述的。换句话说,在生成第一文件时,可以将第一资源文件先放在第一文件中,再将第二资源文件追加在第一资源文件的后面。
144.假设用户在电子设备上安装了华为游戏app,在进行页面显示时,华为游戏app可以根据第一资源文件的起始位置相对于第一文件的起始位置的偏移量,确定第一资源文件的起始位置,根据第一资源文件的起始位置相对于第一文件的起始位置的偏移量与第二资源文件的起始位置相对于第一文件的起始位置的偏移量的差值,确定第一资源文件的长度,从而从第一文件中获取第一资源文件。
145.华为游戏app可以根据第二资源文件的起始位置相对于第一文件的起始位置的偏移量,确定第二资源文件的起始位置,由于第一文件仅包括第一资源文件与第二资源文件,则可以在第一文件中将从第二资源文件的起始位置起的剩余文件均作为第二资源文件进行获取,最终根据第一资源文件与第二资源文件进行页面的显示。
146.在另一种实现方式中,可以在生成第一文件时记录第一资源文件的长度与第二资源文件的长度。
147.假设用户在电子设备上安装了华为游戏app,在进行页面显示时,华为游戏app可以根据第一资源文件的长度,确定第二资源文件的起始位置,并结合第二资源文件的长度,
从第一文件中获取第一资源文件。
148.假设第一资源文件的起始位置相对于第一文件的起始位置的偏移量为0,则华为游戏app可以根据第一资源文件的长度,从第一文件中获取第一资源文件,最终根据第一资源文件与第二资源文件进行页面的显示。
149.在再一种实现方式中,可以在生成第一文件时记录第一资源文件的起始位置相对于第一文件的起始位置的偏移量、第二资源文件的起始位置相对于第一文件的起始位置的偏移量、第一资源文件的长度以及第二资源文件的长度。
150.需要说明的是,在对原始资源文件进行合并时,两个原始资源文件之间可以存在空隙,换句话说,第二资源文件的起始位置与第一资源文件的终止位置并不相邻,而是中间存在空隙,或者,中间保存了其他数据,此时在根据第一资源文件的长度确定第二资源文件的起始位置相对于第一文件的起始位置的偏移量时,则需要将第一资源文件的终止位置与第二资源文件的起始位置之间间隔的长度考虑在内,或者,在根据第一资源文件的起始位置相对于第一文件的起始位置的偏移量与第二资源文件的起始位置相对于第一文件的起始位置的偏移量,确定第一资源文件的长度时,需要将第一资源文件的终止位置与第二资源文件的起始位置之间间隔的长度考虑在内。
151.可选地,可以将生成第一文件时记录的信息保存在第一文件中。此处假设生成第一信息时记录的信息包括第一资源文件的起始位置相对于第一文件的起始位置的偏移量、第二资源文件的起始位置相对于第一文件的起始位置的偏移量、第一资源文件的长度以及第二资源文件的长度。
152.例如,如图5中的(b)图所示,1.png与4.xml在页面1的合并文件中,可以将1.png在合并文件中的偏移量、1.png的长度与1.png的索引作为一个整体保存在页面1的合并文件中,将4.xml在合并文件中的偏移量、1.png的长度与1.png的索引保存在页面1的合并文件中。
153.2.png、5.xml在页面2的合并文件中,可以将2.png在合并文件中的偏移量、2.png的长度与2.png的索引作为一个整体保存在页面2的合并文件中,将5.xml在合并文件中的偏移量、5.xml的长度与5.xml的索引作为一个整体保存在页面2的合并文件中。
154.3.xml、6.jaon在页面3的合并文件中,可以将3.xml在合并文件中的偏移量、3.xml的长度与3.xml的索引作为一个整体保存在页面3的合并文件中,将6.jaon在合并文件中的偏移量、6.jaon的长度与6.jaon的索引作为一个整体保存在页面3的合并文件中。
155.将原始资源文件的索引与原始资源文件在合并文件中的偏移量、原始资源文件的长度作为一个整体的保存在合并文件中,是为了在页面显示阶段电子设备能够根据原始资源文件的索引确定与原始资源文件相对应的偏移量与长度,例如,在页面显示阶段,电子设备在合并文件中可以根据id001确定1.png在合并文件中的偏移量以及1.png的长度,可以根据id004确定4.xml在合并文件中的偏移量以及4.xml的长度。
156.需要说明的是,上述保存在合并文件中的原始资源文件的索引也可以是其他能够指示原始资源文件的标识,例如,可以是原始资源文件的文件名,本技术实施例对此不做限定。
157.可选地,可以将生成第一文件时记录的信息保存在资源索引文件中。此处假设生成第一信息时记录的信息包括第一资源文件的起始位置相对于第一文件的起始位置的偏
移量、第二资源文件的起始位置相对于第一文件的起始位置的偏移量、第一资源文件的长度以及第二资源文件的长度。
158.假设华为游戏app引用的原始资源文件包括1.png、2.png、3.png、4.xml、5.xml、6.jaon,在编译阶段,为1.png、2.png、3.png、4.xml、5.xml、6.jaon生成的资源索引文件如图5中的(c)图所示,其中,图5中的(c)图中id001、id002、id003、id004、id005、id006是分别为1.png、2.png、3.png、4.xml、5.xml、6.jaon生成的索引,需要说明的是,图5中的(c)图中未示出每个合并文件的文件名以及路径信息。
159.例如,1.png与4.xml在页面1的合并文件中,可以将1.png在合并文件中的偏移量与1.png的长度保存在1.png的索引id001对应的索引关系中,将4.xml在合并文件中的偏移量与4.xml的长度保存在4.xml的索引id004对应的索引关系中。例如,2.png、5.xml在页面2的合并文件中,可以将2.png在合并文件中的偏移量与2.png的长度保存在id002对应的索引关系中,将5.xml在合并文件中的偏移量与5.xml的长度保存在id005对应的索引关系中。例如,3.xml、6.jaon在页面3的合并文件中,可以将3.xml在合并文件中的偏移量与3.xml的长度保存在id003对应的索引关系中,将在6.jaon合并文件中的偏移量与6.jaon的长度保存在id006对应的索引关系中。其中,保存有原始资源文件在合并文件中的偏移量、原始资源文件的长度的资源索引文件如图5中的(d)图所示。
160.其中,将原始资源文件在合并文件中的偏移量、原始资源文件的长度保存在原始资源文件的索引对应的索引关系中,可以理解为:将原始资源文件在合并文件中的偏移量、原始资源文件的长度作为一个整体保存在资源索引文件中。
161.需要说明的是,在具体实现时,每个页面可以包括一个页面布局文件,或者,每个页面可以包括两个或者多个页面布局文件,例如,对于页面1,页面1的页面布局文件中可以包括如下代码:
162.resource1=“1.png/”163.include=“1”164.根据上述代码,可以确定原始资源文件1.png属于页面1,还可以确定页面1还包括索引为1的页面布局文件,因此,可以进一步根据索引为1的页面布局文件,确定页面1包括的其他原始资源文件。例如,索引为1的页面布局文件包括如下代码:
165.resource2=“4.xml/”166.根据上述代码,可以确定原始资源文件4.xml也属于页面1,因此,可以将原始资源文件1.png与原始资源文件4.xml合并为一个文件。
167.需要说明的是,上述仅以某一个页面包括两个原始资源文件为例,对方法200进行了说明,但本技术实施例并不限定页面所包括的原始资源文件的数量,方法200同样适用于一个页面包括多个原始资源文件的情况。
168.在本技术实施例中,还可以对具有关联关系的不同页面的原始资源文件进行合并,生成合并文件,下面对该方法进行说明。
169.在华为游戏app的编译阶段,打包工具根据页面的页面布局文件,从原始资源文件中确定出属于具有关联关系的不同页面的原始资源文件,将该原始资源文件合并后生成一个合并文件。
170.例如,在华为游戏app的编译阶段,打包工具分别根据华为游戏app的三个页面布
局文件,生成合并文件。这三个页面布局文件分别对应华为游戏app的三个页面,记为页面4、页面5与页面6。
171.例如,页面4的页面布局文件中包括如下代码:
172.related=“5”173.resource7=“1.png/”174.resource8=“5.xml/”175.页面5的页面布局文件中包括如下代码:
176.related=“4”177.resource9=“2.png/”178.resource10=“6.jaon/”179.页面6的页面布局文件中包括如下代码:
180.resource11=“3.png/”181.resource12=“4.xml/”182.根据上述代码,可以确定页面4与页面5是存在关联关系的页面,并且确定原始资源文件1.png与原始资源文件5.xml属于页面4,原始资源文件2.png与原始资源文件6.jaon属于页面5,原始资源文件3.png与原始资源文件4.xml属于页面6。
183.因此,在对原始资源文件进行合并时,可以将原始资源文件1.png、原始资源文件5.xml、原始资源文件2.png与原始资源文件6.jaon合并为一个文件,将原始资源文件3.png与原始资源文件4.xml合并为一个文件。例如,在合并资源文件时,可以将原始资源文件1.png、原始资源文件5.xml、原始资源文件2.png与原始资源文件6.jaon放在命名为1-2-5-6.png的文件中,合并过程如图6所示。
184.其中,具有关联关系的页面通常可以是app启动后接连显示的页面,例如,上述页面4与页面5例如可以分别是华为游戏app启动后显示的欢迎页与首页,或者,具有关联关系的页面例如可以是根据用户的操作习惯确定的页面,例如,华为游戏app启动后向用户显示的是首页,根据用户的操作习惯,用户通常会进行从首页切换至关注页面的操作,此时,上述页面4与页面5例如可以分别是华为游戏app启动后显示的首页与关注页面。
185.为了加快电子设备的显示速度,可以在页面4的页面布局文件中通过related=“5”声明页面4与页面5存在关联关系,在页面5的页面布局文件中通过related=“4”声明页面5与页面4存在关联关系,使得在编译阶段,打包工具可以根据页面4与页面5的页面布局文件,确定页面4与页面5存在关联关系,并将这两个页面的页面布局文件中引用的原始资源文件合并为一个文件。
186.需要说明的是,方法200中的其他描述同样适用于该方法,具体请参考方法200中的相关描述,为了简洁,此处不再赘述。
187.在本技术实施例中,对于需要将多个原始资源文件进行合并,生成一个合并文件的情况,由于合并文件的大小对加载速度产生影响,在生成合并文件时,可以将合并文件的长度因素考虑在内。
188.例如,可以规定合并文件的长度小于或等于预设阈值,如果合并文件的长度大于预设阈值,则可以将合并文件拆分为至少两个文件,以使合并文件的长度满足要求。
189.例如,将1.png、4.xml、7.png、8.xml合并后生成的合并文件的长度为120kb,假设
预设阈值的取值为64kb,由于合并后文件的长度大于64kb,可以将合并文件拆分为满足要求的至少两个文件,例如,可以将1.png与4.xml合并为一个文件,将7.png、8.xml合并为一个文件,即将原始资源文件1.png、4.xml、7.png、8.xml合并为两个文件,以使合并文件的长度满足要求。
190.进一步地,在将多个原始资源文件合并为至少两个文件时,可以将相同格式的文件合并为同一个资源文件,例如,可以将1.png、7.png合并为一个文件,将4.xml、8.xml合并为一个资源文件。
191.以上介绍了在编译阶段生成合并文件的方法,然而合并的目的是为了在app启动后加快页面显示的速度,下面对app启动后,本技术实施例提供的方法300进行介绍。
192.当用户在电子设备上启动了某款app或者用户在该app启动后进行了页面切换操作,此时电子设备会根据用户的操作,向用户显示相应的页面。
193.例如,用户在电子设备上启动了华为游戏app,此时,电子设备需要向用户显示的页面可以是华为游戏app的首页,首页的界面内容101如图1中的(a)图所示;或者,用户在界面内容101上,进行了从首页切换至关注页面的操作,例如,用户在界面内容101上点击了关注选项,此时,电子设备需要向用户显示关注页面,关注页面的界面内容102如图1中的(b)图所示。
194.图7示出了本技术实施例提供的方法300的示意性流程图。方法300包括以下步骤。值得一提的是,本技术实施例涉及的加载文件的过程,可以是先将文件从非易失性存储器中读取出来,再将读取到的文件存储到随机存取存储器的过程。通过将合并文件从非易失性存储器存储到随机存取存储器,可以使得从合并文件中连续读取原始资源文件,
195.步骤310,根据资源索引文件,获取第一信息,资源索引文件包括多个资源文件的索引、文件名与路径信息,多个资源文件包括第一资源文件与第二资源文件,第一信息包括第一文件的路径信息与文件名。
196.步骤320,根据第一信息,加载第一文件,第一文件是由第一资源文件与第二资源文件合并后生成的,第一资源文件与第二资源文件属于第一页面。
197.步骤330,根据第二信息,从第一文件中获取第一资源文件与第二资源文件,第二信息用于从第一资源文件中提取第一资源文件与第二资源文件。
198.步骤340,根据第一资源文件与第二资源文件,电子设备显示第一页面。
199.以下以电子设备显示首页、或显示首页与关注页为例,对本技术实施例提供的加载资源的方法300分场景进行说明。
200.场景1,在编译阶段,将首页包括的两个原始资源文件合并为了一个文件。
201.例如,如图8所示,在显示首页时,电子设备解析首页的页面布局文件,确定首页包括的原始资源文件的索引为id001、id004,之后依次加载id001、id004对应的原始资源文件,以显示首页。
202.例如,假设电子设备最先加载的是id001对应的原始资源文件,由于在编译阶段,将首页包括的id001对应的原始资源文件1.png与id004对应的原始资源文件4.xml合并为了一个文件,因此,在加载id001对应的原始资源文件时,实际加载的是合并文件。
203.在加载id001对应的原始资源文件时,电子设备根据资源索引文件,确定id001对应的文件名以及路径信息,此处的文件名以及路径信息是合并文件的文件名以及路径信
息,根据文件名以及路径信息,电子设备加载合并文件。
204.在完成合并文件的加载后,电子设备需要从合并文件中读取id001对应的原始资源文件,此时,可以根据确定的id001对应的原始资源文件在合并文件中的偏移量以及id001对应的原始资源文件的长度,从合并文件中读取id001对应的原始资源文件,并根据id001对应的原始资源文件显示首页。关于确定id001对应的原始资源文件在合并文件中的偏移量以及id001对应的原始资源文件的长度的方法请参考方法200中的相关描述,为了简洁,此处不再赘述。
205.在加载id004对应的原始资源文件时,电子设备根据资源索引文件,确定id004对应的文件名以及路径信息,这里根据id004从资源索引文件中确定的文件名与路径信息与根据id001从资源索引文件中确定的文件名与路径信息是一致的,电子设备在加载id004对应的原始资源文件时,实际加载的是合并文件,但由于在加载id001对应的原始资源文件时已经完成了合并文件的加载,因此,电子设备可以忽略本次加载,直接从已经加载的合并文件中读取id004对应的原始资源文件,并根据id004对应的原始资源文件显示首页。
206.值得一提的是,在完成合并文件的加载后,会延迟释放加载内容,换句话说,在完成合并文件的加载后,不会立即释放加载的内容,而是要等到合并文件中的原始资源文件全部被读取之后,才有可能释放加载的内容。
207.例如,可以在合并文件中对已经获取的原始资源文件进行标记,当合并文件中的所有原始资源均被标记之后,代表合并文件中的所有原始资源文件均被读取,此时可以释放合并文件。
208.方法300中的第一页面可以对应首页,第一资源文件可以对应id001对应的原始资源文件,第二资源文件可以对应id004对应的原始资源文件,第一文件可以对应id001对应的原始资源文件与id004对应的原始资源文件合并后生成的文件,第一信息可以对应合并文件的文件名以及路径信息,第一文件可以对应合并文件。场景2,在编译阶段,将首页包括的多个原始资源文件合并为了一个文件。
209.例如,如图9所示,在显示首页时,电子设备解析首页的页面布局文件,确定首页包括的原始资源文件的索引为id001、id002、id004、id006,之后依次加载id001、id002、id004、id006对应的原始资源文件,以显示首页。
210.例如,假设电子设备最先加载的是id001对应的原始资源文件,由于在编译阶段,将首页包括的id001对应的原始资源文件1.png、id002对应的原始资源文件2.png、id004对应的原始资源文件4.xml、id006对应的原始资源文件6.json合并为了一个文件,因此,在加载id001对应的原始资源文件时,实际加载的是合并文件。
211.在加载id001对应的原始资源文件时,电子设备根据资源索引文件,确定id001对应的文件名以及路径信息,此处的文件名以及路径信息是合并文件的文件名以及路径信息,根据文件名以及路径信息,电子设备加载合并文件。
212.在完成合并文件的加载后,电子设备需要从合并文件中读取id001对应的原始资源文件,此时,可以根据确定的id001对应的原始资源文件在合并文件中的偏移量以及id001对应的原始资源文件的长度,从合并文件中读取id001对应的原始资源文件,并根据id001对应的原始资源文件显示首页。关于确定id001对应的原始资源文件在合并文件中的偏移量以及id001对应的原始资源文件的长度的方法请参考方法200中的相关描述,为了简
洁,此处不再赘述。
213.下面以id002对应的原始资源文件的加载过程为例,对首页的其他原始资源文件的加载过程进行简要说明。
214.在加载id002对应的原始资源文件时,电子设备根据资源索引文件,确定id002对应的文件名以及路径信息,这里根据id002从资源索引文件中确定的文件名与路径信息与根据id001从资源索引文件中确定的文件名与路径信息是一致的,电子设备在加载id002对应的原始资源文件时,实际加载的是合并文件,但由于在加载id001对应的原始资源文件时已经完成了合并文件的加载,因此,电子设备可以忽略本次加载,直接从已经加载的合并文件中读取id002对应的原始资源文件,并根据id002对应的原始资源文件显示首页。
215.关于电子设备在合并文件读取id002对应的原始资源文件的方法请参考前述在合并文件中读取id001对应的原始资源文件的方法,关于加载id004对应的原始资源文件的方法、加载id006对应的原始资源文件的方法请参考场景1中的id004对应的原始资源文件的加载过程,或,请参考场景2中的id002对应的原始资源文件的加载过程,为了简洁,此处不再赘述。
216.值得一提的是,在完成合并文件的加载后,会延迟释放加载内容,换句话说,在完成合并文件的加载后,不会立即释放加载的内容,而是要等到合并文件中的原始资源文件全部被读取之后,才有可能释放加载的内容。
217.例如,可以在合并文件中对已经获取的原始资源文件进行标记,当合并文件中的所有原始资源均被标记之后,代表合并文件中的所有原始资源文件均被读取,此时可以释放合并文件。
218.场景3,在编译阶段,将具有关联关系的页面的原始资源文件合并为了一个文件,此处具有关联关系的页面例如可以是首页与关注页面。
219.例如,如图10所示,在显示首页时,电子设备解析首页的页面布局文件,确定首页包括的资源文件的索引为id001、id005,之后依次加载id001、id005对应的原始资源文件,以显示首页。
220.例如,假设电子设备最先加载的是id001对应的原始资源文件,由于在编译阶段,将首页包括的原始资源文件1.png、原始资源文件5.xml与首页包括的原始资源文件2.png、原始资源文件6.jaon合并为了一个文件,因此,在加载id001对应的原始资源文件时,实际加载的是合并文件。
221.在加载id001对应的原始资源文件时,电子设备根据资源索引文件,确定id001对应的文件名以及路径信息,此处的文件名以及路径信息是合并文件的文件名以及路径信息,根据文件名以及路径信息,电子设备加载合并文件。
222.在完成合并文件的加载后,电子设备需要从合并文件中读取id001对应的原始资源文件,此时,可以根据确定的id001对应的原始资源文件在在合并文件中的偏移量与id001对应的原始资源文件的长度,从合并文件中读取id001对应的原始资源文件,并根据id001对应的原始资源文件显示首页。关于确定id001对应的原始资源文件在合并文件中的偏移量以及id001对应的原始资源文件的长度的方法请参考方法200中的相关描述,为了简洁,此处不再赘述。
223.关于首页包括的另一原始资源文件,即id005对应的原始资源文件的加载过程请
参考场景1中的id004对应的原始资源文件的加载过程,或,请参考场景2中的id002对应的原始资源文件的加载过程,为了简洁,此处不再赘述。
224.首页显示完成之后,用户进行了从首页切换至关注页面的操作,此时电子设备需要显示关注页面,在显示关注页面时,电子设备解析关注页面的页面布局文件,确定关注页面包括的资源文件的索引为id002、id006,之后依次加载id002、id006对应的原始资源文件,以显示关注页面。
225.例如,假设电子设备最先加载的是id002对应的原始资源文件,电子设备根据资源索引文件,确定id002对应的文件名以及路径信息,这里根据id002从资源索引文件中确定的文件名与路径信息与根据id001从资源索引文件中确定的文件名与路径信息是一致的,电子设备在加载id002对应的原始资源文件时,实际加载的是合并文件,但由于在加载id001对应的原始资源文件时已经完成了合并文件的加载,因此,电子设备可以忽略本次加载,直接从已经完成加载的合并文件中读取id002对应的原始资源文件,并根据id002对应的原始资源文件显示关注页面。
226.关于电子设备在合并文件读取id002对应的原始资源文件的方法请参考前述在合并文件读取id001对应的原始资源文件的方法,关于id006对应的原始资源文件的加载过程请参考场景1中的id004对应的原始资源文件的加载过程,或,请参考场景2中的id002对应的原始资源文件的加载过程,为了简洁,此处不再赘述。
227.值得一提的是,在完成合并文件的加载后,会延迟释放加载的内容,换句话说,在完成合并文件的加载后,不会立即释放加载的内容,而是要等到合并文件中的原始资源文件全部被读取之后,才有可能释放加载的内容。
228.例如,可以在合并文件中对已经获取的原始资源文件进行标记,当合并文件中的所有原始资源均被标记之后,代表合并文件中的所有原始资源文件均被读取,此时可以释放合并文件。
229.应理解,场景1至场景3中涉及的加载顺序仅作为示例性说明,并不对本技术实施例构成任何限定,在具体实现时,并不对原始资源文件的加载顺序进行限定。
230.图11示出了本技术实施例提供的另一种方法400的示意性流程图。方法400包括以下步骤。
231.步骤410,获取第一页面的页面布局文件。
232.步骤420根据第一页面的页面布局文件,确定第一页面包括第一资源文件与第二资源文件。
233.步骤430,对第一资源文件与第二资源文件进行合并,生成第一文件。
234.步骤440,根据资源索引文件,获取第一信息,资源索引文件包括多个资源文件的索引、文件名与路径信息,多个资源文件包括第一资源文件与第二资源文件,第一信息包括第一文件的路径信息与文件名。
235.步骤450,根据第一信息,加载第一文件。
236.步骤460,根据第二信息,从第一文件中获取第一资源文件与第二资源文件,第二信息用于从述第一资源文件中提取第一资源文件与第二资源文件。
237.步骤470,根据第一资源文件与第二资源文件,电子设备显示第一页面。
238.关于步骤410至430的具体实现请参考方法200中的相关描述,关于步骤440至470
的具体实现请参考方法300中的相关描述,为了简洁,此处不再赘述。
239.此外,本技术实施例还提供了一种文件,该文件包括资源索引文件与第一文件。
240.关于上述文件中的资源索引文件与第一文件的更具体的描述,请参考前述相关描述,为了简洁,此处不再赘述。可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本技术能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
241.本实施例可以根据上述方法示例对电子设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,例如处理模块、显示模块等,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块可以采用硬件的形式实现。需要说明的是,本实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
242.需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
243.本实施例提供的电子设备,用于执行上述生成文件的方法或方法,因此可以达到与上述实现方法相同的效果。
244.在采用集成的单元的情况下,电子设备还可以包括处理模块、存储模块和通信模块。其中,处理模块可以用于对电子设备的动作进行控制管理。存储模块可以用于支持电子设备执行存储程序代码和数据等。通信模块,可以用于支持电子设备与其他设备的通信。
245.其中,处理模块可以是处理器或控制器。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理(digital signal processing,dsp)和微处理器的组合等等。存储模块可以是存储器。通信模块具体可以为射频电路、蓝牙芯片、wi-fi芯片等与其他电子设备交互的设备。
246.在一个实施例中,当处理模块为处理器,存储模块为存储器时,本实施例所涉及的电子设备可以为具有图2所示结构的设备。
247.本实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,使得电子设备执行上述相关方法步骤实现上述实施例中的生成文件的方法或方法。
248.本实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的生成文件的方法或方法。
249.另外,本技术的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的生成文件的方法或方法。
250.其中,本实施例提供的电子设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的
方法中的有益效果,此处不再赘述。
251.通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
252.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
253.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
254.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
255.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
256.以上内容,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献