我有一份不同类型文件的列表,例如pdf,音频(mp3),视频等。我想使用支持的查看器或应用程序的列表项的onClick事件打开这些文件。例如,如果所选文件将是视频文件,则会出现一个对话框,其中包含已安装的列表以及默认视频播放器,如下所示:
任何人都可以帮助或指导我如何做到这一点吗?
答案 0 :(得分: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?