在给定路径下打开文件浏览器进行浏览(不选择)

时间:2012-09-11 15:55:57

标签: android

这是我的情景。我的应用程序从Internet下载文件并将其保存到用户ExternalStorageDirectory中。我想让我的选项菜单按钮作为快捷按钮转到ExternalStorageDirectory中的下载文件。谁能告诉我它是如何完成的?以下是我的代码的一小部分。

我想将我的选项菜单按钮发送到onclick,然后转到我的文件的绝对路径。因此用户无需手动退出应用程序,并在外部目录中找到它。

File sdCard = Environment.getExternalStorageDirectory();
File dir = new File (sdCard.getAbsolutePath() + "/Pictures/Screenshots");


@Override
    public boolean onMenuItemSelected(int featureId, MenuItem item) {
        switch (item.getItemId()) {
            case R.id.select_text:

                SelectText();
                return true;
            case R.id.show_downloads:
                Intent i = new Intent();

            i.setAction(Environment.getRootDirectory);

            startActivity(i); //<<-- Here !!

                return true;
        }

        return super.onMenuItemSelected(featureId, item);
    }

我希望我的选项菜单按钮转到此处。

enter image description here

1 个答案:

答案 0 :(得分:2)

通常在Android中,你有一个Intent action来弹出一个活动(或show show activity chooser list),它可以处理那个特定的动作。我曾经在一段时间内搜索过这样的解决方案,但找不到可以简单地打开文件查看器到特定路径的Intent;你有action ACTION_GET_CONTENT可以打开文件浏览器,但只要用户点击文件,就会返回我们的活动。

所以我能想到的解决方案是,从您想要的目录中获取文件列表,并将其显示在您自己的应用程序中,可能是ListView。用户点击某个项目后,我们就可以继续使用ACTION_VIEW显示该项目。

我认为android没有这样一个选项的原因是,android没有默认的文件查看器;一个人不能确定是否存在一个应用程序来查看任何给定的Android手机中的文件。这就是为什么你应该在你的应用程序中拥有文件查看器的另一个原因。