【问题标题】:How to give users access to internal directory in android如何让用户访问android中的内部目录
【发布时间】:2017-02-03 20:12:58
【问题描述】:

我正在使用 Android Studio...我想向用户授予 1 个特定目录的访问权限...内部目录... 是否可以使用环境设置路径..请帮助

String path= //if possible the environment

谢谢

【问题讨论】:

  • 请解释“将 1 个特定目录的访问权限授予用户”是什么意思。另外,请解释一下“使用环境设置路径”是什么意思。
  • @CommonsWare 我的意思是我想让我的应用程序的用户访问例如-@drawable 的内部目录,他们可以浏览这些目录。如果是图像,我希望他们能够像画廊一样查看它们。&通过路径集我只是意味着我想要一个字符串路径的环境..希望你能提供帮助
  • “eg-@drawable 的内部目录”——这不是设备上的目录。它只是你开发机器上的一个目录。
  • @CommonsWare 我知道..这就是为什么我问我可以制作一个用户可以访问的原始文件夹吗?..谢谢

标签: android android-studio directory internal


【解决方案1】:

我通常使用以下内部存储:

ContextWrapper cw = new ContextWrapper(mContext);
File fileDownloadFolder = cw.getDir(Environment.DIRECTORY_DOWNLOADS, Context.MODE_PRIVATE);

File file = new File(fileDownloadFolder.getAbsolutePath()+"/"+ filename);

在本例中,这会在内部存储的 App 文件夹中的文件夹 Downloads 中返回一个名为 filename 的文件。

对于外部存储使用:

File fileDownloadFolder = getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS);
File file = new File(fileDownloadFolder.getAbsolutePath()+"/"+ filename);

【讨论】:

    【解决方案2】:
    File file = new File(context.getFilesDir() + "/" + filename);
    

    将返回内部目录中的文件。

    使用它来获取你的路径:

    String path = context.getFilesdir();
    System.out.println("Internal directory path: " + path);
    

    如果您的课程扩展了Activity 尝试:

    String path = this.getFilesdir();
    System.out.println("Internal directory path: " + path);
    

    【讨论】:

    • 谢谢@Spectre 我会试试看它是否有效
    • 会的! :) 没有问题
    • 显示无法从静态上下文引用 getFilesDir() 的错误,并且该变量文件从未使用过
    • 不要使用 Context.getFilesDir()。你应该从某个地方得到你的上下文。您的活动也是一个上下文。请告诉我你的整个文件的代码,过去在 pastebin.com 或其他东西上。
    • 代码很多..我想这部分现在已经足够了............ .............................字符串路径=Environment.externaldirectory().tostring()+"/filename" /**对于 sd 卡上的现有文件,我想将其更改为内部文件。如果无法回答没有问题,谢谢**/ .. ......................................
    猜你喜欢
    • 2014-12-22
    • 1970-01-01
    • 2013-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-14
    • 1970-01-01
    • 2021-09-21
    相关资源
    最近更新 更多