代码之家  ›  专栏  ›  技术社区  ›  malhobayyeb

为什么Android允许未经许可读取文件?

  •  -1
  • malhobayyeb  · 技术社区  · 7 年前

    在我的应用程序中,我编写了以下代码来访问文件:

    public void performFileSearch() {
        Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
    
        intent.addCategory(Intent.CATEGORY_OPENABLE);
    
        intent.setType("image/*");
    
        startActivityForResult(intent, READ_REQUEST_CODE);
    }
    

    onActivityResult 我正在接收 Uri 所选图像的。

    为什么我可以访问 尿嘧啶尿路感染 没有 READ_EXTERNAL_STORAGE 许可?

    minSdk = 19

    compileSdk = 27

    targetSdk = 27

    测试Android版本:

    Android 4.4.2 API 19

    Android 6.0.1 API 23

    1 回复  |  直到 7 年前
        1
  •  2
  •   CommonsWare    7 年前

    为什么我可以在没有读取外部存储权限的情况下访问URI?

    因为用户参与了选择。您可以临时访问该文档(如果使用 takePersistableUriPermissions() ,您可以持久访问该文档。

    推荐文章