1

我有一个不同类型文件的列表,例如 pdf、音频(mp3)、视频等。我想使用支持查看器或应用程序的列表项的 onClick 事件打开这些文件。例如,如果所选文件是视频文件,则会出现一个对话框,其中包含已安装的列表以及默认视频播放器,如下所示:

在此处输入图像描述

谁能帮助或指导我如何做到这一点?

4

1 回答 1

0

您应该实现一个选择器,如下例所示,

 Intent shareIntent = new Intent();
    shareIntent.setAction(Intent.ACTION_SEND);
    shareIntent.setType("text/plain");//TYPE OF THE CONTENTS,this is for text
    shareIntent.putExtra(Intent.EXTRA_TEXT, noteTitle);//PUT THE EXTRA
 //THIS IS THE LOGIC FOR THE CHOOSER
    Intent chooser = Intent.createChooser(shareIntent,getString(R.string.share_dialog_title));


    PackageManager manager = getPackageManager();
    List<ResolveInfo> activities = manager.queryIntentActivities(chooser, 0);
    if(activities.size() > 0) {
        startActivity(chooser);
    } else {
        Toast.makeText(NoteListActivity.this, R.string.no_activities_for_action, Toast.LENGTH_LONG).show();
    }
}

编辑还检查这个问题,并将我的答案与这个问题的答案结合起来,你会得到结果Launching an intent for file and MIME type?

于 2014-01-19T19:43:52.093 回答