HarmonyOS 鸿蒙Next是否有类似Android的ContentResolver功能

发布于 1周前 作者 bupafengyu 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next是否有类似Android的ContentResolver功能
android 的实现代码如下

//从外存中获取
        Uri fileUri=
                MediaStore.Files.getContentUri("external");
        //筛选列,这里只筛选了:文件路径和不含后缀的文件名
        String[] projection=new String[]{
                MediaStore.Files.FileColumns.DATA, MediaStore.Files.FileColumns.TITLE
        };
        //构造筛选语句
        String selection="";
        for(int i=0;i<extension.length;i++)
        {
            if(i!=0)
            {
                selection=selection+" OR ";
            }
            selection=selection+ MediaStore.Files.FileColumns.DATA+" LIKE '%"+extension[i]+"'";
        }
        //按时间递增顺序对结果进行排序;待会从后往前移动游标就可实现时间递减
        String sortOrder= MediaStore.Files.FileColumns.DATE_MODIFIED;
        //获取内容解析器对象
        ContentResolver resolver=context.getContentResolver();
        //获取游标
        Cursor cursor=resolver.query(fileUri, projection, selection, null, sortOrder);
        if(cursor==null)
            return list;
        //游标从最后开始往前递减,以此实现时间递减顺序(最近访问的文件,优先显示)
        if(cursor.moveToLast())
        {
            do{
                //输出文件的完整路径
                String data=cursor.getString(0);
//                MyLogUtils.testLog("文件:"+data);
                File file=new File(data);
                if(file.exists()&&(file.getName().contains(".")&&file.getName().lastIndexOf(".")!=file.getName().length()-1&&file.getName().indexOf(".")!=0)){
                    list.add(data);
                }
            }while(cursor.moveToPrevious());
        }

更多关于HarmonyOS 鸿蒙Next是否有类似Android的ContentResolver功能的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于HarmonyOS 鸿蒙Next是否有类似Android的ContentResolver功能的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS 鸿蒙Next提供了与Android的ContentResolver功能相类似的数据访问机制,但具体实现和API接口有所不同。鸿蒙系统采用了分布式数据管理能力,允许应用跨设备共享和访问数据。

在鸿蒙系统中,应用可以通过特定的API接口来访问系统或其他应用提供的数据。这些API接口通常封装在鸿蒙系统的框架层中,提供了统一的数据访问入口。开发者可以通过这些接口来查询、读取、修改和删除数据,而无需直接操作底层数据库或文件系统。

鸿蒙系统的数据访问机制还注重数据安全和隐私保护。在访问数据时,系统会进行权限检查,确保只有具备相应权限的应用才能访问敏感数据。此外,鸿蒙系统还提供了数据隔离和加密等安全机制,以保护用户数据的安全性和隐私性。

虽然鸿蒙系统的数据访问机制与Android的ContentResolver在功能上有相似之处,但两者在具体实现和API接口上存在差异。因此,开发者在将Android应用迁移到鸿蒙系统时,需要注意这些差异,并进行相应的修改和适配。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部