CN111417927B - 资源权限处理方法、装置、存储介质及芯片 - Google Patents
资源权限处理方法、装置、存储介质及芯片 Download PDFInfo
- Publication number
- CN111417927B CN111417927B CN201880077310.XA CN201880077310A CN111417927B CN 111417927 B CN111417927 B CN 111417927B CN 201880077310 A CN201880077310 A CN 201880077310A CN 111417927 B CN111417927 B CN 111417927B
- Authority
- CN
- China
- Prior art keywords
- resource
- configuration file
- path information
- terminal device
- label
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
Abstract
一种资源权限处理方法、装置、存储介质及芯片,在对终端设备的系统软件进行版本升级时,可以根据第一资源权限配置文件,更新终端设备的资源的标签(S202)。由于第一资源权限配置文件仅涵盖系统软件版本升级前后标签发生变化的路径信息,因此,在对终端设备上存储的资源更新标签的过程中,在第一资源权限配置文件中查找与所遍历的资源的路径信息匹配的路径信息时的匹配量大大减少,可以减少为存储的资源打标签的所耗费的时间,进而可以提高打标签的效率,从而可以减少系统软件版本升级所耗费的时间,提高了系统软件版本升级的效率。
Description
技术领域
本申请实施例涉及通信技术,尤其涉及一种资源权限处理方法、装置、存储介质及芯片。
背景技术
随着终端设备的存储器件的容量越来越大、以及,克隆软件等的广泛使用,终端设备中存储的资源越来越多,例如照片、通讯录、音乐等。在终端设备中,资源的属性信息包括资源的标签,用于标记该资源的访问权限,即终端设备的哪些进程或哪些服务对该资源具有访问权限。
目前,终端设备的系统软件版本升级包中携带有系统软件的新版本对应的资源权限配置文件,该资源权限配置文件包括:文件路径信息,以及,每个文件或路径信息对应的标签。其中,该资源权限配置文件涵盖所有资源的路径信息。终端设备在对系统软件进行版本升级时,每在存储器件中遍历到一个资源,终端设备在资源权限配置文件中查找与该资源的路径信息匹配的路径信息。然后,终端设备可以将匹配的路径信息所对应的标签,与该资源当前的标签(即未升级前的标签)进行比对。在确定两个标签不同时,终端设备为该资源打上前述匹配的路径信息所对应的标签,以更新该资源的访问权限。
但是,在对系统软件进行版本升级的过程中,采用上述方式为终端设备中的资源打标签时,需要耗费较长的时间来打标签,使得打标签的效率较低,进而使得版本升级的耗时长,用户体验较差。
发明内容
本申请实施例提供一种资源权限处理方法、装置、存储介质及芯片,用于解决终端设备在系统软件版本升级时,为资源打标签的效率较低,进而导致系统软件版本升级的耗时长,用户体验较差的技术问题的技术问题。
第一方面,本申请实施例提供一种资源权限处理方法,该方法可以应用于终端设备、也可以应用于终端设备中的芯片。下面以应用于终端设备为例对该方法进行描述,该方法包括:
在对终端设备的系统软件进行版本升级时,获取第一资源权限配置文件,所述第一资源权限配置文件包括:至少一个第一路径信息,以及,与每个所述第一路径信息在第二资源权限配置文件中对应的标签,所述第二资源权限配置文件为系统软件的新版本对应的资源权限配置文件,第三资源权限配置文件为系统软件的旧版本对应的资源权限配置文件,所述第一路径信息为所述第二资源权限配置文件中与所述第三资源权限配置文件中路径信息相同、但对应不同标签的路径信息;
根据所述第一资源权限配置文件,更新所述终端设备的资源的标签。
通过第一方面提供的资源权限处理方法,由于第一资源权限配置文件仅涵盖系统软件版本升级前后标签发生变化的路径信息,以及,这些路径信息对应的标签。因此,终端设备在对终端设备上存储的资源更新标签时,终端设备在第一资源权限配置文件中查找与所遍历的资源的路径信息匹配的路径信息时的匹配量减少,可以减少为存储的资源打标签的所耗费的时间,进而可以提高打标签的效率,从而可以减少系统软件版本升级所耗费的时间,提高了系统软件版本升级的效率。
在一种可能的设计中,所述获取第一资源权限配置文件之前,所述方法还包括:
获取所述第二资源权限配置文件和所述第三资源权限配置文件;
将所述第二资源权限配置文件中的每个路径信息对应的标签,与,每个所述路径信息在所述第三资源权限配置文件中对应的标签进行比较,将标签不同的路径信息作为所述第一路径信息;
根据每个所述第一路径信息,以及,每个所述第一路径信息在所述第二资源权限配置文件中对应的标签,生成所述第一资源权限配置文件;
存储所述第一资源权限配置文件。
通过该可能的设计提供的资源权限处理方法,通过对所获取的第二资源权限配置文件和第三资源权限配置文件进行比较,可以得出两个资源权限配置文件中标签不同的路径信息,进而可以基于这些路径信息和标签,生成仅涵盖系统软件版本升级前后标签发生变化的路径信息的第一资源权限配置文件。因此,终端设备在根据第一资源权限配置文件,对终端设备上存储的资源更新标签时,终端设备在第一资源权限配置文件中查找与所遍历的资源的路径信息匹配的路径信息时的匹配量减少,可以减少为存储的资源打标签的所耗费的时间,进而可以提高打标签的效率,从而可以减少系统软件版本升级所耗费的时间,提高了系统软件版本升级的效率。
在一种可能的设计中,所述存储所述第一资源权限配置文件之前,所述方法还包括:
对所述第一资源权限配置文件进行加密和签名。
通过该可能的设计提供的资源权限处理方法,通过在存储该第一资源权限配置文件之前,对第一资源权限配置文件进行加密和签名,可以避免非法软件或者黑客恶意更改该第一资源权限配置文件中的内容,确保终端设备在系统软件版本升级过程中的安全,提高了用户体验。
在一种可能的设计中,所述获取所述第二资源权限配置文件和所述第三资源权限配置文件,包括:
在解析系统软件版本升级包之前,获取存储在所述终端设备中的所述第三资源权限配置文件;
在解析所述系统软件版本升级包时,获取所述系统软件版本升级包中携带的所述第二资源权限配置文件。
在一种可能的设计中,所述根据所述第一资源权限配置文件,更新所述终端设备的资源的标签,包括:
在所述第一路径信息含有正则表达式字符时,根据所述第一路径信息在所述第二资源权限配置文件中所对应的标签,更新所述第一路径的上一级路径下的所有资源的标签。
通过该可能的设计提供的资源权限处理方法,当第一资源权限配置文件包括含有正则表达式字符时,终端设备可以不再对第一路径的上一级路径下的所有资源执行遍历操作,而是对第一路径的上一级路径下的每个资源执行路径匹配和标签比对的操作,进而在某一资源的路径匹配、标签不同时,使用该第一路径信息对应的标签更新资源的标签,进一步提高了为资源打标签的效率。
在一种可能的设计中,所述根据所述第一资源权限配置文件,更新所述终端设备中的资源的标签,包括:
在所述第一路径信息含有预设格式的正则表达式字符串时,根据所述第一路径信息在所述第二资源权限配置文件中所对应的标签,更新所述第一路径下的所有资源的标签。
通过该可能的设计提供的资源权限处理方法,通过预先设定预设格式的正则表达式字符串,使得终端设备可以不再对含有预设格式的正则表达式字符串的第一路径下的所有资源执行遍历操作和路径匹配操作,而是对第一路径下的每个资源执行标签比对的操作,进而在某一资源的标签不同时,使用该第一路径信息对应的标签更新资源的标签,进一步提高了为资源打标签的效率。
在一种可能的设计中,所述方法还包括:
若所述第一资源权限配置文件获取失败,则根据所述第二资源权限配置文件,更新所述终端设备的资源的标签。
通过该可能的设计提供的资源权限处理方法,终端设备在获取该第一资源权限配置文件失败时,还可以根据第二资源权限配置文件,采用现有的更新资源的标签的方式,更新终端设备的资源的标签,以为资源标签的更新提供备份方案,确保了资源标签更新的可靠性,进而提高了系统软件版本升级的可靠性。
在一种可能的设计中,所述方法还包括:
若更新所述终端设备的资源的标签的时长超过预设时长,则重启所述终端设备,并重新获取所述第一资源权限配置文件。
通过该可能的设计提供的资源权限处理方法,终端设备可以在更新终端设备的资源的标签的时长超过预设时长时,执行重启终端设备的操作,并重新获取第一资源权限配置文件,以重新执行为资源打标签的操作,确保了资源标签更新的可靠性,进而提高了系统软件版本升级的可靠性。
在一种可能的设计中,所述终端设备的操作系统为Linux操作系统,所述方法还包括:
在完成所述终端设备的资源的标签的更新操作后,使用所述第二资源权限配置文件对应的哈希值,更新所述终端设备中存储的当前所使用的资源权限配置文件对应的哈希值。
通过该可能的设计提供的资源权限处理方法,安装有Linux操作系统的终端设备在对终端设备上存储的资源的标签进行更新后,还可以进一步使用第二资源权限配置文件对应的哈希值,更新终端设备中存储的当前所使用的资源权限配置文件对应的哈希值,即取代终端设备中存储的第三资源权限配置文件对应的哈希值,以确保终端设备所存储的用于表征当前所使用的资源权限配置文件的哈希值的准确性。
第二方面,本申请实施例提供一种资源权限处理装置,该装置包括:
第一获取模块,用于在对终端设备的系统软件进行版本升级时,获取第一资源权限配置文件,所述第一资源权限配置文件包括:至少一个第一路径信息,以及,与每个所述第一路径信息在第二资源权限配置文件中对应的标签,所述第二资源权限配置文件为系统软件的新版本对应的资源权限配置文件,第三资源权限配置文件为系统软件的旧版本对应的资源权限配置文件,所述第一路径信息为所述第二资源权限配置文件中与所述第三资源权限配置文件中路径信息相同、但对应不同标签的路径信息;
更新模块,用于根据所述第一资源权限配置文件,更新所述终端设备的资源的标签。
在一种可能的设计中,所述装置还包括:
第二获取模块,用于在所述第一获取模块获取第一资源权限配置文件之前,获取所述第二资源权限配置文件和所述第三资源权限配置文件;
处理模块,用于将所述第二资源权限配置文件中的每个路径信息对应的标签,与,每个所述路径信息在所述第三资源权限配置文件中对应的标签进行比较,将标签不同的路径信息作为所述第一路径信息,并根据每个所述第一路径信息,以及,每个所述第一路径信息在所述第二资源权限配置文件中对应的标签,生成所述第一资源权限配置文件;
存储模块,用于存储所述第一资源权限配置文件。
在一种可能的设计中,所述处理模块,还用于在所述存储模块存储所述第一资源权限配置文件之前,对所述第一资源权限配置文件进行加密和签名。
在一种可能的设计中,所述第二获取模块,具体用于在解析系统软件版本升级包之前,获取存储在所述终端设备中的所述第三资源权限配置文件,在解析所述系统软件版本升级包时,获取所述系统软件版本升级包中携带的所述第二资源权限配置文件。
在一种可能的设计中,所述更新模块,具体用于在所述第一路径信息含有正则表达式字符时,根据所述第一路径信息在所述第二资源权限配置文件中所对应的标签,更新所述第一路径的上一级路径下的所有资源的标签。
在一种可能的设计中,所述更新模块,具体用于在所述第一路径信息含有预设格式的正则表达式字符串时,根据所述第一路径信息在所述第二资源权限配置文件中所对应的标签,更新所述第一路径下的所有资源的标签。
在一种可能的设计中,所述更新模块,还用于在所述第一获取模块对所述第一资源权限配置文件获取失败时,根据所述第二资源权限配置文件,更新所述终端设备的资源的标签。
在一种可能的设计中,所述装置还包括:
重启模块,用于在所述更新模块更新所述终端设备的资源的标签的时长超过预设时长时,重启所述终端设备;
所述第一获取模块,还用于重新获取所述第一资源权限配置文件。
在一种可能的设计中,所述终端设备的操作系统为Linux操作系统,所述更新模块,还用于在完成所述终端设备的资源的标签的更新操作后,使用所述第二资源权限配置文件对应的哈希值,更新所述终端设备中存储的当前所使用的资源权限配置文件对应的哈希值。
上述第二方面和第二方面的各可能的设计所提供的资源权限处理装置,其有益效果可以参见上述第一方面和第一方面的各可能的设计所带来的有益效果,在此不加赘述。
第三方面,本申请实施例提供一种资源权限处理装置,该装置包括:处理器、存储器;
其中,所述存储器用于存储计算机可执行程序代码,所述程序代码包括指令;当所述处理器执行所述指令时,所述指令使所述资源权限处理装置执行如上述第一方面和第一方面的各可能的设计所述的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,在所述计算机程序被处理器执行时,执行如上述第一方面和第一方面的各可能的设计所述的方法。
第五方面,本申请实施例提供一种芯片,所述芯片上存储有计算机程序,在所述计算机程序被处理器执行时,执行如上述第一方面和第一方面的各可能的设计所述的方法。
本申请实施例提供的资源权限处理方法、装置、存储介质及芯片,由于第一资源权限配置文件仅涵盖系统软件版本升级前后标签发生变化的路径信息,以及,这些路径信息对应的标签。因此,在对终端设备上存储的资源更新标签时,在第一资源权限配置文件中查找与所遍历的资源的路径信息匹配的路径信息时的匹配量减少,可以减少为存储的资源打标签的所耗费的时间,进而可以提高打标签的效率,从而可以减少系统软件版本升级所耗费的时间,提高了系统软件版本升级的效率。
附图说明
图1为本申请实施例提供的一种资源权限处理方法的流程示意图1;
图2为本申请实施例提供的另一种资源权限处理方法的流程示意图;
图3A为本申请实施例涉及的终端设备的结构框图;
图3B为本申请实施例涉及的终端设备的处理器的结构框图;
图4A为本申请实施例提供的又一种资源权限处理方法的流程示意图;
图4B为本申请实施例提供的又一种资源权限处理方法的流程示意图;
图5为本申请实施例提供的一种资源权限处理装置的结构示意图;
图6为本申请实施例提供的另一种资源权限处理装置的结构示意图;
图7为本申请实施例提供的又一种资源权限处理装置的结构示意图;
图8为本申请实施例提供的又一种资源权限处理装置的结构示意图。
具体实施方式
本申请实施例涉及的终端设备,也可以称为终端、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。终端设备可以是手机(mobile phone)、平板电脑(pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrialcontrol)中的无线终端、无人驾驶(self driving)中的无线终端、远程手术(remotemedical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等。
现有技术中,随着终端设备的存储器件(例如:嵌入式多媒体卡(embeddedmultimedia card,EMMC)、UNIX文件系统(UNIX file system,UFS)等)的容量越来越大、以及,克隆软件等的广泛使用,终端设备中存储的资源越来越多,例如照片、通讯录、音乐等。在终端设备中,资源的属性信息包括资源的标签,用于标记该资源的访问权限,即终端设备的哪些进程或哪些服务对该资源具有访问权限。
目前,终端设备的系统软件版本升级包括如下几种场景:终端设备采用空间下载(over-the-air,OTA)技术下载系统软件版本升级包的升级场景、终端设备采用加载存储在安全数码(secure digital memory card,SD)卡上的系统软件版本升级包进行升级的升级场景、终端设备通过安装在一分区(例如A分区)上的新版本的系统软件,对其它分区上(例如B分区)旧版本的系统软件进行升级的升级场景。其中,这里所说的分区可以是对终端设备的存储器件在逻辑上的划分。
对于终端设备采用OTA技术下载系统软件版本升级包的升级场景,以及,终端设备采用加载存储在SD卡上的系统软件版本升级包进行升级的升级场景,终端设备的系统软件版本升级可以包括两个阶段。一个阶段是recovery阶段,另一个阶段是Init阶段。在recovery阶段,终端设备可以根据系统软件版本升级包对系统软件进行版本升级,并重启终端设备。Init阶段是重启终端设备后所进入的阶段。在Init阶段,若系统软件版本升级包携带的系统软件的新版本对应的资源权限配置文件中存在至少一个路径信息对应的标签,与系统软件的旧版本(即未升级前的系统软件的版本)对应的资源权限配置文件中该路径信息对应的标签不同,则终端设备可以根据系统软件的新版本对应的资源权限配置文件,对资源打标签,以更新所存储的资源的访问权限。
对于终端设备通过安装在一分区(例如A分区)上的新版本的系统软件,对其它分区上(例如B分区)旧版本的系统软件进行升级的升级场景,终端设备的系统软件版本升级可以包括一个阶段,即Init阶段。在Init阶段,若新版本的系统软件对应的资源权限配置文件中存在至少一个路径信息对应的标签,与旧版本的系统软件(即未升级前的系统软件的版本)对应的资源权限配置文件中该路径信息对应的标签不同,则终端设备可以根据新版本的系统软件对应的资源权限配置文件,对资源打标签,以更新所存储的资源的访问权限。
以Linux操作系统为例,资源权限配置文件对应一个哈希值,该哈希值根据资源权限配置文件的内容生成。因此,终端设备可以通过比对系统软件的新版本对应的资源权限配置文件对应的哈希值,与系统软件的旧版本对应的资源权限配置文件对应的哈希值,确定两个哈希值不同时,终端设备可以确定系统软件的新版本对应的资源权限配置文件中存在至少一个路径信息对应的标签,与系统软件的旧版本对应的资源权限配置文件中该路径信息对应的标签不同。在该场景下,终端设备触发全量打标签的操作。
上述所说的资源权限配置文件包括:文件、路径信息,以及,每个文件或路径信息对应的标签。现有技术中,无论资源对应的标签在此次系统软件版本升级前后是否发生改变,系统软件的新版本对应的资源权限配置文件也会携带该资源的路径信息,以及,该路径信息对应的标签。也就是说,资源权限配置文件所包括路径信息可以涵盖终端设备的所有资源的路径信息。其中,这里所说的路径信息可以是某一资源的路径,也可以是对应多个资源的路径信息。
示例性的,假定终端设备存储有资源1、资源2和资源3。其中,资源1的路径信息为/data/media/1.apk,资源2的路径信息为/data/media/1.jpg,资源3的路径信息为/data/media/2.jpg。资源权限配置文件包括:路径信息/data/media/1(/.*)?以及对应的标签、/data/media/2.jpg以及对应的标签。在该场景下,路径信息/data/media/1(/.*)?可以对应资源1和资源2,路径信息/data/media/1(/.*)?对应的标签,用于表征在系统软件版本升级后,资源1和资源2对应的标签。路径信息/data/media/2.jpg对应资源3,路径信息/data/media/2.jpg对应的标签,用于表征在系统软件版本升级后,资源3对应的标签。
终端设备在Init阶段确定系统软件的新版本对应的资源权限配置文件中存在至少一个路径信息对应的标签,与系统软件的旧版本对应的资源权限配置文件中该路径信息对应的标签不同时,终端设备会触发全量打标签的操作。具体地,终端设备会采用递归的方式,对存储在存储器件中的资源逐一遍历。每遍历到一个资源,终端设备会读取该资源的路径信息,并在系统软件的新版本对应的资源权限配置文件中查找与该资源的路径信息匹配的路径信息。然后,终端设备可以将匹配的路径信息所对应的标签,与该资源当前的标签(即未升级前的标签、或者,称为系统软件的旧版本对应的标签)进行比对。在确定两个标签不同时,说明此次版本升级会对该资源的访问权限调整,因此,终端设备可以为该资源打上前述匹配的路径信息所对应的标签,以更新该资源的访问权限。
也就是说,无论资源的标签在系统软件版本升级前后是否发生变化,终端设备都需要在资源权限配置文件中匹配该资源对应的路径信息,并将匹配的路径信息所对应的标签,与该资源当前的标签(即未升级前的标签)进行比对。由于终端设备中存储的资源越来越多(例如,终端设备中存储的资源的数量多达数十万、甚至数百万数量级),因此,终端设备在采用上述方式打标签时,需要耗费较长的时间来为存储的资源打标签,使得打标签的效率较低,进而使得系统软件版本升级的耗时长,用户体验较差。
考虑到上述情况,本申请实施例提供了一种资源权限处理方法,旨在解决现有技术中终端设备在系统软件版本升级时,为资源打标签的效率较低,进而导致系统软件版本升级的耗时长,用户体验较差的技术问题。本申请实施例所涉及的方法,可以适用于终端设备采用OTA技术下载系统软件版本升级包的升级场景,也可以适用于终端设备采用加载存储在SD卡上的系统软件版本升级包进行升级的升级场景,也可以适用于终端设备通过安装在一分区(例如A分区)上的新版本的系统软件,对其它分区上(例如B分区)旧版本的系统软件进行升级的升级场景。本领域技术人员可以理解,上述所示的升级场景并不构成对本申请实施例的应用场景的,本申请实施例可以包括但不限于上述升级场景,只要是任一涉及到采用上述所示的方式对资源打标签的升级场景,都可以采用本申请实施例的方法。
本申请实施例的方法的执行主体可以是终端设备、也可以是终端设备中的芯片。下面以执行主体是终端设备为例,以具体地实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
为了便于对本申请实施例的理解,下面对第二资源权限配置文件和第三资源权限配置文件进行定义和说明。具体地,
第二资源权限配置文件为系统软件的新版本对应的资源权限配置文件。例如,终端设备采用OTA技术所下载的系统软件版本升级包中所携带的资源权限配置文件,或者,终端设备通过SD卡所记载的系统软件版本升级包中所携带的资源权限配置文件,或者,终端设备的一分区(例如A分区)上所安装的新版本的系统软件所使用的资源权限配置文件。
第三资源权限配置文件为系统软件的旧版本对应的资源权限配置文件。即,终端设备在进行系统软件版本升级之前,所使用的系统软件版本所对应的资源权限配置文件。
第一资源权限配置文件包括至少一个第一路径信息,以及,至少一个第一路径信息在第二资源权限配置文件中对应的标签。其中,第一路径信息为第二资源权限配置文件中与第三资源权限配置文件中路径信息相同、但对应不同标签的路径信息。也就是说,第一资源权限配置文件中所包括的路径信息为第二资源权限配置文件和第三资源权限配置文件中标签有差异的路径信息。因此,在一些场景下,第一资源权限配置文件也可以称为差分资源权限配置文件。
下面对终端设备如何根据第二资源权限配置文件和第三资源权限配置文件,生成第一资源权限配置文件,进行详细的说明和介绍。图1为本申请实施例提供的一种资源权限处理方法的流程示意图。如图1所示,该方法可以包括:
S101、获取第二资源权限配置文件和第三资源权限配置文件。
S102、将第二资源权限配置文件中的每个路径信息对应的标签,与每个路径信息在第三资源权限配置文件中对应的标签进行比较,将标签不同的路径信息作为第一路径信息。
S103、根据每个第一路径信息,以及,每个第一路径信息在第二资源权限配置文件中对应的标签,生成第一资源权限配置文件。
S104、存储第一资源权限配置文件。
例如,对于终端设备采用OTA技术下载系统软件版本升级包的升级场景,以及,终端设备采用加载存储在SD卡上的系统软件版本升级包进行升级的升级场景,终端设备在recovery阶段,可以在对系统软件版本升级包进行解析前,先从终端设备当前所使用的系统软件中,获取所存储的第三资源权限配置文件。相应地,终端设备可以在对系统软件版本升级包进行解析时,从系统软件版本升级包中获取第二资源权限配置文件。
对于终端设备通过安装在一分区(例如A分区)上的新版本的系统软件,对其它分区上(例如B分区)旧版本的系统软件进行升级的升级场景,终端设备可以在进入Inti阶段之前,先从其它分区中获取所存储的第三资源权限配置文件。相应地,终端设备可以在一分区上的新版本的系统软件中获取第二资源权限配置文件。
终端设备在获取第二资源权限配置文件和第三资源权限配置文件之后,可以将第二资源权限配置文件中的每个路径信息对应的标签,与,每个路径信息在第三资源权限配置文件中对应的标签进行比较,将标签不同的路径信息作为第一路径信息。例如,终端设备可以先匹配两个资源权限配置文件中的路径信息,在两个路径信息相同时,终端设备再比较该两个路径信息所对应的标签。当该两个路径信息所对应的标签不同时,终端设备可以将该路径信息作为第一路径信息。以此类推,直至完成所有路径信息的标签的比对。
然后,终端设备可以根据每个第一路径信息,以及,每个第一路径信息在第二资源权限配置文件中对应的标签,生成第一资源权限配置文件。此时,该第一资源权限配置文件包括每个第一路径信息,以及,每个第一路径信息在第二资源权限配置文件中对应的标签。即,第一资源权限配置文件包括的是第二资源权限配置文件和第三资源权限配置文件中标签有差异的路径信息,以及,该路径信息对应的标签。
在生成第一资源权限配置文件之后,终端设备可以根据预设的第一资源权限配置文件的路径信息,存储该第一资源权限配置文件。即,将该第一资源权限配置文件存储在终端设备的非易失性的存储器件中,以避免终端设备因重启进入Init阶段,导致第一资源权限配置文件丢失。可选的,在一些实施例中,上述终端设备还可以在存储该第一资源权限配置文件之前,对第一资源权限配置文件进行加密和签名,以避免非法软件或者黑客恶意更改该第一资源权限配置文件中的内容,确保终端设备在系统软件版本升级过程中的安全,提高了用户体验。
下面对终端设备如何在Init阶段根据第一资源权限配置文件,对存储的资源的标签进行更新进行详细的说明和介绍。图2为本申请实施例提供的另一种资源权限处理方法的流程示意图。如图2所示,该方法可以包括:
S201、在对终端设备的系统软件进行版本升级时,获取第一资源权限配置文件。
S202、根据第一资源权限配置文件,更新终端设备的资源的标签。
具体的,终端设备在进入到Init阶段之后,可以根据预设的第一资源权限配置文件的路径信息,获取该第一资源权限配置文件。然后,终端设备可以根据该第一资源权限配置文件,更新终端设备的资源的标签。例如,终端设备会采用递归的方式,对存储在存储器件中的资源逐一遍历。每遍历到一个资源,终端设备会读取该资源的路径信息,并在第一资源权限配置文件中查找与该资源的路径信息匹配的路径信息。然后,终端设备可以将匹配的路径信息所对应的标签,与该资源当前的标签(即未升级前的标签、或者,称为系统软件的旧版本对应的标签)进行比对。在确定两个标签不同时,说明此次版本升级会对该资源的访问权限调整,因此,终端设备可以为该资源打上前述匹配的路径信息所对应的标签,以更新该资源的访问权限。
由于该第一资源权限配置文件所包括的路径信息仅是标签发生变化的路径信息,并非是涵盖所有资源的路径信息。所以,终端设备在第一资源权限配置文件中查找与所遍历的资源的路径信息匹配的路径信息时的匹配量减少。因此,可以减少为存储的资源打标签的所耗费的时间,进而可以提高打标签的效率,从而可以缩短系统软件版本升级的耗时、提高系统软件版本升级的效率。
可选的,在一些实施例中,终端设备在根据第一资源权限配置文件,更新终端设备的资源的标签的过程中,可以在第一路径信息含有正则表达式字符时,根据第一路径信息在第二资源权限配置文件中所对应的标签,更新第一路径的上一级路径下的所有资源的标签。其中,这里所说的正则表达式字符例如可以为:“.”、“^”、“$”、“?”、“*”、“+”、“|”、“[”、“(”、“{”等中的一个或多个字符的组合。也就是说,当第一资源权限配置文件包括含有正则表达式字符时,终端设备可以不再对第一路径的上一级路径下的所有资源执行遍历操作,而是对第一路径的上一级路径下的每个资源执行路径匹配和标签比对的操作,进而在某一资源的路径匹配、标签不同时,使用该第一路径信息对应的标签更新资源的标签,不用再对第一路径的上一级路径下的资源进行遍历操作,进一步提高了为资源打标签的效率。
示例性的,以第一路径信息为/data/media/1(^)?为例,该第一路径信息可以涵盖/data/media/11、/data/media/1.apk等路径信息。在该场景下,终端设备可以对data/media下的每个资源执行路径匹配和标签比对的操作,进而在某一资源的路径匹配、标签不同时,使用该/data/media/1(^)?对应的标签更新资源的标签,不用再对/data/media下的资源进行遍历操作,进一步提高了为资源打标签的效率。
在一些实施例中,终端设备还可以在第一路径信息含有预设格式的正则表达式字符串时,根据第一路径信息在第二资源权限配置文件中所对应的标签,更新第一路径下的所有资源的标签。其中,这里所说的预设格式的正则表达式字符串具体可以根据用户的需求设定,例如“.”或者“(/.*)?”。通过预先设定预设格式的正则表达式字符串,使得终端设备可以不再对含有预设格式的正则表达式字符串的第一路径下的所有资源执行遍历操作和路径匹配操作,而是对第一路径下的每个资源执行标签比对的操作,进而在某一资源的标签不同时,使用该第一路径信息对应的标签更新资源的标签,进一步提高了为资源打标签的效率。
示例性的,以第一路径信息为/data/media/1(/.*)?为例,该第一路径信息可以涵盖/data/media/1.jpg、/data/media/1.apk等路径信息。则在该场景下,终端设备可以根据/data/media/1(/.*)?对应的标签,逐一对比/data/media/1下的每个资源的标签是否与该标签相同,在标签不同时,使用/data/media/1(/.*)?对应的标签更新该资源的标签,不用再对/data/media/1下的资源进行遍历操作,以及,路径匹配的操作,进一步提高了为资源打标签的效率。
可选的,在一些实施例中,终端设备在进入到Init阶段之后,根据预设的第一资源权限配置文件的路径信息,获取该第一资源权限配置文件失败时,终端设备还可以根据第二资源权限配置文件,采用现有技术中更新资源的标签的方式,更新终端设备的资源的标签,以为资源标签的更新提供备份方案,确保了资源标签更新的可靠性,进而提高了系统软件版本升级的可靠性。
可选的,在一些实施例中,若终端设备更新终端设备的资源的标签的时长超过预设时长,说明终端设备执行为资源打标签的操作可能出现了错误。在该场景下,终端设备可以执行重启终端设备的操作,并重新获取第一资源权限配置文件,以重新执行为资源打标签的操作,确保了资源标签更新的可靠性,进而提高了系统软件版本升级的可靠性。
可选的,在一些实施例中,若终端设备在生成第一资源权限配置文件之后、且存储该第一资源权限配置文件之前,对第一资源权限配置文件进行加密和签名,则在本实施例中,终端设备在获取第一资源权限配置文件之后,还需对第一资源权限配置文件执行解密操作,对此不再加以赘述。
图3A为本申请实施例涉及的终端设备的结构框图。参考图3A,该终端设备可以包括:处理器、存储器件和显示单元等部件。下面结合图3A对终端设备的各个构成部件进行具体的介绍:
在本申请实施例中,存储器件可以包括随机存取存储器(random-access memory,RAM)、非易失性存储器。其中,随机存取存储器用于负责缓存处理器在执行上述资源权限处理方法时的过程数据。非易失性存储器件可用于存储系统软件,处理器通过运行存储在存储器件的系统软件,从而执行终端设备的各种功能应用以及数据处理。非易失性存储器件可主要包括存储系统软件的分区和存储数据的分区,其中,存储系统软件的分区可存储操作系统、至少一个功能所需的系统软件(比如声音播放功能、图像播放功能等)等;存储数据的分区可存储根据终端设备的使用所创建的资源等。可选的,在终端设备通过安装在一分区(例如A分区)上的新版本的系统软件,对其它分区上(例如B分区)旧版本的系统软件进行升级的升级场景中,上述新版本的系统软件例如可以安装在存储数据的分区,旧版本的系统软件可以安装在存储系统软件的分区,或者,上述终端设备的非易失性存储器件中包括至少两个存储系统软件的分区,一个分区安装有新版本的系统软件,至少两个存储系统软件的分区中的其他某一个分区中安装有旧版本的系统软件。
图3B为本申请实施例涉及的终端设备的处理器的结构框图。如图3B所示,在本实施例中,处理器用于执行上述资源权限处理方法。可选的,处理器可包括一个或多个处理单元;例如,处理器可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器中。
具体实现时,处理器可以包括:系统软件升级模块、第一资源权限配置文件生成模块、第一资源权限配置文件解析模块、标签更新模块等。可选的,处理器还可以包括:第一资源权限配置文件加密模块、第一资源权限配置文件解密模块。
对于终端设备采用OTA技术下载系统软件版本升级包的升级场景,以及,终端设备采用加载存储在SD卡上的系统软件版本升级包进行升级的升级场景,系统软件升级模块、第一资源权限配置文件生成模块、第一资源权限配置文件加密模块等在recovery阶段工作,第一资源权限配置文件解密模块、第一资源权限配置文件解析模块、标签更新模块在Init阶段工作。对于终端设备通过安装在一分区(例如A分区)上的新版本的系统软件,对其它分区上(例如B分区)旧版本的系统软件进行升级的升级场景,系统软件升级模块、第一资源权限配置文件生成模块、第一资源权限配置文件加密模块等在进入Init阶段之前工作,第一资源权限配置文件解密模块、第一资源权限配置文件解析模块、标签更新模块在Init阶段工作。
其中,系统软件升级模块,用于根据第二资源权限配置文件的路径信息,获取第二资源权限配置文件,根据第三资源权限配置文件的路径信息,获取第三资源权限配置文件。
第一资源权限配置文件生成模块,用于对第二资源权限配置文件转换为明文,并将第二资源权限配置文件中的每个路径信息对应的标签,与每个路径信息在第三资源权限配置文件中对应的标签进行比较,将标签不同的路径信息作为第一路径信息,并根据每个第一路径信息,以及,每个第一路径信息在第二资源权限配置文件中对应的标签,生成第一资源权限配置文件。
第一资源权限配置文件加密模块,用于对第一资源权限配置文件进行加密、签名,并存储至存储器件。
第一资源权限配置文件解密模块,用于从存储器件中获取第一资源权限配置文件,并对第一资源权限配置文件进行校验和解密。
第一资源权限配置文件解析模块,用于对第一资源权限配置文件进行解析,以判断第一资源权限配置文件中是否存在含有正则表达式字符的第一路径信息。
标签更新模块,用于根据第一资源权限配置文件,更新终端设备的资源的标签。以以安装有Linux操作系统的终端设备为例,标签更新模块例如可以为Init解析模块(或者是Init模块),该模块可以通过Init.rc调用restorecon_recursive/data,实现更新终端设备的资源的标签的操作。
显示单元可用于显示在系统软件版本升级过程中,向用户提供系统软件版本升级的相关信息或者动画等。示例性的,显示单元可以显示终端设备为资源打标签过程的用户提醒信息,例如:打标签的进度、当前正在为哪个资源打标签、以及,该资源的标签是什么等中的一个或多个信息。显示单元可包括显示面板,可选的,可以采用液晶显示器(LiquidCrystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板。
本领域技术人员可以理解,图3A中示出的终端设备的结构并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,上述终端设备还可以包括射频(Radio Frequency,RF)电路、输入单元、无线保真(wirelessfidelity,WiFi)模块1170、电源1190等部件,对此不再一一赘述。
下面以终端设备安装有Linux操作系统、终端设备采用OTA技术完成系统软件版本升级包的下载为例,对本申请实施例提供的资源权限处理方法进行说明和介绍。图4A为本申请实施例提供的又一种资源权限处理方法的流程示意图。如图4A所示,在recovery阶段,在终端设备采用OTA技术完成系统软件版本升级包的下载之后,该方法可以包括:
S301、在解析系统软件版本升级包之前,获取存储在终端设备中的第三资源权限配置文件。
S302、在解析系统软件版本升级包时,获取系统软件版本升级包中携带的第二资源权限配置文件。
S303、对第二资源权限配置文件和第三资源权限配置文件进行比对,将第二资源权限配置文件中的每个路径信息对应的标签,与,每个路径信息在第三资源权限配置文件中对应的标签进行比较,将标签不同的路径信息作为第一路径信息。
S304、根据每个第一路径信息,以及,每个第一路径信息在第二资源权限配置文件中对应的标签,生成第一资源权限配置文件。
S305、对第一资源权限配置文件进行加密和签名。
S306、存储第一资源权限配置文件。
在执行完步骤S306之后,终端设备重启,进入Init阶段。
图4B为本申请实施例提供的又一种资源权限处理方法的流程示意图。如图4B所示,在进入Init阶段后,该方法可以包括:
S401、获取第一资源权限配置文件。
S402、对第一资源权限配置文件进行解密并解析。
S403、确定对第一资源权限配置文件进行解密并解析是否成功,若是,则执行S404,若否,则执行S407。
S404、根据第一资源权限配置文件,更新终端设备的资源的标签。
S405、使用第二资源权限配置文件对应的哈希值,更新终端设备中存储的当前所使用的资源权限配置文件对应的哈希值。
如前述实施例所说,资源权限配置文件对应一个哈希值,该哈希值根据资源权限配置文件的内容生成。现有技术中,安装有Linux操作系统的终端设备存储有当前所使用的资源权限配置文件对应的哈希值。因此,本实施例中,当安装有Linux操作系统的终端设备采用上述方式,对终端设备上存储的资源的标签进行更新后,即,当前终端设备所使用的资源权限配置文件应为第二资源权限配置文件,并非是第三资源权限配置文件。终端设备还可以进一步使用第二资源权限配置文件对应的哈希值,更新终端设备中存储的当前所使用的资源权限配置文件对应的哈希值,即取代终端设备中存储的第三资源权限配置文件对应的哈希值。通过这种方式,可以确保终端设备所存储的用于表征当前所使用的资源权限配置文件的哈希值的准确性。
S406、启动终端设备的上层服务。
执行完S406之后,此次系统软件版本升级流程执行完毕。
S407、确定第二资源权限配置文件中是否存在至少一个路径信息对应的标签,与第二的资源权限配置文件中该路径信息对应的标签不同。若是,则执行S407,若否,则返回执行S406。
S408、根据第二资源权限配置文件,更新终端设备的资源的标签。
执行完S408之后,返回执行S406。
可选的,在执行上述操作的过程中,终端设备可以实时的监控更新资源的标签的时长超过预设时长。若是,则终端设备可以重启终端设备,以重新执行图4B所示的流程。通过这种方式,可以确保资源标签更新的可靠性,进而提高系统软件版本升级的可靠性。
本申请实施例提供的方法,通过根据系统软件升级前后所使用的资源权限配置文件,生成第一资源权限配置文件,以使得第一资源权限配置文件仅涵盖标签发生变化的路径信息。因此,终端设备在根据第一资源权限配置文件,对终端设备上存储的资源更新标签时,终端设备在第一资源权限配置文件中查找与所遍历的资源的路径信息匹配的路径信息时的匹配量减少,可以减少为存储的资源打标签的所耗费的时间,进而可以提高打标签的效率,从而可以减少系统软件版本升级所耗费的时间,提高了系统软件版本升级的效率。
由于用户使用习惯不同,因此,即便是同一类型的终端设备,不同用户的终端设备上的资源数量不同、存储器件碎片化程度不同、标签内容也不同。所以,不同用户的终端设备在使用现有技术中的方式为存储的资源打标签时,所耗费的时间也不同,导致使用同一类型的终端设备的用户对系统软件升级的体验也不同。例如,使用半年以上的终端设备打标签需要耗时50秒左右,一些终端设备甚至打标签耗时超过系统预设的最大开机时长,导致终端设备反复重启,以重新对系统软件进行版本升级。而通过本申请实施例所提供的方法,由于终端设备在第一资源权限配置文件中查找与所遍历的资源的路径信息匹配的路径信息时的匹配量大大减少,即便是用户使用习惯不同,同一类型的终端设备的同一版本的系统软件升级的耗时近似相同,提高了用户体验。
图5为本申请实施例提供的一种资源权限处理装置的结构示意图。该资源权限处理装置可以为终端设备,也可以为应用于终端设备的芯片。如图5所示,该装置可以包括:第一获取模块11和更新模块12。其中,
第一获取模块11,用于在对终端设备的系统软件进行版本升级时,获取第一资源权限配置文件,第一资源权限配置文件包括:至少一个第一路径信息,以及,与每个第一路径信息在第二资源权限配置文件中对应的标签,第二资源权限配置文件为系统软件的新版本对应的资源权限配置文件,第三资源权限配置文件为系统软件的旧版本对应的资源权限配置文件,第一路径信息为第二资源权限配置文件中与第三资源权限配置文件中路径信息相同、但对应不同标签的路径信息;
更新模块12,用于根据第一资源权限配置文件,更新终端设备的资源的标签。
可选的,在一些实施例中,上述更新模块12,具体用于在第一路径信息含有正则表达式字符时,根据第一路径信息在第二资源权限配置文件中所对应的标签,更新第一路径的上一级路径下的所有资源的标签。在另一些实施例中,上述更新模块12,具体用于在第一路径信息含有预设格式的正则表达式字符串时,根据第一路径信息在第二资源权限配置文件中所对应的标签,更新第一路径下的所有资源的标签。
可选的,在一些实施例中,上述更新模块12,还用于在第一获取模块11对第一资源权限配置文件获取失败时,根据第二资源权限配置文件,更新终端设备的资源的标签。
当终端设备的操作系统为Linux操作系统时,上述更新模块12,还用于在完成终端设备的资源的标签的更新操作后,使用第二资源权限配置文件对应的哈希值,更新终端设备中存储的当前所使用的资源权限配置文件对应的哈希值。
图6为本申请实施例提供的另一种资源权限处理装置的结构示意图。如图6所示,在上述图5所示框图的基础上,上述装置还可以包括:
第二获取模块13,用于在第一获取模块11获取第一资源权限配置文件之前,获取第二资源权限配置文件和第三资源权限配置文件;例如,第二获取模块13,具体用于在解析系统软件版本升级包之前,获取存储在终端设备中的第三资源权限配置文件,在解析系统软件版本升级包时,获取系统软件版本升级包中携带的第二资源权限配置文件;
处理模块14,用于将第二资源权限配置文件中的每个路径信息对应的标签,与,每个路径信息在第三资源权限配置文件中对应的标签进行比较,将标签不同的路径信息作为第一路径信息,并根据每个第一路径信息,以及,每个第一路径信息在第二资源权限配置文件中对应的标签,生成第一资源权限配置文件;
存储模块15,用于存储第一资源权限配置文件。
可选的,在一些实施例中,上述处理模块14,还用于在存储模块15存储第一资源权限配置文件之前,对第一资源权限配置文件进行加密和签名。
图7为本申请实施例提供的又一种资源权限处理装置的结构示意图。如图7所示,在上述图5所示框图的基础上,上述装置还可以包括:
重启模块16,用于在更新模块12更新终端设备的资源的标签的时长超过预设时长时,重启终端设备;
第一获取模块11,还用于重新获取第一资源权限配置文件。
本申请实施例提供的资源权限处理装置,可以执行上述方法实施例中终端设备的动作,其实现原理和技术效果类似,在此不再赘述。
需要说明的是,应理解以上模块可以以软件通过处理元件调用的形式实现;也可以以硬件的形式实现。例如,处理模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上处理模块的功能。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个专用集成电路(application specific integrated circuit,ASIC),或,一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessing unit,CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
图8为本申请实施例提供的又一种资源权限处理装置的结构示意图。如图8所示,该装置可以包括:处理器21(例如CPU)、存储器22。存储器22可能包含高速随机存取存储器(random-access memory,RAM),也可能还包括非易失性存储器(non-volatile memory,NVM),例如至少一个磁盘存储器,存储器22中可以存储各种指令,以用于完成各种处理功能以及实现本申请的方法步骤。可选的,本申请涉及的装置还可以包括:电源23、通信总线24、通信端口25、显示器件26。通信总线24用于实现元件之间的通信连接。上述通信端口25用于实现资源权限处理装置与其他外设之间进行连接通信。显示器件26用于在系统软件版本升级过程中,向用户提供系统软件版本升级的相关信息或者动画等。示例性的,显示单元可以显示终端设备为资源打标签过程的用户提醒信息,例如:打标签的进度、当前正在为哪个资源打标签、以及,该资源的标签是什么等中的一个或多个信息。
在本申请实施例中,上述存储器22用于存储计算机可执行程序代码,程序代码包括指令;当处理器21执行指令时,指令使资源权限处理装置的处理器21执行上述方法实施例中终端设备的处理动作,其实现原理和技术效果类似,在此不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
本文中的术语“多个”是指两个或两个以上。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系;在公式中,字符“/”,表示前后关联对象是一种“相除”的关系。
可以理解的是,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。
可以理解的是,在本申请的实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请的实施例的实施过程构成任何限定。
Claims (21)
1.一种资源权限处理方法,其特征在于,包括:
在对终端设备的系统软件进行版本升级时,获取第一资源权限配置文件,所述第一资源权限配置文件包括:至少一个第一路径信息,以及,所述至少一个第一路径信息在第二资源权限配置文件中对应的标签,所述第二资源权限配置文件为系统软件的新版本对应的资源权限配置文件,第三资源权限配置文件为系统软件的旧版本对应的资源权限配置文件,所述第一路径信息为所述第二资源权限配置文件中与所述第三资源权限配置文件中路径信息相同、但对应不同标签的路径信息;
根据所述第一资源权限配置文件,更新所述终端设备的资源的标签。
2.根据权利要求1所述的方法,其特征在于,所述获取第一资源权限配置文件之前,所述方法还包括:
获取所述第二资源权限配置文件和所述第三资源权限配置文件;
将所述第二资源权限配置文件中的每个路径信息对应的标签,与,每个所述路径信息在所述第三资源权限配置文件中对应的标签进行比较,将标签不同的路径信息作为所述第一路径信息;
根据每个所述第一路径信息,以及,每个所述第一路径信息在所述第二资源权限配置文件中对应的标签,生成所述第一资源权限配置文件;
存储所述第一资源权限配置文件。
3.根据权利要求2所述的方法,其特征在于,所述存储所述第一资源权限配置文件之前,所述方法还包括:
对所述第一资源权限配置文件进行加密和签名。
4.根据权利要求2或3所述的方法,其特征在于,所述获取所述第二资源权限配置文件和所述第三资源权限配置文件,包括:
在解析系统软件版本升级包之前,获取存储在所述终端设备中的所述第三资源权限配置文件;
在解析所述系统软件版本升级包时,获取所述系统软件版本升级包中携带的所述第二资源权限配置文件。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述第一资源权限配置文件,更新所述终端设备的资源的标签,包括:
在所述第一路径信息含有正则表达式字符时,根据所述第一路径信息在所述第二资源权限配置文件中所对应的标签,更新所述第一路径的上一级路径下的所有资源的标签。
6.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述第一资源权限配置文件,更新所述终端设备中的资源的标签,包括:
在所述第一路径信息含有预设格式的正则表达式字符串时,根据所述第一路径信息在所述第二资源权限配置文件中所对应的标签,更新所述第一路径下的所有资源的标签。
7.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
若所述第一资源权限配置文件获取失败,则根据所述第二资源权限配置文件,更新所述终端设备的资源的标签。
8.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
若更新所述终端设备的资源的标签的时长超过预设时长,则重启所述终端设备,并重新获取所述第一资源权限配置文件。
9.根据权利要求1-3任一项所述的方法,其特征在于,所述终端设备的操作系统为Linux操作系统,所述方法还包括:
在完成所述终端设备的资源的标签的更新操作后,使用所述第二资源权限配置文件对应的哈希值,更新所述终端设备中存储的当前所使用的资源权限配置文件对应的哈希值。
10.一种资源权限处理装置,其特征在于,包括:
第一获取模块,用于在对终端设备的系统软件进行版本升级时,获取第一资源权限配置文件,所述第一资源权限配置文件包括:至少一个第一路径信息,以及,所述至少一个第一路径信息在第二资源权限配置文件中对应的标签,所述第二资源权限配置文件为系统软件的新版本对应的资源权限配置文件,第三资源权限配置文件为系统软件的旧版本对应的资源权限配置文件,所述第一路径信息为所述第二资源权限配置文件中与所述第三资源权限配置文件中路径信息相同、但对应不同标签的路径信息;
更新模块,用于根据所述第一资源权限配置文件,更新所述终端设备的资源的标签。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
第二获取模块,用于在所述第一获取模块获取第一资源权限配置文件之前,获取所述第二资源权限配置文件和所述第三资源权限配置文件;
处理模块,用于将所述第二资源权限配置文件中的每个路径信息对应的标签,与,每个所述路径信息在所述第三资源权限配置文件中对应的标签进行比较,将标签不同的路径信息作为所述第一路径信息,并根据每个所述第一路径信息,以及,每个所述第一路径信息在所述第二资源权限配置文件中对应的标签,生成所述第一资源权限配置文件;
存储模块,用于存储所述第一资源权限配置文件。
12.根据权利要求11所述的装置,其特征在于,所述处理模块,还用于在所述存储模块存储所述第一资源权限配置文件之前,对所述第一资源权限配置文件进行加密和签名。
13.根据权利要求11或12所述的装置,其特征在于,所述第二获取模块,具体用于在解析系统软件版本升级包之前,获取存储在所述终端设备中的所述第三资源权限配置文件,在解析所述系统软件版本升级包时,获取所述系统软件版本升级包中携带的所述第二资源权限配置文件。
14.根据权利要求10-12任一项所述的装置,其特征在于,所述更新模块,具体用于在所述第一路径信息含有正则表达式字符时,根据所述第一路径信息在所述第二资源权限配置文件中所对应的标签,更新所述第一路径的上一级路径下的所有资源的标签。
15.根据权利要求10-12任一项所述的装置,其特征在于,所述更新模块,具体用于在所述第一路径信息含有预设格式的正则表达式字符串时,根据所述第一路径信息在所述第二资源权限配置文件中所对应的标签,更新所述第一路径下的所有资源的标签。
16.根据权利要求10-12任一项所述的装置,其特征在于,所述更新模块,还用于在所述第一获取模块对所述第一资源权限配置文件获取失败时,根据所述第二资源权限配置文件,更新所述终端设备的资源的标签。
17.根据权利要求10-12任一项所述的装置,其特征在于,所述装置还包括:
重启模块,用于在所述更新模块更新所述终端设备的资源的标签的时长超过预设时长时,重启所述终端设备;
所述第一获取模块,还用于重新获取所述第一资源权限配置文件。
18.根据权利要求10-12任一项所述的装置,其特征在于,所述终端设备的操作系统为Linux操作系统,所述更新模块,还用于在完成所述终端设备的资源的标签的更新操作后,使用所述第二资源权限配置文件对应的哈希值,更新所述终端设备中存储的当前所使用的资源权限配置文件对应的哈希值。
19.一种资源权限处理装置,其特征在于,所述资源权限处理装置包括:处理器、存储器;
其中,所述存储器用于存储计算机可执行程序代码,所述程序代码包括指令;当所述处理器执行所述指令时,所述指令使所述资源权限处理装置执行如权利要求1-9任一项所述的资源权限处理方法。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,在所述计算机程序被处理器执行时,执行如权利要求1至9中任一项所述的资源权限处理方法。
21.一种芯片,其特征在于,所述芯片上存储有计算机程序,在所述计算机程序被处理器执行时,执行如权利要求1至9中任一项所述的资源权限处理方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/080712 WO2019183806A1 (zh) | 2018-03-27 | 2018-03-27 | 资源权限处理方法、装置、存储介质及芯片 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111417927A CN111417927A (zh) | 2020-07-14 |
CN111417927B true CN111417927B (zh) | 2021-12-03 |
Family
ID=68058535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880077310.XA Active CN111417927B (zh) | 2018-03-27 | 2018-03-27 | 资源权限处理方法、装置、存储介质及芯片 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210081217A1 (zh) |
EP (1) | EP3764224B1 (zh) |
CN (1) | CN111417927B (zh) |
WO (1) | WO2019183806A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112925559B (zh) * | 2021-04-09 | 2023-10-20 | 网易(杭州)网络有限公司 | 资源打包方法、装置、介质及电子设备 |
CN113010208B (zh) * | 2021-04-28 | 2023-12-19 | 数字广东网络建设有限公司 | 一种版本信息的生成方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6381742B2 (en) * | 1998-06-19 | 2002-04-30 | Microsoft Corporation | Software package management |
CN101697133A (zh) * | 2009-10-26 | 2010-04-21 | 中兴通讯股份有限公司 | 软件升级方法、软件升级系统以及客户端 |
CN102446258A (zh) * | 2010-10-09 | 2012-05-09 | 金蝶软件(中国)有限公司 | 一种附件权限类型扩展的方法、装置及系统 |
US9032386B1 (en) * | 2012-07-30 | 2015-05-12 | Adobe Systems Incorporated | Product upgrade location identifier for software upgrade |
CN105654353A (zh) * | 2016-02-05 | 2016-06-08 | 北京奇虎科技有限公司 | 数据处理方法、装置及系统 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7100082B2 (en) * | 2000-08-04 | 2006-08-29 | Sun Microsystems, Inc. | Check creation and maintenance for product knowledge management |
US20040003266A1 (en) * | 2000-09-22 | 2004-01-01 | Patchlink Corporation | Non-invasive automatic offsite patch fingerprinting and updating system and method |
US7568195B2 (en) * | 2003-12-16 | 2009-07-28 | Microsoft Corporation | Determining a maximal set of dependent software updates valid for installation |
US7805469B1 (en) * | 2004-12-28 | 2010-09-28 | Symantec Operating Corporation | Method and apparatus for splitting and merging file systems |
US7496568B2 (en) * | 2006-11-30 | 2009-02-24 | International Business Machines Corporation | Efficient multifaceted search in information retrieval systems |
JP5250644B2 (ja) * | 2011-01-25 | 2013-07-31 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置 |
CN102609328B (zh) * | 2012-01-29 | 2015-04-15 | 华为终端有限公司 | 系统差分升级方法和装置、移动终端 |
US9244673B2 (en) * | 2012-06-08 | 2016-01-26 | Apple Inc. | System and method for updating application archive files |
US9766873B2 (en) * | 2012-08-17 | 2017-09-19 | Tripwire, Inc. | Operating system patching and software update reconciliation |
CN104284297B (zh) * | 2013-07-11 | 2018-12-25 | 华为终端有限公司 | 一种资源迁移的方法、装置 |
CN104133699B (zh) * | 2014-07-28 | 2018-11-27 | 广州视睿电子科技有限公司 | 设备系统软件升级方法与系统 |
CN105786538B (zh) * | 2014-12-24 | 2019-12-06 | 深圳市贰陆陆科技有限公司 | 基于安卓系统的软件升级方法和装置 |
US10289532B2 (en) * | 2015-04-08 | 2019-05-14 | Opshub, Inc. | Method and system for providing delta code coverage information |
CN106330695B (zh) * | 2015-06-24 | 2021-03-02 | 中兴通讯股份有限公司 | 一种业务控制方法及装置 |
US9836297B2 (en) * | 2015-08-21 | 2017-12-05 | Tata Consultancy Services Limited | Computer implemented method and system for automatically deploying and versioning scripts in a computing environment |
US10289400B2 (en) * | 2016-09-07 | 2019-05-14 | Amplidata N.V. | Outdated resource handling and multiple-version upgrade of cloud software |
US10592318B2 (en) * | 2017-11-09 | 2020-03-17 | International Business Machines Corporation | Application programming interfaces in a multi-server environment |
US11074062B1 (en) * | 2019-08-14 | 2021-07-27 | Amazon Technologies, Inc. | Neural networks for software patch applicability |
-
2018
- 2018-03-27 EP EP18911374.9A patent/EP3764224B1/en active Active
- 2018-03-27 US US17/041,942 patent/US20210081217A1/en active Pending
- 2018-03-27 CN CN201880077310.XA patent/CN111417927B/zh active Active
- 2018-03-27 WO PCT/CN2018/080712 patent/WO2019183806A1/zh unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6381742B2 (en) * | 1998-06-19 | 2002-04-30 | Microsoft Corporation | Software package management |
CN101697133A (zh) * | 2009-10-26 | 2010-04-21 | 中兴通讯股份有限公司 | 软件升级方法、软件升级系统以及客户端 |
CN102446258A (zh) * | 2010-10-09 | 2012-05-09 | 金蝶软件(中国)有限公司 | 一种附件权限类型扩展的方法、装置及系统 |
US9032386B1 (en) * | 2012-07-30 | 2015-05-12 | Adobe Systems Incorporated | Product upgrade location identifier for software upgrade |
CN105654353A (zh) * | 2016-02-05 | 2016-06-08 | 北京奇虎科技有限公司 | 数据处理方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3764224A4 (en) | 2021-03-31 |
EP3764224A1 (en) | 2021-01-13 |
EP3764224C0 (en) | 2023-08-30 |
CN111417927A (zh) | 2020-07-14 |
WO2019183806A1 (zh) | 2019-10-03 |
EP3764224B1 (en) | 2023-08-30 |
US20210081217A1 (en) | 2021-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109214168B (zh) | 固件升级方法及装置 | |
RU2456663C2 (ru) | Прогрессивная начальная загрузка для беспроводного устройства | |
KR20180137554A (ko) | 패치 업그레이드 기반 파일 처리 방법 및 디바이스, 단말기, 및 저장 매체 | |
CN104346167A (zh) | 生成应用渠道包的方法及装置 | |
US10872155B2 (en) | Computing system for managing firmware and firmware managing method thereof | |
KR101695639B1 (ko) | 클라우드 기반의 애플리케이션 보안 서비스 제공 방법 및 시스템 | |
KR20060093022A (ko) | 펌웨어 컴포넌트의 상태 공고 및 펌웨어 컴포넌트의 갱신 | |
CN107239299B (zh) | 插件升级方法及装置 | |
CN110022558A (zh) | 一种升级包的加密、解密方法和电子装置及存储介质 | |
JP5897155B2 (ja) | ワイヤレス・ハンドヘルド・デバイス起動方法及びワイヤレス・ハンドヘルド・デバイス | |
CN107797818A (zh) | 应用程序升级方法及装置 | |
CN111897846A (zh) | 缓存数据校验方法、装置、设备及存储介质 | |
CN111417927B (zh) | 资源权限处理方法、装置、存储介质及芯片 | |
CN112947981A (zh) | 应用程序资源更新方法、装置、终端设备及服务器 | |
CN113961226B (zh) | 一种软件开发工具包修复方法、终端、服务器及设备 | |
CN111737718A (zh) | 一种jar包的加解密方法、装置、终端设备和存储介质 | |
CN114880011A (zh) | Ota升级方法、装置、电子设备及可读存储介质 | |
CN105518646A (zh) | 移动设备配置系统和方法 | |
WO2016173174A1 (zh) | 锁网数据升级方法和装置 | |
US20230351050A1 (en) | Method and apparatus for custom development of payment application, computer device, and storage medium | |
CN115221183A (zh) | 数据处理方法及装置 | |
CN111400771A (zh) | 目标分区的校验方法及装置、存储介质、计算机设备 | |
CN111064723A (zh) | 一种基于备份系统的空中下载升级方法及系统 | |
CN114610366A (zh) | 一种差分包升级方法、系统、智能电子设备和存储介质 | |
CN106971093B (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 |