WO2023051096A1 - 访问资源的方法及电子设备 - Google Patents

访问资源的方法及电子设备 Download PDF

Info

Publication number
WO2023051096A1
WO2023051096A1 PCT/CN2022/114006 CN2022114006W WO2023051096A1 WO 2023051096 A1 WO2023051096 A1 WO 2023051096A1 CN 2022114006 W CN2022114006 W CN 2022114006W WO 2023051096 A1 WO2023051096 A1 WO 2023051096A1
Authority
WO
WIPO (PCT)
Prior art keywords
resource
global content
content uri
access
index segment
Prior art date
Application number
PCT/CN2022/114006
Other languages
English (en)
French (fr)
Inventor
陈刚
张正雅
黄超
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2023051096A1 publication Critical patent/WO2023051096A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Abstract

一种访问资源的方法及电子设备,涉及终端技术领域,其中,该方法包括应用于第一设备,包括:获取第一资源ID,确定所述第一资源ID对应的第二设备以及确定所述第一资源ID对应的第二资源ID,所述第二资源ID为所述第一资源ID对应的第一资源在所述第二设备中的本地资源ID,基于所述第二资源ID,从所述第二设备访问所述第一资源ID对应的第一资源。所述技术方案能够实现跨设备访问资源。

Description

访问资源的方法及电子设备
本申请要求于2021年09月29日提交国家知识产权局、申请号为202111153026.6、申请名称为“访问资源的方法及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及终端技术领域,尤其涉及一种访问资源的方法及电子设备。
背景技术
随着终端技术的不断发展,各种电子设备逐渐得到了广泛的应用。电子设备中可以存储各种各样的资源,也能够访问这些资源,比如打开图片或者播放视频等。
现有技术中,电子设备中的每个资源都具有对应的资源标识(identity,ID),因此电子设备可以基于任一资源ID,访问该资源ID对应的资源。
但由于该资源ID仅能够对电子设备本地的资源进行标识,不同的资源在两个电子设备中的资源ID可能相同,从而导致电子设备只能够访问该电子设备本端的资源,而无法跨设备访问其他设备的资源。
发明内容
有鉴于此,本申请提供一种访问资源的方法及电子设备,能够实现跨设备访问资源。
为了实现上述目的,第一方面,本申请实施例提供一种访问资源的方法,应用于第一设备,包括:
获取第一资源ID;
确定所述第一资源ID对应的第二设备以及确定所述第一资源ID对应的第二资源ID,所述第二资源ID为所述第一资源ID对应的第一资源在所述第二设备中的本地资源ID;
基于所述第二资源ID,从所述第二设备访问所述第一资源ID对应的第一资源。
在本申请实施例中,第一设备可以确定第一资源的第一资源ID,确定第一资源ID对应的第二设备以及确定第一资源ID对应的第二资源ID,第二资源ID为第一资源在第二设备中的本地资源ID,并基于第二资源ID从第二设备访问第一资源,实现了设备互联和资源共享。
可选地,所述确定所述第一资源ID对应的第二设备,包括:
若所述第一资源ID归属于与所述第二设备对应的第一ID索引段,则确定所述第一资源ID与所述第二设备对应。
可选地,所述确定所述第一资源ID对应的第二资源ID,包括:
确定与所述第一设备对应的第二ID索引段;
确定所述第二ID索引段与所述第二设备对应的第一ID索引段之间的偏移量;
基于所述偏移量对所述第一资源ID进行偏移,得到所述第二资源ID。
其中,偏移量可以用于指示将第一ID索引段与第二ID索引段中对具有映射关系的资源ID之间的偏移程度。例如,第一ID索引段为3*10 8-4*10 8,第二ID索引段为0-1*10 8,则该偏移量为3*10 8-0=3*10 8,将第二ID索引段中的某个资源ID加上3*10 8,即可得到该资源ID偏移后的在第一ID索引段中的资源ID。
可选地,所述确定所述第一资源ID对应的第二资源ID,包括:
从资源ID对应关系中,获取与所述第一资源ID对应的所述第二资源ID,所述资源ID对应关系用于指示本地资源ID与全局资源ID之间的对应关系,所述本地资源ID包括所述第二资源ID,所述全局资源ID包括所述第一资源ID。
需要说明的是,第一设备在将第二资源ID映射为第一资源ID时,可以先确定与第二设备对应的第一ID索引段以及与第一设备对应的第二ID索引段,然后基于第一ID索引段与第二ID索引段之间的偏移量,对第二资源ID进行偏移得到第一资源ID,相应的也就可以对第一资源ID进行偏移得到第二资源ID。但在另一些实施例中,第一设备在将第二资源ID映射为第一资源ID时,也可以不先确定与第二设备对应的第一ID索引段,而是通过其他方式确定与第二资源ID对应的第一资源ID(比如随机在第二ID索引段之外选择一个未使用的资源ID作为第一资源ID),并存储资源ID对应关系,从而能够基于该资源ID关系,确定与第一资源ID对应的第二资源ID,那么第一资源ID以及按照类似方式获得的其他全局资源ID,可以构成第一ID索引段。当然,即使第一设备在将第二资源ID映射为第一资源ID时,可以先确定与第二设备对应的第一ID索引段以及与第一设备对应的第二ID索引段,然后基于第一ID索引段与第二ID索引段之间的偏移量,对第二资源ID进行偏移得到第一资源ID,可以将第一资源ID和第二资源ID存储至资源ID对应关系,从而使得后续也可以通过该资源ID关系,确定与第一资源ID对应的第二资源ID。
可选地,在所述确定所述第一资源ID对应的第二资源ID之前,所述方法还包括:
从所述第二设备获取所述第一资源的元数据,所述元数据包括所述第一资源的所述第二资源ID;
确定与所述第二资源ID对应的所述第一资源ID。
由于第一设备可以分配与第二设备对应的第一ID索引段,并获取第二设备中第三资源的元数据,该元数据中包括第三资源在第二设备中的本地资源ID。第一设备将第三资源的本地资源ID映射为全局资源ID,避免了第三资源在第二设备中的本地资源ID,与第一设备本地其他资源的本地资源ID重复的问题,使得第一设备可以进行跨设备访问第二设备中的第三资源。通过不同的ID索引段标识不同的设备,也便于对统一资源标识符(uniform resource identifier,URI)的平滑扩展,不需要修改北向接口,使得上层应用不需要进行额外的配置就可以进行跨设备访问。
可选地,在所述确定与所述第二资源ID对应的所述第一资源ID之前,所述方法还包括:
为所述第二设备分配第一ID索引段;
所述确定与所述第二资源ID对应的所述第一资源ID,包括:
基于所述第一ID索引段,确定与所述第二资源ID对应的所述第一资源ID。
可选地,所述为所述第二设备分配第一ID索引段,包括:
基于所述第二设备的设备类型,为所述第二设备分配所述第一ID索引段。
可选地,所述为所述第二设备分配第一ID索引段,包括:
从索引资源池获取空闲的第三ID索引段,所述索引资源池包括至少一个所述第三ID索引段;
将所述空闲的第三ID索引段,确定为与所述第二设备对应的所述第一ID索引段。
其中,第一设备可以设置索引资源池,该索引资源池包括至少一个第三ID索引段以及各第三ID索引段对应的分配状态信息。第三ID索引段的分配状态信息可以用于指示第三ID索引段当前的状态是已分配还是空闲,如果是已分配,则分配状态信息还用于指示第三ID索引段所对应的电子设备的设备ID。因此,第一设备可以从索引资源池获取各第三ID索引段对应的分配状态信息,基于该分配状态信息确定该第三ID索引段是否空闲。
需要说明的是,每个第三ID索引段可以包括多个资源ID,该多个资源ID可以是连续的,也可以是非连续的;不同的第三ID索引段之间包括的资源ID的数目可以相同也可以不同,相邻的两个第三ID索引段之间可以是连续的,也可以是非连续的。
在一些实施例中,若第一设备并未设置与第三ID索引段对应的设备类型,则第一设备可以获取任一个空闲的第三ID索引段,并将该空闲的第三ID索引段确定为与第二设备对应的第一ID索引段。
在一些实施例中,第一设备若是基于电子设备的设备类型设置得到的至少一个第三ID索引段,则第一设备可以基于第二设备的设备类型,获取与该设备类型对应且空闲的第三ID索引段,并将该空闲的第三ID索引段确定为与第二设备对应的第一ID索引段。
在一些实施例中,若当前没有空闲的第三ID索引段,则第一设备可以将第二设备的设备ID添加至待分配设备队列。
其中,待分配设备队列可以包括至少一个等待分配ID索引段的电子设备的设备ID。
可选地,所述为所述第二设备分配第一ID索引段,包括:
若检测到所述第二设备上线,则将所述第一ID索引段的分配状态信息更新为已分配,并在所述分配状态信息中添加所述第二设备的设备ID;
所述方法还包括:
若检测到所述第二设备下线且不存在待分配的第三设备,则将所述第一ID索引段的分配状态信息更新为空闲,并将所述分配状态信息中的所述第二设备的设备ID删除;或者,
若检测到所述第二设备下线但存在待分配的所述第三设备,则将所述分配状态信息中的所述第二设备的设备ID更新为所述第三设备的设备ID。
其中,第一设备可以从待分配设备队列获取第三设备的设备ID。
第一设备可以查询各第三ID索引段的分配状态信息,如果任一第三ID索引段的分配状态信息为已分配且包括第二设备的设备ID,则该第三ID索引段为已经分配给第二设备的第一ID索引段。
在一些实施例中,若第三ID索引段对应设置有设备类型,则第一设备可以在检测到所述第二设备下线但存在待分配的与第一设备同设备类型的第三设备时,将所述分配状态信息中的所述第二设备的设备ID更新为所述第三设备的设备ID。
在一些实施例中,当第二设备下线时,可能还未向第二设备分配第一ID索引段,第二设备还在待分配设备队列中等待分配,因此可以直接将第二设备的设备ID从待分配设备队列删除。
在一些实施例中,第一设备可以根据第三ID索引段的分配过程,对索引资源池进行更新,包括下述至少一项:若即第一设备是将空闲的第三ID索引段分配给第二设备,则第一设备可以将第一ID索引段的分配状态从空闲更新为已分配,并在该第一ID索引段对应的分配状态信息中添加第二设备的设备ID;若第一设备是将已为第二设备分配的第一ID索引段进行了回收,因此,第一设备可以将该第一ID索引段的分配状态从已分配更新为空闲,将该第一ID索引段对应的分配状态信息中的第二设备的设备ID删除;若第一设备是将已分配给第二设备的第一ID索引段转分配给第三设备,则第一设备可以将该第一ID索引段对应的分配状态信息中的第二设备的设备ID,更新为第三设备的设备ID。
由于第一设备可以在第二设备上线时,为第二设备分配对应的第一ID索引段,也可以在第二设备下线时,回收为二设备分配的第一ID索引段,并及时对索引资源池进行更新,使得同一ID索引段可以在不同的时间段,复用给多个设备,那么第一设备在发现新的设备上线时,都能够向该设备分配对应的ID索引段,从而对该设备中的资源进行跨设备访问,提高了跨设备访问的范围。
另外,可能第一设备需要进行跨设备访问的范围比较小,比如在个人家庭场景中,设备的总数目比较少且固定,第三ID索引段的个数大于或者等于设备的总数目,也就不需要回收已经分配的第三ID索引段,相应的,在第一设备可以只在第一次发现第二设备上线时,为第二设备分配第一ID索引段,之后如果再发现第二设备上线设则不需要再次分配ID索引段。
可选地,所述第一资源为多媒体资源,所述获取第一资源ID,包括:
若检测到第一获取操作,则基于所述第一获取操作确定所述第一资源ID和第一质量参数,所述第一获取操作用于获取所述多媒体资源的缩略图;
若所述第一设备本地未存储第一缩略图,或,若所述第一设备本地存储有所述第一缩略图但所述第一质量参数所指示的图片质量优于所述第一缩略图的图片质量,则所述基于所述第二资源ID,从所述第二设备访问所述第一资源ID对应的第一资源,包括:
基于所述第二资源ID,从所述第二设备获取第二缩略图;所述第二缩略图的图片质量优于或等于所述第一质量参数所指示的图片质量;
获取所述第二缩略图的文件描述符(file descriptor,FD)。
其中,FD也可以被称为文件句柄。
当第一设备本地存储有第一缩略图时,第一设备可以将第一质量参数与第一缩略图的第二质量参数进行比较。如果第二质量参数所指示的图片质量优于或等于第二质量参数所指示的图片质量,则第一缩略图的质量能够达到第一获取操作所需要获取的 缩略图质量要求;否则第一缩略图的质量不能达到第一获取操作所需要获取的缩略图质量要求。
在一些实施例中,第一质量参数可以用于指示所要获取的缩略图的质量,在一些实施例中,第一质量参数可以包括第一图片分辨率和第一图片尺寸中的至少一个,其中,图片分辨率指图片单位面积内的像素数量,即像素密度,图片尺寸为图片长和宽包括的像素值,可以表示为M像素*N像素。当然,在实际应用中,第一质量参数可以包括更多或更少种类的用于指示图片质量参数,本申请实施例对第一质量参数的种类不做具体限定。
在一些实施例中,第二质量参数可以包括第二图片分辨率,那么可以将第二图片分辨率与第一图片分辨率进行比较。如果第一图片分辨率大于第二图片分辨率,则第一设备可以确定第一质量参数所指示的图片质量优于第一缩略图的图片质量。如果第一图片分辨率小于或等于第二图片分辨率,则第一设备可以确定第一缩略图的图片质量优于或等于第一质量参数所指示的图片质量。
在一些实施例中,第二质量参数可以包括第二图片尺寸,那么可以将第二图片尺寸与第一图片尺寸进行比较。如果第一图片尺寸大于第二图片尺寸,则第一设备可以确定第一质量参数所指示的图片质量优于第一缩略图的图片质量。如果第一图片尺寸小于或等于第二图片尺寸,则第一设备可以确定第一缩略图的图片质量优于或等于第一质量参数所指示的图片质量。
可选地,所述方法还包括:
若所述第一设备本地存储有所述第一缩略图且所述第一缩略图的图片质量优于或等于所述第一质量参数所指示的图片质量,则基于所述第一资源ID,从所述第一设备本地获取所述第一缩略图的FD。
在本申请实施例中,第一设备若获取到第一获取操作,可以基于第一获取操作确定第一资源ID和第一质量参数。第一设备还可以判断第一资源ID是本地资源ID还是全局资源ID,如果第一资源ID为全局资源ID,即第一资源为全局资源,则可以基于第一质量参数判断本地存储的第一缩略图是否满足第一获取操作所需要获取的缩略图质量要求,如果是则从第一设备本地访问第一缩略图,如果不是或者第一设备本地未存储第一缩略图,再通过跨设备访问从第二设备访问第二缩略图。也即是,能够通过缩略图代理减少跨设备访问,提高访问的效率和用户体验。
可选地,所述第一资源为多媒体资源,所述获取第一资源ID,包括:
检测第二获取操作,所述第二获取操作用于获取所述多媒体资源的原图;
在所述基于所述第二资源ID,从所述第二设备访问所述第一资源ID对应的第一资源之前,所述方法还包括:
确定所述第一设备本地未存储所述多媒体资源的缓存数据;
所述基于所述第二资源ID,从所述第二设备访问所述第一资源ID对应的第一资源,包括:
基于所述第二资源ID,从所述第二设备获取所述多媒体资源的缓存数据。
可选地,所述方法还包括:
获取所述多媒体资源的逻辑FD。
在本申请实施例中,第一设备若获取到第二获取操作,可以判断第一资源ID是本地资源ID还是全局资源ID,如果第一资源ID为全局资源ID,即第一资源为全局资源,则可以从第一设备本地访问第一资源的缓存数据,或者,在第一设备未存储第一资源的缓存数据的情况下,通过跨设备访问从第二设备访问第一资源,实现了设备互联和数据共享。
可选地,所述基于所述第二资源ID,从所述第二设备访问所述第一资源ID对应的第一资源,包括:
基于所述第二资源ID,生成第一全局内容URI;
基于所述第一全局内容URI,从所述第二设备访问所述第一资源。
其中,第一设备可以向第二设备发送第一访问请求,第一访问请求中携带第一全局内容URI和操作指令,第二设备基于第一全局内容URI所携带的内容类型、路径和第二资源ID,定位到第一资源,基于该操作指令对第一资源进行操作,并向第一设备反馈操作结果。
可选地,所述第一全局内容URI中携带第一修改时间和第一版本信息中的至少一个,所述第一修改时间用于指示所述第一资源的修改时间,所述第一版本信息用于指示所述第一资源的版本。相应的,第二设备可以第一修改时间和第一版本信息中的至少一个获取第一资源。
可选地,所述第一全局内容URI中携带第一访问账号和第一目标账号中的至少一个,所述第一访问账号用于指示访问所述第一资源的用户身份,所述第一目标账号用于指示所述第一资源所归属的用户身份。相应的,若第一全局内容URI中包括第一访问账号,则第二设备可以对第一访问账号进行验证。如果第一访问账号具有访问第二设备的权限,则确定验证通过,从而响应第一访问请求,否则确定验证不通过,不响应第一访问请求。若第一全局内容URI中包括第一目标账号,则第二设备可以对第一目标账号进行验证。如果确定第一目标账号与第二设备对应,则确定验证通过,从而响应第一访问请求,否则确定验证不通过,不响应第一访问请求。若第一全局内容URI中包括第一访问账号和第一目标账号,则第二设备可以对第一访问账号和第一目标账号进行验证。如果确定第一目标账号与第二设备对应,且第一访问账号具有访问第一目标账号的权限,则确定验证通过,从而响应第一访问请求,否则确定验证不通过,不响应第一访问请求。
可选地,所述第一全局内容URI中携带第一加密设备ID,所述第一加密设备ID由所述第一设备基于所述第二设备的设备ID对所述第二设备的设备ID进行加密得到。相应的,第二设备可以通过第二设备的设备ID对第一加密设备ID进行解密。如果解密成功且解密得到的是第二设备的设备ID,则第二设备确定第一资源是第二设备中的资源,从而响应第一访问请求,否则不响应第一访问请求。
全局内容URI的数据格式可以为:
内容://[访问账号(oper-name)]:[目标账号(dest-name)]@[加密的接收设备ID(device-id(encrypted))]?[修改时间(modifiedDate)]#[版本信息魔术字(magic)]/[提供器]/[路径]/[组]/[本地资源ID]。
其中,访问账号用于指示访问资源的用户身份;目标账号为用于指示资源所归属 的用户身份;访问行号和目标账号可以是当前登录的账号,也可以是当前未登录的账号;加密设备ID,可以用于接收到全局内容URI的设备对资源所在的设备以及接收该全局内容URI的设备进行验证,加密设备ID可以通过经过目标设备的设备ID对接收设备(即接收到第一全局内容URI的设备)的设备ID加密得到,目标设备和接收设备可以是同一设备,加密设备ID可以避免应用程序感知和收集设备ID,减少用户隐私泄露的问题,提高访问过程的安全性;版本信息魔术字可以用于指示第一资源的版本信息,且由于是将目标设备的设备ID作为加密秘钥,因此既不需要协商秘钥,也避免了秘钥固定的问题;修改时间可以避免访问到错误修改时间的资源,确保访问资源内容的一致性;版本信息魔术字可以避免访问到错误版本的资源,确保访问资源版本的一致性。
可选地,若所述第一资源ID归属于与所述第一设备对应的第二ID索引段,则基于所述第一资源ID,从所述第一设备本地获取所述第一资源的FD。
可选地,所述方法还包括:
获取第二全局内容URI;
在所述第二全局内容URI中添加第二访问账号、第二目标账号、第二加密设备ID、第二修改时间、第二版本信息中的至少一个,得到第三全局内容URI;
基于所述第三全局内容URI,从第四设备访问第二资源;
其中,所述第二访问账号用于指示访问所述第二资源的用户身份,所述第二目标账号用于指示所述第二资源所归属的用户身份,所述第二修改时间用于指示所述第二资源的修改时间,所述第二版本信息用于指示所述第二资源的版本,所述第二加密设备ID由所述第一设备基于所述第四设备的设备ID对所述第四设备的设备ID进行加密得到。
可选地,所述第二全局内容URI中包括第三加密设备ID,在所述第二全局内容URI中添加第二加密设备ID之前,所述方法还包括:
基于在线的多个第五设备的设备ID,对所述第三加密设备ID进行解密;
若基于所述第四设备的设备ID对所述第三加密设备ID解密成功,且解密得到所述第一设备的设备ID,则基于所述第四设备的设备ID,对所述第四设备的设备ID进行加密,得到所述第二加密设备ID,所述第四设备为所述多个第五设备中的任一个;
所述第二全局内容URI中添加第二加密设备ID,包括:
将所述第二全局内容URI中的所述第三加密设备ID更新为所述第二加密设备ID。
可选地,所述在所述第二全局内容URI中添加第二访问账号,包括:
若所述第二全局内容URI中不包括第三访问账号,则在所述第二全局内容URI中添加所述第二访问账号。若第二全局内容URI中包括第三访问账号,则第一设备可以将第二全局内容URI中的第三访问账号更新为第二访问账号。在另一些实施例中,若第二全局内容URI中包括第三访问账号,第一设备也可以不更新对第三访问账号,那么第三全局内容URI中包括的仍然是第三访问账号,或者,也可以理解为第三全局内容URI中包括的第二访问账号和第三访问账号相同。
可选地,所述在所述第二全局内容URI中添加第二目标账号,包括:
若所述第二全局内容URI中不包括第三目标账号,则在所述第二全局内容URI 中添加所述第二目标账号。若第二全局内容URI中包括第三目标账号,则第一设备可以将第一设备将第二全局内容URI中的第三目标账号替换为第二目标账号。在另一些实施例中,若第二全局内容URI中包括第三目标账号,第一设备也可以不更新第三目标账号,那么第三全局内容URI中包括的仍然是第三目标账号,或者,可以理解为第三全局内容URI中包括的第二目标账号与第三目标账号相同。
可选地,所述在所述第二全局内容URI中添加第二修改时间和/或第二版本信息,包括:
若所述第二全局内容URI中不包括第三修改时间,则在所述第二全局内容URI中添加所述第二修改时间,也可以理解为第三全局内容URI中包括的第二修改时间与第三修改时间相同;和/或,
若所述第二全局内容URI中不包括第三版本信息,则在所述第二全局内容URI中添加所述第二版本信息,也可以理解为第三全局内容URI中包括的第二版本信息与第三版本信息相同。
在一些实施例中,第四设备可以基于多个在线的第七设备的设备ID对第二加密设备ID进行解密,其中,多个第七设备可以包括第四设备。如果基于第四设备的设备ID解密成功且解密得到的也是第四设备的设备ID,则第四设备确定第二资源是第四设备中的资源,从而响应第一设备的访问,否则第四设备可以不响应第一设备的访问。
在一些实施例中,若第二全局内容URI中包括第二访问账号和第三访问账号中的任一个,和/或,第二目标账号和第三目标账号中任一个,则第五设备还可以按照前述第一设备对第一访问账号和第一目标账号进行验证的方式,对第二访问账号和第三访问账号中的任一个,和/或,第二目标账号和第三目标账号中任一个进行验证。如果验证通过则响应第一设备的访问,否则不响应第一设备的访问。
在一些实施例中,第四设备可以按照第二修改时间和第二版本信息中的至少一个,获取第二资源。
在本申请实施例中,第一设备在获取到第二全局内容URI时,可以在第二全局内容URI中添加第二访问账号、第二目标账号、第二加密设备ID、第二修改时间、第二版本信息中的至少一个,得到第三全局URI中,从而基于第三全局内容URI从第四设备访问第二资源。由于第三全局内容URI中可以包括第三加密设备ID,使得第四设备可以对分享资源的设备以及接收第三全局内容URI的设备进行验证,可以确保跨设备访问的安全性,也无需进行密钥协商,避免了固定密钥的问题。由于第三全局内容URI中可以包括第二访问账号和第二目标账号,便于第四设备对访问的用户身份和被访问的用户身份进行鉴权,提高了跨设备访问的安全性。由于第三全局内容URI中可以包括第二修改时间和第二版本信息,确保了跨设备访问的资源内容和资源版本的一致性。
第二方面,本申请实施例提供一种访问资源的方法,应用于第一设备,包括:
获取第二全局内容URI;
在所述第二全局内容URI中添加第二访问账号、第二目标账号、第二加密设备ID、第二修改时间、第二版本信息中的至少一个,得到第三全局内容URI;
基于所述第三全局内容URI,从第四设备访问第二资源;
其中,所述第二访问账号用于指示访问所述第二资源的用户身份,所述第二目标 账号用于指示所述第二资源所归属的用户身份,所述第二修改时间用于指示所述第二资源的修改时间,所述第二版本信息用于指示所述第二资源的版本,所述第二加密设备ID由所述第一设备基于第四设备的设备ID对所述第四设备的设备ID进行加密得到。
在本申请实施例中,第一设备在获取到第二全局内容URI时,可以在第二全局内容URI中添加第二访问账号、第二目标账号、第二加密设备ID、第二修改时间、第二版本信息中的至少一个,得到第三全局URI中,从而基于第三全局内容URI从第四设备访问第二资源。由于第三全局内容URI中可以包括第三加密设备ID,使得第四设备可以对分享资源的设备以及接收第三全局内容URI的设备进行验证,可以确保跨设备访问的安全性,也无需进行密钥协商,避免了固定密钥的问题。由于第三全局内容URI中可以包括第二访问账号和第二目标账号,便于第四设备对访问的用户身份和被访问的用户身份进行鉴权,提高了跨设备访问的安全性。由于第三全局内容URI中可以包括第二修改时间和第二版本信息,确保了跨设备访问的资源内容和资源版本的一致性。
可选地,所述第二全局内容URI中包括第三加密设备ID,在所述第二全局内容URI中添加第二加密设备ID之前,所述方法还包括:
基于在线的多个第五设备的设备ID,对所述第三加密设备ID进行解密;
若基于所述第四设备的设备ID对所述第三加密设备ID解密成功,且解密得到所述第一设备的设备ID,则基于所述第四设备的设备ID,对所述第四设备的设备ID进行加密,得到所述第二加密设备ID,所述第四设备为所述多个第五设备中的任一个;
所述第二全局内容URI中添加第二加密设备ID,包括:
将所述第二全局内容URI中的所述第三加密设备ID更新为所述第二加密设备ID。
可选地,所述在所述第二全局内容URI中添加第二访问账号,包括:
若所述第二全局内容URI中不包括第三访问账号,则在所述第二全局内容URI中添加所述第二访问账号。若第二全局内容URI中包括第三访问账号,则第一设备可以将第二全局内容URI中的第三访问账号更新为第二访问账号。在另一些实施例中,若第二全局内容URI中包括第三访问账号,第一设备也可以不更新对第三访问账号,那么第三全局内容URI中包括的仍然是第三访问账号,或者,也可以理解为第三全局内容URI中包括的第二访问账号和第三访问账号相同。
可选地,所述在所述第二全局内容URI中添加第二目标账号,包括:
若所述第二全局内容URI中不包括第三目标账号,则在所述第二全局内容URI中添加所述第二目标账号。若第二全局内容URI中包括第三目标账号,则第一设备可以将第一设备将第二全局内容URI中的第三目标账号替换为第二目标账号。在另一些实施例中,若第二全局内容URI中包括第三目标账号,第一设备也可以不更新第三目标账号,那么第三全局内容URI中包括的仍然是第三目标账号,或者,可以理解为第三全局内容URI中包括的第二目标账号与第三目标账号相同。
可选地,所述在所述第二全局内容URI中添加第二修改时间和/或第二版本信息,包括:
若所述第二全局内容URI中不包括第三修改时间,则在所述第二全局内容URI中添加所述第二修改时间,也可以理解为第三全局内容URI中包括的第二修改时间与 第三修改时间相同;和/或,
若所述第二全局内容URI中不包括第三版本信息,则在所述第二全局内容URI中添加所述第二版本信息,也可以理解为第三全局内容URI中包括的第二版本信息与第三版本信息相同。
在一些实施例中,若第二全局内容URI中包括第二加密设备ID,第四设备可以基于多个在线的第七设备的设备ID对第二加密设备ID进行解密,其中,多个第七设备可以包括第四设备。如果基于第四设备的设备ID解密成功且解密得到的也是第四设备的设备ID,则第四设备确定第二资源是第四设备中的资源,从而响应第一设备的访问,否则第四设备可以不响应第一设备的访问。
在一些实施例中,若第二全局内容URI中包括第二访问账号和第三访问账号中的任一个,和/或,第二目标账号和第三目标账号中任一个,则第五设备还可以按照前述第一设备对第一访问账号和第一目标账号进行验证的方式,对第二访问账号和第三访问账号中的任一个,和/或,第二目标账号和第三目标账号中任一个进行验证。如果验证通过则响应第一设备的访问,否则不响应第一设备的访问。
在一些实施例中,第四设备可以按照第二修改时间和第二版本信息中的至少一个,获取第二资源。
第三方面,本申请实施例提供一种访问资源的方法,应用于第四设备,包括:
接收第一设备的第二访问请求,所述第二访问请求中携带第三全局内容URI,所述第三全局内容URI包括第二访问账号、第二目标账号、第二加密设备ID、第二修改时间、第二版本信息中的至少一个,得到第三全局内容URI;
基于所述第三全局内容URI,响应所述第一设备对第二资源的访问;
其中,所述第二访问账号用于指示访问所述第二资源的用户身份,所述第二目标账号用于指示所述第二资源所归属的用户身份,所述第二修改时间用于指示所述第二资源的修改时间,所述第二版本信息用于指示所述第二资源的版本,所述第二加密设备ID由所述第一设备基于所述第四设备的设备ID对所述第四设备的设备ID进行加密得到。
在一些实施例中,若第二全局内容URI中包括第二加密设备ID,则第四设备可以基于多个在线的第七设备的设备ID对第二加密设备ID进行解密,其中,多个第七设备可以包括第四设备。如果基于第四设备的设备ID解密成功且解密得到的也是第四设备的设备ID,则第四设备确定第二资源是第四设备中的资源,从而响应第一设备的访问,否则第四设备可以不响应第一设备的访问。
在一些实施例中,若第二全局内容URI中包括第二访问账号和第三访问账号中的任一个,和/或,第二目标账号和第三目标账号中任一个,则第五设备还可以按照前述第一设备对第一访问账号和第一目标账号进行验证的方式,对第二访问账号和第三访问账号中的任一个,和/或,第二目标账号和第三目标账号中任一个进行验证。如果验证通过则响应第一设备的访问,否则不响应第一设备的访问。
在一些实施例中,第四设备可以按照第二修改时间和第二版本信息中的至少一个,获取第二资源。
第四方面,本申请实施例提供一种访问资源的装置,该装置包含在电子设备中, 该装置具有实现上述各方面及上述各方面的可能实现方式中电子设备行为的功能。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块或单元。例如,收发模块或单元、处理模块或单元、获取模块或单元等。
第五方面,本申请实施例提供一种访问资源的系统,包括第一设备和第四设备:
所述第一设备获取第二全局内容URI;
所述第一设备在所述第二全局内容URI中添加第二访问账号、第二目标账号、第二加密设备ID、第二修改时间、第二版本信息中的至少一个,得到第三全局内容URI;
所述第一设备向所述第四设备发送第二访问请求,所述第二访问请求中携带第三全局内容URI;
所述第四设备基于所述第三全局内容URI,响应所述第一设备对第二资源的访问;
其中,所述第二访问账号用于指示访问所述第二资源的用户身份,所述第二目标账号用于指示所述第二资源所归属的用户身份,所述第二修改时间用于指示所述第二资源的修改时间,所述第二版本信息用于指示所述第二资源的版本,所述第二加密设备ID由所述第一设备基于所述第四设备的设备ID对所述第四设备的设备ID进行加密得到。
第六方面,本申请实施例提供一种电子设备,包括:存储器和处理器,存储器用于存储计算机程序;处理器用于在调用计算机程序时执行上述第一方面中任一项,和/或,第二方面中任一项,和/或,第三方面任一项所述的方法。
第七方面,本申请实施例提供一种芯片系统,所述芯片系统包括处理器,所述处理器与存储器耦合,所述处理器执行存储器中存储的计算机程序,以实现上述第一方面中任一项,和/或,第二方面中任一项,和/或,第三方面任一项所述的方法。
其中,所述芯片系统可以为单个芯片,或者多个芯片组成的芯片模组。
第八方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述第一方面中任一项,和/或,第二方面中任一项,和/或,第三方面任一项所述的方法。
第九方面,本申请实施例提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述第一方面中任一项,和/或,第二方面中任一项,和/或,第三方面任一项所述的方法。
可以理解的是,上述第四方面至第九方面的有益效果可以参见上述第一方面或第二方面中的相关描述,在此不再赘述。
附图说明
图1为本申请实施例所提供的一种电子设备的结构示意图;
图2为本申请实施例所提供一种分布式系统的结构示意图;
图3为本申请实施例所提供一种电子设备的软件结构框图;
图4为本申请实施例提供的一种映射资源ID的方法的流程图;
图5为本申请实施例提供的一种分配ID索引段的方法的流程图;
图6为本申请实施例提供的一种主动访问资源的方法的流程图;
图7为本申请实施例提供的另一种主动访问资源的方法的流程图;
图8为本申请实施例提供的一种资源显示界面的示意图;
图9为本申请实施例提供的另一种资源显示界面的示意图;
图10为本申请实施例提供的另一种主动访问资源的方法的流程图;
图11为本申请实施例提供的另一种资源显示界面的示意图;
图12为本申请实施例提供的一种被动访问资源的方法的流程图;
图13为本申请实施例提供的一种跨设备访问场景的示意图。
具体实施方式
本申请实施例提供的访问资源的方法可以应用于手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、智能家居设备等电子设备上,本申请实施例对电子设备的具体类型不作任何限制。
图1是本申请实施例提供的一例电子设备100的结构示意图。电子设备100可以包括处理器110、存储器120和通信模块130等。
其中,处理器110可以包括一个或多个处理单元,存储器120用于存储程序代码和数据。在本申请实施例中,处理器110可执行存储器120存储的计算机执行指令,从而执行本申请实施例所述的方法。
通信模块130可以用于电子设备100的各个内部模块之间的通信、或者电子设备100和其他外部电子设备之间的通信等。示例性的,如果电子设备100通过有线连接的方式和其他电子设备通信,通信模块130可以包括接口等,例如USB接口,USB接口可以是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
或者,通信模块130可以包括音频器件、射频电路、蓝牙芯片、无线保真(wireless fidelity,Wi-Fi)芯片、近距离无线通讯技术(near-field communication,NFC)模块等,可以通过多种不同的方式实现电子设备100与其他电子设备之间的交互。
可选地,电子设备100还可以包括显示屏140,显示屏140可以显示人机交互界面中的图像或视频等。
可选地,电子设备100还可以包括外设设备150,例如鼠标、键盘、扬声器、麦克风等。
应理解,除了图1中列举的各种部件或者模块之外,本申请实施例对电子设备100的结构不做具体限定。在本申请另一些实施例中,电子设备100还可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
为了便于理解本申请实施例中的技术方案,下面首先对本申请实施例的应用场景予以介绍。
电子设备可以存储并访问各种资源,比如音频、视频、图片、文件和文件夹等。在一些实施例中,电子设备中的每个资源都具有对应的资源ID,电子设备可以基于该资源ID生成对应的本地内容URI,并基于该本地内容URI访问的资源,包括增加、删除、修改、查询和浏览等。
其中,本地内容URI的格式可以为内容://提供器(provider)/[路径(path)]/[组(group)]/[ID]。提供器可以为安卓系统中的四大组件之一:内容提供器(content provider);该内容提供器包括文件提供器(file provider)、多媒体提供器(media provider)、文本提供器(documents provider)、外部存储提供器(external storage provider)和下载提供器(downloads provider)等多种子类。[路径]用于指示资源在设备中的位置。[组]用于指示资源所在的分组,该分组可以是按照资源的类型进行划分的。[ID],即资源ID,用于标识所获取的资源,同一资源在不同设备中的ID可以不同。其中,[路径(path)]、[组(group)]和[ID]是可选的。
以下给出几个本地内容URI的示例:
示例1:content://com.android.providers.downloads.documents/document/1324。其中,[提供器]为“com.android.providers.downloads.documents”,[路径]为“document”,[ID]为“1324”。
示例2:content://media/external/downloads/56。其中,[提供器]为“media”,[路径]为“external/downloads”,[ID]为“56”。
示例3:content://media/external/images/media/10。其中,[提供器]为“media”,[路径]为“external”,[组]为“images/media”,[ID]为“10”。
但随着终端技术的不断发展,为了实现设备互联和资源共享,使得电子设备能够发挥更大的价值,电子设备之间的跨设备访问也越来越受到广泛的关注。例如,同一个用户可能拥有手机、平板电脑和台式电脑等多种电子设备,该用户通过手机拍摄的照片是存储在该手机上的,但用户可能同样希望通过平板电脑和台式电脑访问该照片。而由于在上述实施例中,资源ID只能够对电子设备本地的资源进行标识,从而导致在不同电子设备中的不同资源,其所对应的资源ID可能会相同,那么当电子设备获取到某个资源ID时,便不能确定该资源ID对应的究竟是哪个资源。因此,实际上电子设备并不能够基于本地内容URI去进行跨设备访问。
为解决上述技术问题,本申请实施例提供了一种分布式系统以及访问资源的方法。
请参照图2,该分布式系统可以包括多个电子设备,图2中示出了设备A 210、设备B 220、设备C 230和设备D 240,设备A 210、设备B 220、设备C 230以及设备D 240之间可以通过网络连接。
例如:设备A 210可以为手机,设备B 220可以为家庭数据中心(home data center,HDC)设备(如路由器),设备C 230可以为服务器,设备D 240可以为平板电脑。其中,HDC设备可以作为家庭数据的存储和处理中心,家庭数据可以包括家庭文件、音频、视频和图片等。在一些实施例中,HDC设备可以包括路由器或网关。可以理解的是,本申请实施例仅以手机、路由器、服务器和平板电脑为例,对该分布式系统以及跨设备访问资源的方法进行说明,但并不对设备A 210、设备B 220、设备C 230和设备D 240的设备类型构成任何限定。
在一些实施例中,设备B 220、设备C 230和设备D 240可以分别与设备A 210登录有同一用户账号;和/或,在一些实施例中,设备B 220、设备C 230和设备D 240可以分别与设备A 210接入同一局域网。
在一些实施例中,设备A 210、设备B 220、设备C 230和设备D 240,可以通过软总线连接。
其中,总线是一种用于多个设备传递信息的公用通道。软总线是一种虚拟的总线,可以通过协议货架和软硬协同层屏蔽各种设备的协议差别,总线中枢模块负责解析命令完成设备间发现和连接,通过任务和数据两条总线实现设备间文件传输、消息传输等功能,从而实现设备间无感发现,零等待传输,具有自动发现、即连即用、高带宽、低时延、高可靠等功能。同一场景中的多个设备可以基于软总线完成设备虚拟化、跨设备服务调用、多屏幕协同、数据共享等分布式业务。
在上述图2中,该系统中的任一设备都可以跨设备访问其他设备中的资源。
以设备A 210和设备B 220为例,对分布式系统的软件结构进行说明,如图3所示。
设备A 210包括应用A 211、资源访问接入模块A212、VFS(virtual filesystem switch,虚拟文件系统)213和分布式文件系统214。其中,VFS 213和分布式文件系统214设置在设备A 210的内核中。
应用A 211可以为设备A 210中任意的应用程序。
资源访问接入模块A 212用于向应用A 211提供访问资源的入口,包括提供用于访问资源的接口,和/或,提供用于访问资源的应用界面。在一些实施例中,资源访问接入模块A 212可以用于本地资源ID与全局资源ID之间的映射,也可以用于判断某个资源ID是设备A 210的本地资源ID,还是其他设备的全局资源ID,即确定相应的资源所在的位置并选择进行本地访问还是跨设备访问。
VFS 213可以将设备A 210中实际的文件系统与操作系统隔离开,对于设备A 210的不同应用程序而言,可以按照相同的方式访问任意类型的文件系统。
相似的,设备B 220可以包括应用B 221、资源访问接入模块B 222、VFS 213和分布式文件系统214。其中,应用B 221可以为设备B 220中任意的应用程序,资源访问接入模块B 222可以与资源访问接入模块A 212相同或相似。
分布式文件系统214可以部署在设备A和设备B中,设备A 210和设备B 220的分布式文件系统中可以存储不同的资源,并可以通过分布式文件系统214访问本端和对端的资源。
设备B 220可以通过资源访问接入模块B 222获取设备B 220中的资源的元数据,该元数据中包括该资源在设备B的本地资源ID,还可以通过与设备A 210之间的网络连接(如软总线)发送给设备A 210。设备A 210通过资源访问接入模块A 212,将设备B 220的本地资源ID映射为与设备A 210中任一资源的本地资源ID不同的全局资源ID,那么对于设备A 210来说,避免了设备A 210和设备B 220不同资源对应同一个资源ID的问题,设备A 210可以基于设备A 210中本地资源ID访问设备A 210本地的资源,也可以基于全局资源ID,访问设备B 220中的资源,从而实现跨设备访问。
其中,设备A 210中的应用A 211可以不感知资源所在的具体位置,对于应用A 而言,资源ID并无本地或跨设备之分。当应用A 211基于某个资源ID访问该资源时,设备A 210中的资源访问接入模块A 212,可以基于判断该资源ID是设备A 210的本地资源ID,还是其他设备的全局资源ID。如果该资源ID是设备A 210的本地资源ID,则资源访问接入模块A 212通过设备A中的VFS 213,从分布式文件系统214中访问该资源。如果该资源ID是设备B 220的全局资源ID,可以将全局资源ID映射为设备B 220的本地资源ID,然后通过与设备A 210之间的网络连接(如软总线),从设备B 220的分布式文件系统214访问该资源。
相似的,设备B 220也可以按照与设备A 210相似的方式,访问设备A 210中的资源。
下面以具体地实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
请参照图4,为本申请实施例所提供的一种映射资源ID的方法的流程图。该方法可以用于第一设备和第二设备,其中,第一设备和第二设备可以为图2和图3中的任意设备。在一些实施例中,第一设备可以在发现第二设备上线(比如与第二设备建立网络连接成功,或者接收到第二设备的资源共享请求)之后,按照如图4所示的方法,完成对第二设备中的本地资源ID的映射,以便于后续访问第二设备中的资源。在另一些实施例中,第一设备可以由用户触发与第二设备的资源共享之后,(比如获取到用户指定的与第二设备进行资源共享的指令,或者,获取到用户对与第二设备进行资源共享的授权),按照如图4所示的方法,完成对第二设备中本地资源ID的映射。在另一些实施例中,第一设备可以在接收到第二设备发送的本地资源ID之后,按照如图4所示的方法,完成对第二设备中的本地资源ID的映射。当然,在实际应用中,第一设备也可以在其他触发条件下,按照如图4所示的方法,完成对第二设备本地资源ID的映射,本申请实施例对该触发条件不做具体限定。需要说明的是,该方法并不以图4以及以下所述的具体顺序为限制,应当理解,在其它实施例中,该方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。该方法包括如下步骤:
S401,第一设备分配与第二设备对应的第一ID索引段。
第一设备分配与第二设备对应的第一ID索引段的方式,可以参照下述图5所示的方法。
其中,第一ID索引段可以包括多个资源ID,该多个资源ID可以是连续的,也可以是非连续的。
需要说明的是,S401是可选的步骤。
S402,第一设备获取第二设备中第三资源的元数据,该元数据中包括第三资源在第二设备中的本地资源ID。
第三资源的元数据可以为用于描述第三资源的属性的信息。第三资源在第二设备中的本地资源ID可以由第三设备生成的。
在一些实施例中,第三资源的元数据还可以包括第三资源的内容类型和第三资源在第二设备中的路径,还可以包括在该路径下的组。
在一些实施例中,第三资源的元数据还可以包括第三资源的资源名、资源大小和 打开方式中的至少一个。
在一些实施例中,第三资源的元数据还可以包括本信息和修改时间中的至少一个,其中,修改时间用于指示修改第三资源的时间,版本信息用于指示第三资源的版本。
当然,在实际应用中,第三资源的元数据还可以包括其他用于描述第三资源的属性的信息。
需要说明的是,本申请实施例对第一设备从第二设备获取第三资源的元数据的时机和方式均不作具体限定。例如,以获取第三资源的元数据的方式而言,第二设备可以在与第一设备建立网络连接后,即向第一设备发送第三资源的元数据;或者,第二设备在接收到用户对第三资源的分享指令时,向第二设备发送第三资源的元数据。
另外,在一些实施例中,第一设备可以先通过S402获取到第二设备中第三资源的元数据,再通过S401分配与第二设备对应的第一ID索引段,也即是,只有在确定第二设备向第一设备分享资源的情况下,才分配与第二设备对应的第一ID索引段,能够节省索引资源。
S403,第一设备从第一ID索引段中,确定与第三资源的本地资源ID对应的全局资源ID。
由于电子设备的本地资源ID是在该电子设备本端中对资源进行标识,那么第二设备中的本地资源ID可能会与第一设备中的本地资源ID重复,使得第一终端无法基于该本地资源ID确定对应的资源,因此,第一设备可以从第一ID索引段中,确定与第三资源的本地资源ID对应的全局资源ID,即将第三资源的本地资源ID映射为全局资源ID,从而避免本地资源ID与第一设备的本地资源ID重复的问题。
在一些实施例中,第一设备可以基于第一ID索引段与第一设备的第二ID索引段之间的偏移量,对第三资源的本地资源ID进行偏移,从而得到与第三资源的全局资源ID。
其中,偏移量可以用于指示将第一ID索引段与第二ID索引段中对具有映射关系的资源ID之间的偏移程度。例如,第一ID索引段为3*10 8-4*10 8,第二ID索引段为0-1*10 8,则该偏移量为3*10 8-0=3*10 8,将第二ID索引段中的某个资源ID加上3*10 8,即可得到该资源ID偏移后的在第一ID索引段中的资源ID。
需要说明的是,本申请实施例对第一设备从第一ID索引段中,确定与第三资源的本地资源ID对应的全局资源ID的方式不做具体限定。例如,第一设备也可以按照资源ID从小到大的顺序,依次从第一ID索引段中获取与第三资源的本地资源ID对应的全局资源ID;或者,第一设备可以随机从第一ID索引段中,确定与第三资源的本地资源ID对应的全局资源ID。
例如,第一设备中包括文件A,文件A在第一设备中的本地资源ID为10,第二设备中包括文件B,文件B在第二设备中的本地资源ID也为10。可以看出,第一设备无法确定10对应的到底是文件A还是文件B。假如,第一设备分配的与第二设备对应的第一ID索引段为3*10 8-4*10 8,那么第一设备便可以将文件B在第二设备中的本地资源ID,映射至3*10 8-4*10 8中,得到文件B的全局资源ID为3*10 8+10,那么第一设备可以确定10对应的就是第一设备本端的文件A,3*10 8+10为第二设备中的文件B。
还需要说明的是,若省略了S401,则在S403中,第一设备可以随机在第二ID索 引段之外选择一个未使用的资源ID作为与第三资源的本地资源ID对应的全局资源ID,并将全局资源ID添加至第一ID索引段。多个第三资源的全局资源ID,可以构成与第二设备对应的第一ID索引段。
在一些实施例中,当第一设备确定了第三资源的在第二设备的本地资源ID与全局资源ID时,可以将该本地资源ID和全局资源ID存储在资源ID对应关系中,该资源ID对应关系可以用于指示本地资源ID与全局资源ID之间的对应关系。
在本申请实施例中,第一设备可以分配与第二设备对应的第一ID索引段,并获取第二设备中第三资源的元数据,该元数据中包括第三资源在第二设备中的本地资源ID。第一设备将第三资源的本地资源ID映射为全局资源ID,避免了第三资源在第二设备中的本地资源ID,与第一设备本地其他资源的本地资源ID重复的问题,使得第一设备可以进行跨设备访问第二设备中的第三资源。通过不同的ID索引段标识不同的设备,也便于对URI的平滑扩展,不需要修改北向接口,使得上层应用不需要进行额外的配置就可以进行跨设备访问。
请参照图5,为本申请实施例所提供的一种分配ID索引段的方法的流程图。该方法可以用于第一设备、第二设备和第三设备,其中,第一设备、第二设备和第三设备可以为图2和图3中的任意设备。需要说明的是,该方法并不以图5以及以下所述的具体顺序为限制,应当理解,在其它实施例中,该方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。该方法包括如下步骤:
S501,第二设备上线或者下线。
在一些实施例中,第二设备上线可以指第二设备与第一设备建立网络连接,第二设备下线可以指第二设备与第一设备断开网络连接。
例如,第二设备靠近第一设备,并通过蓝牙或无线网络Wi-Fi等近距离通信技术与第一设备建立连接,从而完成上线;或者,第二设备或第一设备断开该连接,则第二设备下线。
在一些实施例中,第二设备上线可以指第二设备将第二设备的状态切换至上线,第二设备下线可以指第二设备将第二设备的状态切换至下线。
S502,第一设备接收到第二设备的状态变更事件。
其中,状态变更事件包括上线事件或下线事件。
S503,第一设备判断第二设备上线还是下线。如果是上线则执行S504,如果是下线则执行S507。
其中,第一设备如果接收到的状态变更事件为上线事件,则确定第二设备上线;如果接收到的状态变更信息为下线事件,则确定第二设备下线。
S504,第一设备判断当前是否存在空闲的第三ID索引段。如果存在则执行S505,否则的执行S506。
其中,第一设备可以设置索引资源池,该索引资源池包括至少一个第三ID索引段以及各第三ID索引段对应的分配状态信息。第三ID索引段的分配状态信息可以用于指示第三ID索引段当前的状态是已分配还是空闲,如果是已分配,则分配状态信息还用于指示第三ID索引段所对应的电子设备的设备ID。因此,第一设备可以从索引资源池获取各第三ID索引段对应的分配状态信息,基于该分配状态信息确定该第三ID 索引段是否空闲。
需要说明的是,每个第三ID索引段可以包括多个资源ID,该多个资源ID可以是连续的,也可以是非连续的;不同的第三ID索引段之间包括的资源ID的数目可以相同也可以不同,相邻的两个第三ID索引段之间可以是连续的,也可以是非连续的。
例如,至少一个第三ID索引段可以包括0-10 8、10 8-2*10 8、2*10 8-3*10 8、3*10 8-4*10 8和4*10 8-5*10 8。其中,这5个第三ID索引段是连续的,且每个第三ID索引段包括的资源ID数目相同,均为10 8个。又例如,至少一个第三ID索引段可以包括0-2*10 8、4*10 8-5*10 8和6*10 8-9*10 8,其中,这三个第三ID索引段不连续,且每个第三ID索引段包括的资源ID的数目也均不相同。
在一些实施例中,第一设备可以按照电子设备的设备类型设置至少一个第三ID索引段,即每个第三ID索引段可以对应一个设备类型,一个设备类型可以对应至少一个第三ID索引段。
其中,设备类型用于指示电子设备的类型。设备类型的划分方式可以由相关技术人员事先确定。在一些实施例中,设备类型可以划分为第一设备本端、服务器、终端设备、HDC设备,相应的,每种设备类型对应的ID索引段可以如下表1所示。
表1
Figure PCTCN2022114006-appb-000001
需要说明的是,本申请实施例仅以上述表1对设备类型与ID索引段之间的对应关系进行说明,本申请实施例对ID索引段的划分方式以及其与设备类型之间的对应关系、以及各ID索引段的范围和大小并不做具体限定。
S505,第一设备基于空闲的第三ID索引段,为第二设备分配第一ID索引段。
在一些实施例中,若第一设备并未设置与第三ID索引段对应的设备类型,则第一设备可以获取任一个空闲的第三ID索引段,并将该空闲的第三ID索引段确定为与第二设备对应的第一ID索引段。
在一些实施例中,第一设备若是基于电子设备的设备类型设置得到的至少一个第三ID索引段,则第一设备可以基于第二设备的设备类型,获取与该设备类型对应且空闲的第三ID索引段,并将该空闲的第三ID索引段确定为与第二设备对应的第一ID索引段。
例如,第二设备的设备类型为终端设备,则第一设备可以从上述表1所示的设备类型与ID索引段之间的对应关系中,确定终端设备对应的第三ID索引段包括3*10 8-4*10 8、4*10 8-5*10 8、5*10 8-6*10 8、6*10 8-7*10 8、7*10 8-8*10 8和8*10 8-9*10 8,因此,第一设备可以从这6个第三ID索引段段中,获取任一个空闲的第三ID索引段作为与第二设备对应的第一ID索引段。
S506,第一设备将第二设备的设备ID添加至待分配设备队列。
其中,待分配设备队列可以包括至少一个等待分配ID索引段的电子设备的设备ID。
S507,第一设备判断是否存在已为第二设备分配第一ID索引段。若是则执行S508,否则执行S510。
第一设备可以查询各第三ID索引段的分配状态信息,如果任一第三ID索引段的分配状态信息为已分配且包括第二设备的设备ID,则该第三ID索引段为已经分配给第二设备的第一ID索引段。
S508,第一设备判断第一设备队列是否存在第三设备。若是则执行S509,否则执行S511。
如果当前第二设备是下线,且第一设备已经为第二设备分配了第一ID索引段,那么第一设备可以检测待分配设备队列是否有待分配的第三设备。
在一些实施例中,S508可以被替换为第一设备判断待分配设备队列是否存在与第二设备的设备类型相同的第三设备,若是则执行S509,否则执行S511。
S509,第一设备为第三设备分配第一ID索引段。
由于当前存在待分配的第三设备,那么可能当前索引资源池中也没有空闲的第三ID索引段,因此第一设备可以将第一ID索引段分配给第三设备。或者,在一些实施例中,第一设备可以将第一ID索引段分配给与第二设备同设备类型的第三设备。
需要说明的是,在将第一ID索引段分配给第三设备之后,可以将第三设备的设备ID从待分配设备队列删除。
S510,第一设备将第二设备的设备ID从待分配设备队列删除。
如果当前第二设备是下线,且第一设备并没有为第二设备分配对应的第一ID索引段,则第二设备下线不会影响第一ID索引段的分配状态,因此,可以直接将第二设备的设备ID从待分配设备队列删除。
S511,第一设备更新索引资源池。
通过前述步骤,索引资源池中第三ID索引段的分配状态可能已经发生了变化,因此第一设备可以更新索引资源池,以确保各第三ID索引段的分配状态是最新的,便于后续对第三ID索引段进行分配和回收。
若第一设备是在执行S505之后执行S511,即第一设备是将空闲的第三ID索引段分配给第二设备,则第一设备可以将第一ID索引段的分配状态从空闲更新为已分配,并在该第一ID索引段对应的分配状态信息中添加第二设备的设备ID。
若第一设备是在执行S508之后执行S511,即第一设备是将已为第二设备分配的第一ID索引段进行了回收,因此,第一设备可以将该第一ID索引段的分配状态从已分配更新为空闲,将该第一ID索引段对应的分配状态信息中的第二设备的设备ID删除。
若第一设备是在执行S509之后执行S511,即第一设备是将已分配给第二设备的第一ID索引段转分配给第三设备,则第一设备可以将该第一ID索引段对应的分配状态信息中的第二设备的设备ID,更新为第三设备的设备ID。
在本申请实施例中,第一设备可以在第二设备上线时,为第二设备分配对应的第一ID索引段,也可以在第二设备下线时,回收为第二设备分配的第一ID索引段,并 及时对索引资源池进行更新,使得同一ID索引段可以在不同的时间段,复用给多个设备,那么第一设备在发现新的设备上线时,都能够向该设备分配对应的ID索引段,从而对该设备中的资源进行跨设备访问,提高了跨设备访问的范围。
另外,可能第一设备需要进行跨设备访问的范围比较小,比如在个人家庭场景中,设备的总数目比较少且固定,第三ID索引段的个数大于或者等于设备的总数目,也就不需要回收已经分配的第三ID索引段,因此,第一设备在发现第二设备下线时,也可以不执行S507-S510,相应的,在第一设备可以只在第一次发现第二设备上线时,为第二设备分配第一ID索引段,之后如果再发现第二设备上线设则不需要再次分配ID索引段。也即是,S507-S510是可选的步骤。
通过前述图4和图5所述的方法,第一设备可以将第二设备中的第三资源在第二设备中的本地资源ID映射为全局资源ID,避免了第二资源在第二设备中的本地资源ID,与第一设备本地其他资源的本地资源ID重复的问题,使得第一设备可以对第二设备中的资源进行跨设备访问,因此,在下述实施例中,将详细介绍第一设备如何对第二设备中的资源进行跨设备访问。
请参照图6,为本申请实施例所提供的一种主动访问资源的方法的流程图。该方法可以用于第一设备和第二设备,其中,第一设备和第二设备可以为图2和图3中的任意设备。主动访问可以理解为第一设备通过用户选择或者其他方式,确定待访问的第一资源,主动从其他设备跨设备访问该第一资源。还需要说明的是,该方法并不以图6以及以下所述的具体顺序为限制,应当理解,在其它实施例中,该方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。该方法包括如下步骤:
S601,第一设备确定第一资源ID。
其中,第一资源ID可以由用户指定访问的第一资源的资源ID。当然,在实际应用中,第一设备也可以通过其他方式确定第一资源,本申请实施例对确定第一资源的方式不进行限定。
在一些实施例中,第一设备还可以确定访问第一资源的操作指令,该操作指令可以包括删除、修改或者查看。
S602,第一设备判断第一资源ID是本地资源ID还是全局资源ID。如果是本地资源ID则执行S606,如果是全局资源ID则执行S603。
由于第一资源可能在第一设备本地,也可能在其他设备中,因此为了确定访问第一资源的具体所处的设备,第一设备可以判断第一资源ID是本地资源ID还是全局资源ID。如果第一资源ID为本地资源ID,则第一资源在第一设备本地;而如果第一资源ID为全局资源ID,则第一资源处于第一设备之外的其他设备上。
其中,若第一资源ID归属于与第二设备对应的第一ID索引段,则第一资源ID为全局资源ID,第一资源位于第二设备。若第一资源ID归属于与第一设备对应的第二ID索引段,则第一资源ID为本地资源ID,第一资源位于第一设备本地。
在一些实施例中,第一设备可以获取第一资源ID对应的设备ID。如果该设备ID为第一设备的设备ID,则第一设备确定资源ID为本地资源ID。如果该设备ID为第一设备之外的第二设备的设备ID,则第一设备确定资源ID为全局资源ID。
S603,第一设备确定与第一资源ID对应的第二资源ID,第二资源ID为第一资源在第二设备的本地资源ID。
由于第一资源ID为全局资源ID,第一资源是第二设备中的资源,第一资源ID为对第一资源在第二设备中的第二资源ID(即本地资源ID)映射得到的,因此第一设备可以将第一资源ID映射回第二资源ID。
在一些实施例中,第一设备可以从存储的资源ID对应关系中,获取与第一资源ID对应的第二资源ID。
在一些实施例中,第一设备是对第二资源ID进行偏移得到的第一资源ID,那么在S603中,第一设备可以基于第一ID索引段与第二ID索引段之间的偏移量,对第一资源ID进行反向偏移,从而得到第二资源ID。
S604,第一设备基于第二资源ID,生成第一全局内容URI。
全局内容URI的数据格式可以为:
内容://[访问账号]:[目标账号]@[加密的接收设备ID]?[修改时间]#[版本信息魔术字]/[提供器]/[路径]/[组]/[本地资源ID]。
其中,访问账号用于指示访问资源的用户身份;目标账号为用于指示资源所归属的用户身份;访问行号和目标账号可以是当前登录的账号,也可以是当前未登录的账号;加密设备ID,可以用于接收到全局内容URI的设备对资源所在的设备以及接收该全局内容URI的设备进行验证,加密设备ID可以通过经过目标设备的设备ID对接收设备(即接收到第一全局内容URI的设备)的设备ID加密得到,目标设备和接收设备可以是同一设备,加密设备ID可以避免应用程序感知和收集设备ID,减少用户隐私泄露的问题,提高访问过程的安全性;版本信息魔术字可以用于指示第一资源的版本信息,且由于是将目标设备的设备ID作为加密秘钥,因此既不需要协商秘钥,也避免了秘钥固定的问题;修改时间可以避免访问到错误修改时间的资源,确保访问资源内容的一致性;版本信息魔术字可以避免访问到错误版本的资源,确保访问资源版本的一致性。
需要说明的是,[访问账号]、[目标账号]、[加密的接收设备ID]、[修改时间]、[版本信息魔术字]和[组]是可选项。
在一些实施例中,第一设备可以基于第二资源ID,以及第一资源的元数据包括的内容类型和路径,生成第一全局内容URI。在另一些实施例中,第一设备还可以获取第一访问账号、第一目标账号、第一加密设备ID、第一修改时间、第一版本信息和组中的至少一个信息,并将至少一个信息添加在第一全局内容URI中。
其中,第一访问账号可以是与第一设备对应的账号,也可以是由第一设备从其他设备获取得到的账号;第一目标账号可以是与第一资源所在的目标设备(即第二设备)对应的账号,第一目标账号可以由第一设备从其他设备(比如第二设备)获取得到;第一修改时间、第一版本信息和组,可以从第一资源的元数据获取得到。
S605,第一设备基于第一全局内容URI,从第二设备访问第一资源。
第一设备可以向第二设备发送第一访问请求,第一访问请求中携带第一全局内容URI和操作指令,第二设备基于第一全局内容URI所携带的内容类型、路径和第二资源ID,定位到第一资源,基于该操作指令对第一资源进行操作,并向第一设备反馈操 作结果。
在一些实施例中,若第一全局内容URI中包括第一访问账号,则第二设备可以对第一访问账号进行验证。如果第一访问账号具有访问第二设备的权限,则确定验证通过,从而响应第一访问请求,否则确定验证不通过,不响应第一访问请求。
在一些实施例中,若第一全局内容URI中包括第一目标账号,则第二设备可以对第一目标账号进行验证。如果确定第一目标账号与第二设备对应,则确定验证通过,从而响应第一访问请求,否则确定验证不通过,不响应第一访问请求。
在一些实施例中,若第一全局内容URI中包括第一访问账号和第一目标账号,则第二设备可以对第一访问账号和第一目标账号进行验证。如果确定第一目标账号与第二设备对应,且第一访问账号具有访问第一目标账号的权限,则确定验证通过,从而响应第一访问请求,否则确定验证不通过,不响应第一访问请求。
在一些实施例中,若第一全局内容URI中包括第一加密设备ID,则第二设备可以通过第二设备的设备ID对第一加密设备ID进行解密。如果解密成功且解密得到的是第二设备的设备ID,则第二设备确定第一资源是第二设备中的资源,从而响应第一访问请求,否则不响应第一访问请求。
需要说明的是,若第一全局内容URI中包括第一访问账号、第一目标账号、第一加密设备ID、则第二设备可以在对第一访问账号和第一目标账号验证通过、且成功对第一加密设备ID进行解密并得到第二设备的设备ID之后,再响应第一访问请求。
在一些实施例中,若第一全局内容URI中包括第一修改时间和第一版本信息中的至少一个,则第二设备可以基于第一修改时间和第一版本信息所指示的版本中的至少一个,获取第一资源。
S606,第一设备基于第一资源ID,从第一设备本地访问第一资源。
其中,第一设备可以基于第一资源ID,生成第一本地内容URI,基于第一本地内容URI,从第一设备本地访问第一资源。
在一些实施例中,第一设备可以基于第一资源ID,以及第一资源的元数据包括的内容类型和路径,生成第一本地URI,基于第一本地URI中的内容类型、路径和第一资源ID,定位到第一资源,基于对第一资源的操作指令,对该第一资源进行操作,并得到操作结果。
在本申请实施例中,第一设备可以确定第一资源的第一资源ID,基于第一资源ID归属的第一ID索引段,判断第一资源ID是本地资源ID还是全局资源ID。如果第一资源ID为全局资源ID,第一设备可以确定第一资源ID对应的第二资源ID,第二资源ID为第一资源在第二设备中的本地资源ID,并基于第二资源ID生成第一全局资源URI,基于第一全局内容URI从第二设备访问第一资源,实现了设备互联和资源共享。
例如,请再次参照图2,当设备A 210的用户打开图像编辑应用时,图像编辑应用启动并请求打开上一次编辑的图片A,图片A的ID为10010。设备A 210将该图片A的ID10010,与多个设备对应的ID索引段进行匹配,假如电子设备本地(包括设备A 210和设备B 220)对应的ID索引段为0-10000,设备A 210向设备B 220对应的ID索引段为10000-20000,那么设备A 210可以确定图片A的ID10010,处于10000-20000之间,因此,设备A 210可以确定图片A是处于设备B 220的全局资源,10010为图 片A的全局资源ID,设备A 210可以将10010映射至0-10000之间,从而得到图片A在设备B 220的本地资源ID为10,因此可以基于本地资源ID10,从设备B 220获取图片A。又或者,设备A 210从图像编辑应用获取到图片B的ID为10,设备A可以确定ID10处于0-10000之间,即图片B为设备A 210的本地资源,因此设备A可以基于ID10从设备A 210本地获取图片B。可以看出,即便设备A 210和设备B 220中存在本地资源ID相同的资源,设备A 210也可以准确地访问到这两个资源,但如果设备A 210不是按照本申请实施例所同的主动访问资源的方法,则可能在实际需要设备B 220中的图片A时,访问了设备A 210本地的图片B,或者,在实际需要访问设备A 210本地的图片B时,访问了设备B 220中的图片A。
请参照图7,为本申请实施例所提供的一种主动访问资源的方法的流程图。其中,第一设备和第二设备可以为如图2或图3中任意设备。需要说明的是,在图7所示的实施例中,第一资源可以为多媒体资源,包括音频、视频或图片。还需要说明的是,该方法并不以图7以及以下所述的具体顺序为限制,应当理解,在其它实施例中,该方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。该方法包括如下步骤:
S701,第一设备检测到第一获取操作,基于第一获取操作确定第一资源ID和第一质量参数。
其中,第一获取操作用于获取第一资源的缩略图,第一访问操作中可以携带第一质量参数。第一质量参数可以用于指示所要获取的缩略图的质量,在一些实施例中,第一质量参数可以包括第一图片分辨率和第一图片尺寸中的至少一个,其中,图片分辨率指图片单位面积内的像素数量,即像素密度,图片尺寸为图片长和宽包括的像素值,可以表示为M像素*N像素。当然,在实际应用中,第一质量参数可以包括更多或更少种类的用于指示图片质量参数,本申请实施例对第一质量参数的种类不做具体限定。
在一些实施例中,第一获取操作可以不指定具体的第一资源,而是携带资源筛选条件,第一设备可以基于资源筛选条件,确定第一资源。在一些实施例中,第一获取操作可以指定具体的第一资源。例如,第一设备打开某个具体的图片。
例如,当相册应用被打开时,即可以触发第一获取操作,第一设备可以将所有的图片和视频作为第一资源;或者,用户点击了相册中的图片选项,则第一获取操作中可以携带资源类型为图片,第一设备可以将所有图片类型的资源确定为第一资源;或者,用户点击了相册中某个图片,第一获取操作中可以携带该图片的ID,第一设备可以将该图片确定为第一资源。
S702,第一设备判断第一资源ID是本地资源ID还是全局资源ID。如果是本地资源ID则执S703,如果是全局资源ID则执行S704。
其中,第一设备判断第一资源ID是本地资源ID还是全局资源ID的方式,可以参照前述S602中的相关描述,此处不再一一赘述。
S703,第一设备获取从第一设备本地获取第一资源的FD。
由于第一资源ID是本地资源ID,则第一资源存储在第一设备本地,因此,第一设备可以从第一设备本地获取第一资源的FD。
其中,FD为第一设备对资源进行操作的依据,可以由第一设备在打开该资源之后生成。
S704,第一设备判断第一设备本地是否存储有第一资源的第一缩略图。如果是则执行S705,否则执行S706。
由于第一资源为存储在第二设备的全局资源,因此第一设备可以先查看第一设备本地是否缓存有第一资源的第一缩略图。
其中,第一缩略图可以是由第一设备事先从第二设备获取到的。
S705,第一设备判断第一质量参数所指示的图片质量是否优于第一缩略图的图片质量。如果是则执行S706,否则执行S710。
当第一设备本地存储有第一缩略图时,第一设备可以将第一质量参数与第一缩略图的第二质量参数进行比较。如果第二质量参数所指示的图片质量优于或等于第二质量参数所指示的图片质量,则第一缩略图的质量能够达到第一获取操作所需要获取的缩略图质量要求;否则第一缩略图的质量不能达到第一获取操作所需要获取的缩略图质量要求。
在一些实施例中,第二质量参数可以包括第二图片分辨率,那么可以将第二图片分辨率与第一图片分辨率进行比较。如果第一图片分辨率大于第二图片分辨率,则第一设备可以确定第一质量参数所指示的图片质量优于第一缩略图的图片质量。如果第一图片分辨率小于或等于第二图片分辨率,则第一设备可以确定第一缩略图的图片质量优于或等于第一质量参数所指示的图片质量。
在一些实施例中,第二质量参数可以包括第二图片尺寸,那么可以将第二图片尺寸与第一图片尺寸进行比较。如果第一图片尺寸大于第二图片尺寸,则第一设备可以确定第一质量参数所指示的图片质量优于第一缩略图的图片质量。如果第一图片尺寸小于或等于第二图片尺寸,则第一设备可以确定第一缩略图的图片质量优于或等于第一质量参数所指示的图片质量。
S706,第一设备确定与第一资源ID对应的第二资源ID,第二资源ID为第一资源在第二设备的本地资源ID。
如果第一设备本地没有存储第一缩略图或者存储了第一缩略图但第一缩略图达不到第一获取操作所需要获取的缩略图质量要求,则第一设备可以从第二设备获取第二缩略图。
需要说明的是,第一设备确定与第一资源ID对应的第二资源ID的方式,可以参照前述S603中的相关描述,此处不再一一赘述。
S707,第一设备基于第二资源ID,生成第一全局内容URI。
需要说明的是,第一设备基于第二资源ID,生成第一全局内容URI的方式,可以参照前述S604中的相关描述,此处不再一一赘述。
S708,第一设备基于第一全局内容URI,从第二设备获取第二缩略图。
其中,第二缩略图的图片质量可以优于或等于第一质量参数所指示的图片质量。
在一些实施例中,第二缩略图的图片质量可以优于第一缩略图的图片质量,第二缩略图可以被称为高清缩略图。
需要说明的是,第一设备基于第一全局内容URI,从第二设备获取第二缩略图的 方式,可以与前述S605中第一设备基于第一全局内容URI,从第二设备访问第一资源的方式相似,此处不再一一赘述。
在一些实施例中,第一设备可以事先在确定第一设备本地未存储第一缩略图和/或第二缩略图时,从第二设备获取第一缩略图和/或第二缩略图。
S709,第一设备从第一设备本地获取第二缩略图的FD。
S710,第一设备从第一设备本地获取第一缩略图的FD。
在一些实施例中,若第一设备不能基于第一获取操作确定第一质量参数,则可以从第一设备本地获取第一缩略图的FD。
在本申请实施例中,第一设备若获取到第一获取操作,可以基于第一获取操作确定第一资源ID和第一质量参数。第一设备还可以判断第一资源ID是本地资源ID还是全局资源ID,如果第一资源ID为全局资源ID,即第一资源为全局资源,则可以基于第一质量参数判断本地存储的第一缩略图是否满足第一获取操作所需要获取的缩略图质量要求,如果是则从第一设备本地访问第一缩略图,如果不是或者第一设备本地未存储第一缩略图,再通过跨设备访问从第二设备访问第二缩略图。也即是,能够通过缩略图代理减少跨设备访问,提高访问的效率和用户体验。
例如,请再次参照图2,当设备A 210的用户点击设备A 210中的相册图标时,即会触发第一获取操作。第一终端获取分布式系统(包括设备A210、设备B 220、设备C 230、设备D 240)中的所有的图片和视频的资源ID。如果该资源ID是本地资源ID,则第一设备可以从设备A 210本地获取该图片或该视频。如果该资源ID是与设备B 220(即第二设备)对应的全局资源ID(比如与设备B 220对应的全局资源ID),则设备A 210可以设备A 210本地获取该图片或该视频的缩略图,如果设备A 210本地未存储缩略图,或者存储的缩略图不满足第一获取操作所需要获取的缩略图质量要求,设备A 210可以通过跨设备访问从该其他设备(如设备B 220)获取到缩略图。之后设备A 210可以将获取到的本地图片和视频以及其他设备(如设备B 220)的图片的缩略图和视频的缩略图,展示给用户如图8所示。而当设备A 210无法通过缩略图代理来获取缩略图时,可能无法展示位于其他设备(如设备B 220)的图片和视频,如图9所示。对比图8和图9可知,通过本申请实施例所提供的主动访问方法,该通讯应用可以在不感知资源的具体位置的情况下,展示设备A 210本地以及其他设备中的图片和视频,实现了跨设备访问,同时也能够通过缩略图代理减少跨设备访问的次数,提高访问的效率和用户体验。
另外,在一些实施例中,设备A 210还可以在检测到用户点击了某个图片或视频的缩略图时,全屏显示该缩略图;在检测到用户点击了某个图片或视频的缩略图且选择了原图选项时,按照与下图10所示相同或相似的方法,主动访问该图片的原图或该视频的原视频。或者,在另一些实施例中,设备A 210可以在检测到用户点击了某个图片或视频的缩略图时,即按照如下图10所示的方法,主动访问该图片的原图或该视频的原视频。
请参照图10,为本申请实施例所提供的一种主动访问资源的方法的流程图。其中,第一设备和第二设备可以为图2和图3中的任意设备。需要说明的是,在图10所示的实施例中,第一资源可以为多媒体资源,包括音频、视频或图片。需要说明的是,该 方法并不以图10以及以下所述的具体顺序为限制,应当理解,在其它实施例中,该方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。该方法包括如下步骤:
S1001,第一设备检测到第二获取操作,第二获取操作用于获取第一资源的原图,第二获取操作携带第一资源的第一资源ID。
S1002,第一设备判断第一资源ID是本地资源ID还是全局资源ID。如果是本地资源ID则执行S1003,如果是全局资源ID则执行S1004。
S1003,第一设备获取从第一设备本地获取第一资源的FD。
S1004,第一设备判断第一设备本地是否存储有第一资源的缓存数据。如果是则执行S1005,否则执行S1006。
S1005,第一设备获取第一资源的缓存数据的FD。
S1006,第一设备获取第一资源的逻辑FD。
在一些实施例中,第一设备可以确定与第一资源ID对应的第二资源ID,第二资源ID为第一资源在第二设备的本地资源ID,基于第二资源ID,生成第一全局内容URI,基于第一全局内容URI,从第二设备获取第一资源的缓存数据。
在一些实施例中,第一设备可以在从第二设备获取第一资源的缓存数据时,向用户显示下载提示信息,该下载提示信息可以用于提示用户当前处于下载过程中,也可以用于向用户提示下载进度,其中,实时展示下载过程可以减少界面卡顿。
在本申请实施例中,第一设备若获取到第二获取操作,可以判断第一资源ID是本地资源ID还是全局资源ID,如果第一资源ID为全局资源ID,即第一资源为全局资源,则可以从第一设备本地访问第一资源的缓存数据,或者,在第一设备未存储第一资源的缓存数据的情况下,通过跨设备访问从第二设备访问第一资源,实现了设备互联和数据共享。
例如,在如图8所示的应用界面中,设备A 210的用户点击了位于屏幕右上角的图片,并点击原图选项,则设备A可以检测到第二获取操作。设备A 210确定该图片的资源ID是与设备B 220对应的全局资源ID,且设备A 210本地未存储该图片的缓存数据,因此通过跨设备访问从设备B 220获取该图片的缓存数据,并向用户提示下载过程,如图11所示。在图11中,该图片的中心位置处显示有“加载中……”等提示信息,且当下载完成时,可以刷新当前显示界面,显示该图片的原图,即把该图片放大显示原图。
请参照图12,为本申请实施例所提供的一种被动访问资源的方法的流程图。其中,第一设备、第四设备、第五设备、第六设备和第七设备可以为图2和图3中的任意设备。被动访问可以理解为,第一设备通过其他设备分享的全局内容URI,从其他设备访问待访问资源。需要说明的是,该方法并不以图12以及以下所述的具体顺序为限制,应当理解,在其它实施例中,该方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。该方法包括如下步骤:
S1201,第一设备获取第二全局内容URI。
第二全局内容URI中可以包括与待访问的资源对应的提供器、路径、组和本地资源ID。在一些实施例中,第二全局内容URU还可以包括第三访问账号、第三目标账 号、第三加密设备ID、第三修改时间、第三版本信息中的至少一个。
其中,第三加密设备ID可以由向第一设备提供第二全局内容URI的设备,通过待访问的资源所在的第四设备的设备ID,对第一设备的设备ID进行加密得到。
需要说明的是,第三修改时间和第三版本信息可以由第四设备确定,第三访问账号、第三目标账号和第三加密设备ID,可以由第四设备确定,也可以由第四设备之外的向第一设备提供第二全局内容URI的设备确定。
在一些实施例中,第一设备可以接收第六设备发送的第二全局内容URI。例如,第一设备可以靠近第六设备,并基于蓝牙等近距离通信技术与第六设备建立连接,第六设备基于该连接向第一设备发送第二全局内容URI。
在一些实施例中,第六设备与第四设备可以是同一设备。
在一些实施例中,第一设备可以接收用户提交的第二全局内容URI。例如,第一设备可以从用户提交的二维码中获取到第二全局内容URI,或者,第一设备可以接收用户输入的第二全局内容URI。
当然,在实际应用中的,第一设备也可以通过其他方式来获取到第二全局内容URI,本申请实施例对第一设备获取第二全局内容URI的方式不做具体限定。
S1202,第一设备在第二全局内容URI中添加第二访问账号、第二目标账号、第二加密设备ID、第二修改时间、第二版本信息中的至少一个,得到第三全局内容URI。
在一些实施例中,若第二全局内容URI包括第三加密设备ID,则第一设备基于在线的多个第五设备的设备ID,对第三加密设备ID进行解密。
其中,多个第五设备可能包括第四设备也可能不包括第四设备,且多个第五设备可以包括第一设备。第一设备可以分别将各第五设备的设备ID作为解密密钥,对第二加密设备ID进行解密,如果解密成功则该第五设备即为待访问的资源所在的第四设备。如果解密得到的接收设备ID为第一设备的设备ID,则第一设备可以确定第二全局内容URI是分享给第一设备的。而如果解密失败,则第一设备无法确定待访问的资源是位于哪个设备,可以停止执行后续步骤;或者解密成功但解密得到的接收设备ID不是第一设备的设备ID,那么第一设备可以确定第二全局内容URI并不是发送给第一设备的,也可以停止执行后续步骤。可以看出,由于第三加密设备ID是经待访问的资源所在的设备(即第四设备)的设备ID,对接收第二全局内容URI的设备(即第一设备)的设备ID进行加密得到的,因此一方面,加密的接收设备ID可以避免上层应用感知设备ID,避免用户隐私泄露,另一方面,通过待访问的资源所在设备的设备ID作为加密秘钥,无需进行密钥协商,避免了固定密钥的问题。
在一些实施例中,由于第一设备基于第四设备的设备ID对第三加密设备ID解密成功,因此第一设备可以确定待访问的资源是位于第四设备。且由于解密得到的是第一设备的设备ID,因此第一设备可以确定第二全局内容URI是分享给第一设备的。因此,第一设备若基于第四设备的设备ID对第二加密设备ID解密成功,且解密得到第一设备的设备ID,则可以基于第四设备的设备ID,对第四设备的设备ID进行加密,得到第二加密设备ID,以便于从后续第四设备对待访问的资源所在的位置以及接收第二全局内容URI的设备进行验证。
另外,在一些实施例中,若第二全局内容URI中未包括第三加密设备ID,则第一 设备可以通过其他方式确定是从第四设备进行跨设备访问资源,从而基于第四设备的设备ID,对第四设备的设备ID进行加密,得到第二加密设备ID。例如,若第一设备是接收第六设备发送的第二全局内容URI,则第六设备可以向第一设备通知第四设备的设备ID;又例如,第一设备若是从用户提交的二维码中获取到第二全局内容URI,则该二维码中也可以包括第四设备的设备ID,相应的,第一设备可以从该二维码中获取到第四设备的设备ID。
在一些实施例中,若第二全局内容URI中包括第三加密设备ID,则第一设备在第二全局内容URI中添加第二加密设备ID的操作,可以包括第一设备将第三加密设备ID更新为第二加密设备ID。
在一些实施例中,若第二全局内容URI中不包括第三访问账号,则第一设备向第二全局内容URI中添加第二访问账号;若第二全局内容URI中包括第三访问账号,则第一设备可以将第二全局内容URI中的第三访问账号更新为第二访问账号。在另一些实施例中,若第二全局内容URI中包括第三访问账号,第一设备也可以不更新对第三访问账号,那么第三全局内容URI中包括的仍然是第三访问账号,或者,也可以理解为第三全局内容URI中包括的第二访问账号和第三访问账号相同。
在一些实施例中,若第二全局内容URI中不包括第三目标账号,则第一设备向第二全局内容URI中添加第二目标账号;若第二全局内容URI中包括第三目标账号,则第一设备可以将第一设备将第二全局内容URI中的第三目标账号替换为第二目标账号。在另一些实施例中,若第二全局内容URI中包括第三目标账号,第一设备也可以不更新第三目标账号,那么第三全局内容URI中包括的仍然是第三目标账号,或者,可以理解为第三全局内容URI中包括的第二目标账号与第三目标账号相同。
需要说明的是,本申请实施例对第一设备获取第三访问账号或第三目标账号的方式不进行具体限定。例如,第三访问账号可以是第一设备当前登录或未登录的账号,第三目标账号可以是由第四设备事先发送给第一设备的。
在一些实施例中,若第二全局内容URI中不包括第三修改时间,则第一设备可以在第二全局内容URI中添加第二修改时间;若第二全局内容URI中包括第三修改时间,则第一设备不对第三修改时间进行更新,那么第三全局内容URI中包括的仍然是第三修改时间,或者,也可以理解为第三全局内容URI中包括的第二修改时间与第三修改时间相同。
在一些实施例中,若第二全局内容URI中不包括第三版本信息,则第一设备可以在第二全局内容URI中添加第二版本信息;若第二全局内容URI中包括第三版本信息,则第一设备不对第三版本信息进行更新,那么第三全局内容URI中包括的仍然是第三版本信息,或者,也可以理解为第三全局内容URI中包括的第二版本信息与第三版本信息相同。
S1203,第一设备基于第三全局内容URI,从第四设备访问第二资源。
其中,第一设备可以向第四设备发送第二访问请求,第二访问请求中可以携带第三全局内容URI,还可以携带访问第二资源的操作指令,第四设备可以基于第三全局内容URI,响应第一设备对第二资源的访问。
在一些实施例中,若第二全局内容URI中包括第二加密设备ID,第四设备可以基 于多个在线的第七设备的设备ID对第二加密设备ID进行解密,其中,多个第七设备可以包括第四设备。如果基于第四设备的设备ID解密成功且解密得到的也是第四设备的设备ID,则第四设备确定第二资源是第四设备中的资源,从而响应第一设备的访问,否则第四设备可以不响应第一设备的访问。
在一些实施例中,若第二全局内容URI中包括第二访问账号和第三访问账号中的任一个,和/或,第二目标账号和第三目标账号中任一个,则第五设备还可以按照前述第一设备对第一访问账号和第一目标账号进行验证的方式,对第二访问账号和第三访问账号中的任一个,和/或,第二目标账号和第三目标账号中任一个进行验证。如果验证通过则响应第一设备的访问,否则不响应第一设备的访问。
在一些实施例中,第四设备可以按照第二修改时间和第二版本信息中的至少一个,获取第二资源。
在本申请实施例中,第一设备在获取到第二全局内容URI时,可以在第二全局内容URI中添加第二访问账号、第二目标账号、第二加密设备ID、第二修改时间、第二版本信息中的至少一个,得到第三全局URI中,从而基于第三全局内容URI从第四设备访问第二资源。由于第三全局内容URI中可以包括第三加密设备ID,使得第四设备可以对分享资源的设备以及接收第三全局内容URI的设备进行验证,可以确保跨设备访问的安全性,也无需进行密钥协商,避免了固定密钥的问题。由于第三全局内容URI中可以包括第二访问账号和第二目标账号,便于第四设备对访问的用户身份和被访问的用户身份进行鉴权,提高了跨设备访问的安全性。由于第三全局内容URI中可以包括第二修改时间和第二版本信息,确保了跨设备访问的资源内容和资源版本的一致性。
例如,如图13所示,第一设备为手机E 250,第五设备为手机F 260,第六设备为智能大屏270。手机F 260和智能大屏270处于同一局域网中。手机F 260向智能大屏270投屏,同步显示手机F 260中的文件C。之后,手机E 250与智能大屏270建立连接,智能大屏270向手机E发送第二全局内容URI,第二全局内容URI为:content://[用户A]:[用户B]@[密文1]?[2021/8/30 2.30]#[1.1]/[file provider]/[path1]/[10]。其中,用户A为智能大屏270向手机E 250提供的访问账号,用户A可以为智能大屏270当前登录的账号;用户B为文件C在手机F 260归属的账号;密文1为经过手机F 260的设备ID对手机E 250的设备ID加密得到的数据;2021/8/30 2.30为修改时间;1.1为版本信息;10010为文件C在手机F 260中的本地资源ID。
手机E 250接收到第二全局内容URI之后,能够基于手机F 260的设备ID对密文1解密成功,且得到的是手机E 250的设备ID,因此手机E 250确定文件C位于手机F 260,手机E 250基于手机F 260的设备ID对手机F 260的设备ID进行加密,得到密文2,将第二全局内容URI中的密文1替换为密文2,得到第三全局内容URI为:content://[用户A]:[用户B]@[密文2]?[2021/8/30 2.30]#[1.1]/[file provider]/[path1]/[10]。手机E 250基于第三全局内容URI,请求查看手机F 260中的文件C。
手机F 260接收到手机E 250发送的第三全局内容URI时,可以基于手机F 260对密文2解密成功,且解密得到的是手机F 260的设备ID。另外,手机F 260对用户A和用户B验证通过,确定用户A具有访问用户B的权限,则手机F 260基于file  provider以及path1,获取修改时间为2021/8/30 2.30、版本信息为1.1、ID为10的文件C,基于文件C响应手机E 250的访问。手机E 250可以显示文件C。
基于同一发明构思,本申请实施例还提供了一种芯片系统。该所述芯片系统包括处理器,所述处理器与存储器耦合,所述处理器执行存储器中存储的计算机程序,以实现上述方法实施例所述的方法。
其中,该芯片系统可以为单个芯片,或者多个芯片组成的芯片模组。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例所述的方法。
本申请实施例还提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行时实现上述方法实施例所述的方法。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质至少可以包括:能够将计算机程序代码携带到拍照装置/电子设备的任何实体或装置、记录介质、计算机存储器、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (24)

  1. 一种访问资源的方法,其特征在于,应用于第一设备,包括:
    获取第一资源标识ID;
    确定所述第一资源ID对应的第二设备以及确定所述第一资源ID对应的第二资源ID,所述第二资源ID为所述第一资源ID对应的第一资源在所述第二设备中的本地资源ID;
    基于所述第二资源ID,从所述第二设备访问所述第一资源ID对应的第一资源。
  2. 根据权利要求1所述的方法,其特征在于,所述确定所述第一资源ID对应的第二设备,包括:
    若所述第一资源ID归属于与所述第二设备对应的第一ID索引段,则确定所述第一资源ID与所述第二设备对应。
  3. 根据权利要求1或2所述的方法,其特征在于,所述确定所述第一资源ID对应的第二资源ID,包括:
    确定与所述第一设备对应的第二ID索引段;
    确定所述第二ID索引段与所述第二设备对应的第一ID索引段之间的偏移量;
    基于所述偏移量对所述第一资源ID进行偏移,得到所述第二资源ID。
  4. 根据权利要求1或2所述的方法,其特征在于,所述确定所述第一资源ID对应的第二资源ID,包括:
    从资源ID对应关系中,获取与所述第一资源ID对应的所述第二资源ID,所述资源ID对应关系用于指示本地资源ID与全局资源ID之间的对应关系,所述本地资源ID包括所述第二资源ID,所述全局资源ID包括所述第一资源ID。
  5. 根据权利要求1-4任一所述的方法,其特征在于,在所述确定所述第一资源ID对应的第二资源ID之前,所述方法还包括:
    从所述第二设备获取所述第一资源的元数据,所述元数据包括所述第一资源的所述第二资源ID;
    确定与所述第二资源ID对应的所述第一资源ID。
  6. 根据权利要求5所述的方法,其特征在于,在所述确定与所述第二资源ID对应的所述第一资源ID之前,所述方法还包括:
    为所述第二设备分配第一ID索引段;
    所述确定与所述第二资源ID对应的所述第一资源ID,包括:
    基于所述第一ID索引段,确定与所述第二资源ID对应的所述第一资源ID。
  7. 根据权利要求6所述的方法,其特征在于,所述为所述第二设备分配第一ID索引段,包括:
    基于所述第二设备的设备类型,为所述第二设备分配所述第一ID索引段。
  8. 根据权利要求6或7所述的方法,其特征在于,所述为所述第二设备分配第一ID索引段,包括:
    从索引资源池获取空闲的第三ID索引段,所述索引资源池包括至少一个所述第三ID索引段;
    将所述空闲的第三ID索引段,确定为与所述第二设备对应的所述第一ID索引段。
  9. 根据权利要求6-8任一所述的方法,其特征在于,所述为所述第二设备分配第一ID索引段,包括:
    若检测到所述第二设备上线,则将所述第一ID索引段的分配状态信息更新为已分配,并在所述分配状态信息中添加所述第二设备的设备ID;
    所述方法还包括:
    若检测到所述第二设备下线且不存在待分配的第三设备,则将所述第一ID索引段的分配状态信息更新为空闲,并将所述分配状态信息中的所述第二设备的设备ID删除;或者,
    若检测到所述第二设备下线但存在待分配的所述第三设备,则将所述分配状态信息中的所述第二设备的设备ID更新为所述第三设备的设备ID。
  10. 根据权利要求1-9任一所述的方法,其特征在于,所述第一资源为多媒体资源,所述获取第一资源ID,包括:
    若检测到第一获取操作,则基于所述第一获取操作确定所述第一资源ID和第一质量参数,所述第一获取操作用于获取所述多媒体资源的缩略图;
    若所述第一设备本地未存储第一缩略图,或,若所述第一设备本地存储有所述第一缩略图但所述第一质量参数所指示的图片质量优于所述第一缩略图的图片质量,则所述基于所述第二资源ID,从所述第二设备访问所述第一资源ID对应的第一资源,包括:
    基于所述第二资源ID,从所述第二设备获取第二缩略图;所述第二缩略图的图片质量优于或等于所述第一质量参数所指示的图片质量;
    获取所述第二缩略图的文件句柄FD。
  11. 根据权利要求10所述的方法,其特征在于,所述方法还包括:
    若所述第一设备本地存储有所述第一缩略图且所述第一缩略图的图片质量优于或等于所述第一质量参数所指示的图片质量,则基于所述第一资源ID,从所述第一设备本地获取所述第一缩略图的FD。
  12. 根据权利要求1-9任一所述的方法,其特征在于,所述第一资源为多媒体资源,所述获取第一资源ID,包括:
    检测第二获取操作,所述第二获取操作用于获取所述多媒体资源的原图;
    在所述基于所述第二资源ID,从所述第二设备访问所述第一资源ID对应的第一资源之前,所述方法还包括:
    确定所述第一设备本地未存储所述多媒体资源的缓存数据;
    所述基于所述第二资源ID,从所述第二设备访问所述第一资源ID对应的第一资源,包括:
    基于所述第二资源ID,从所述第二设备获取所述多媒体资源的缓存数据。
  13. 根据权利要求12所述的方法,其特征在于,所述方法还包括:
    获取所述多媒体资源的逻辑FD。
  14. 根据权利要求1-13任一所述的方法,其特征在于,所述基于所述第二资源ID,从所述第二设备访问所述第一资源ID对应的第一资源,包括:
    基于所述第二资源ID,生成第一全局内容统一资源标识符URI;
    基于所述第一全局内容URI,从所述第二设备访问所述第一资源。
  15. 根据权利要求14所述的方法,其特征在于,所述第一全局内容URI中携带第一修改时间和第一版本信息中的至少一个,所述第一修改时间用于指示所述第一资源的修改时间,所述第一版本信息用于指示所述第一资源的版本。
  16. 根据权利要求14或15所述的方法,其特征在于,所述第一全局内容URI中携带第一访问账号和第一目标账号中的至少一个,所述第一访问账号用于指示访问所述第一资源的用户身份,所述第一目标账号用于指示所述第一资源所归属的用户身份。
  17. 根据权利要求14-16任一所述的方法,其特征在于,所述第一全局内容URI中携带第一加密设备ID,所述第一加密设备ID由所述第一设备基于所述第二设备的设备ID对所述第二设备的设备ID进行加密得到。
  18. 根据权利要求1-17任一所述的方法,其特征在于,所述方法还包括:
    获取第二全局内容URI;
    在所述第二全局内容URI中添加第二访问账号、第二目标账号、第二加密设备ID、第二修改时间、第二版本信息中的至少一个,得到第三全局内容URI;
    基于所述第三全局内容URI,从第四设备访问第二资源;
    其中,所述第二访问账号用于指示访问所述第二资源的用户身份,所述第二目标账号用于指示所述第二资源所归属的用户身份,所述第二修改时间用于指示所述第二资源的修改时间,所述第二版本信息用于指示所述第二资源的版本,所述第二加密设备ID由所述第一设备基于所述第四设备的设备ID对所述第四设备的设备ID进行加密得到。
  19. 根据权利要求18所述的方法,其特征在于,所述第二全局内容URI中包括第三加密设备ID,在所述第二全局内容URI中添加第二加密设备ID之前,所述方法还包括:
    基于在线的多个第五设备的设备ID,对所述第三加密设备ID进行解密;
    若基于所述第四设备的设备ID对所述第三加密设备ID解密成功,且解密得到所述第一设备的设备ID,则基于所述第四设备的设备ID,对所述第四设备的设备ID进行加密,得到所述第二加密设备ID,所述第四设备为所述多个第五设备中的任一个;
    所述第二全局内容URI中添加第二加密设备ID,包括:
    将所述第二全局内容URI中的所述第三加密设备ID更新为所述第二加密设备ID。
  20. 根据权利要求18或19所述的方法,其特征在于,所述在所述第二全局内容URI中添加第二访问账号,包括:
    若所述第二全局内容URI中不包括第三访问账号,则在所述第二全局内容URI中添加所述第二访问账号。
  21. 根据权利要求18-20任一所述的方法,其特征在于,所述在所述第二全局内容URI中添加第二目标账号,包括:
    若所述第二全局内容URI中不包括第三目标账号,则在所述第二全局内容URI中添加所述第二目标账号。
  22. 根据权利要求18-21任一所述的方法,其特征在于,所述在所述第二全局内容URI中添加第二修改时间和/或第二版本信息,包括:
    若所述第二全局内容URI中不包括第三修改时间,则在所述第二全局内容URI中添加所述第二修改时间;和/或,
    若所述第二全局内容URI中不包括第三版本信息,则在所述第二全局内容URI中添加所述第二版本信息。
  23. 一种电子设备,其特征在于,包括:存储器和处理器,所述存储器用于存储计算机程序;所述处理器用于在调用所述计算机程序时执行如权利要求1-22任一项所述的方法。
  24. 一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-22任一项所述的方法。
PCT/CN2022/114006 2021-09-29 2022-08-22 访问资源的方法及电子设备 WO2023051096A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111153026.6A CN115878307A (zh) 2021-09-29 2021-09-29 访问资源的方法及电子设备
CN202111153026.6 2021-09-29

Publications (1)

Publication Number Publication Date
WO2023051096A1 true WO2023051096A1 (zh) 2023-04-06

Family

ID=85756283

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/114006 WO2023051096A1 (zh) 2021-09-29 2022-08-22 访问资源的方法及电子设备

Country Status (2)

Country Link
CN (1) CN115878307A (zh)
WO (1) WO2023051096A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019021048A1 (en) * 2017-07-24 2019-01-31 Yogesh Chunilal Rathod EPHEMER CONTENT SHARING AND USER CONNECTION BASED ON SINGLE LINK SHARING FROM 3R PART APPLICATIONS AND STORING AND ASSOCIATING A SINGLE CODE OR IDENTITY OF A USER SHARING A LINK WITH A USER ACCESSING A LINK
CN110769072A (zh) * 2019-10-31 2020-02-07 北京达佳互联信息技术有限公司 一种多媒体资源获取方法、装置和存储介质
CN112906028A (zh) * 2021-03-04 2021-06-04 广州虎牙科技有限公司 访问控制方法、装置、电子设备及计算机可读存储介质
CN113242314A (zh) * 2021-05-28 2021-08-10 Oppo广东移动通信有限公司 跨端资源访问方法、装置、存储介质及电子设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019021048A1 (en) * 2017-07-24 2019-01-31 Yogesh Chunilal Rathod EPHEMER CONTENT SHARING AND USER CONNECTION BASED ON SINGLE LINK SHARING FROM 3R PART APPLICATIONS AND STORING AND ASSOCIATING A SINGLE CODE OR IDENTITY OF A USER SHARING A LINK WITH A USER ACCESSING A LINK
CN110769072A (zh) * 2019-10-31 2020-02-07 北京达佳互联信息技术有限公司 一种多媒体资源获取方法、装置和存储介质
CN112906028A (zh) * 2021-03-04 2021-06-04 广州虎牙科技有限公司 访问控制方法、装置、电子设备及计算机可读存储介质
CN113242314A (zh) * 2021-05-28 2021-08-10 Oppo广东移动通信有限公司 跨端资源访问方法、装置、存储介质及电子设备

Also Published As

Publication number Publication date
CN115878307A (zh) 2023-03-31

Similar Documents

Publication Publication Date Title
US10116583B2 (en) Controlling resources used by computing devices
US10158582B2 (en) Device-to-device communication for resource sharing
US11956631B2 (en) Secure storage pass-through device
US9652465B2 (en) Aggregate service with enhanced cloud device management
US11394715B2 (en) Proxy authorization of a network device
US8769131B2 (en) Cloud connector key
US20110078375A1 (en) Data storage
US9898589B2 (en) Content sharing and storage of a plurality of remotely connected computing devices in physical or virtualized space
US10033707B2 (en) Method and apparatus for efficient interruptible transfer of protected media assets
US9930063B2 (en) Random identifier generation for offline database
US10594681B2 (en) Aggregate service with user interface
KR101623742B1 (ko) 파일 연관 메시지 공유 방법 및 메시지 공유 시스템
US10511608B2 (en) Aggregate service with file sharing
US9436769B2 (en) Automatic device upload configuration
CN114356872A (zh) 跨端设备的文件共享方法及相关产品
KR101461446B1 (ko) 상호 데이터 통신이 가능한 디바이스들 간의 디지털 컨텐츠 공유 방법 및 디지털 컨텐츠 공유 디바이스
WO2023051096A1 (zh) 访问资源的方法及电子设备
KR20120073799A (ko) 클라우드 스토리지 기반의 데이터 동기화 및 서비스 제공 장치와 방법
US11829500B2 (en) File interface to dynamically manage access to remote files
US10506040B2 (en) Aggregate service with enhanced remote device management
WO2016070371A1 (zh) 移动终端和web终端之间互连及流传输和流媒体播放的方法
EP4236260A1 (en) Request processing method and related apparatus
CN115866184A (zh) 信息处理装置、记录介质及信息处理方法
CN116709457A (zh) 网络会话处理方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22874489

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022874489

Country of ref document: EP

Effective date: 20240312