查明是不是存在默认查看器
Posted
技术标签:
【中文标题】查明是不是存在默认查看器【英文标题】:Findout if a default viewer exist查明是否存在默认查看器 【发布时间】:2011-03-10 18:49:23 【问题描述】:我知道如何安排另一个活动,但是在开始活动之前,我如何确保我的 MIME 类型存在活动?例如,如果我有一个要显示的 PDF 文件,如何确保存在 PDF 查看器?
这是我用来午餐 PDF 查看器的代码
MimeTypeMap tMimeType = MimeTypeMap.getSingleton();
String tMimeStr = tMimeType.getMimeTypeFromExtension("pdf");
Intent intent = new Intent();
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setAction(android.content.Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile("xyz.pdf"), tMimeStr);
try
startActivity(intent);
catch (Exception e)
// Display error message here
【问题讨论】:
【参考方案1】:获取Intent
并将其传递给PackageManager
的queryIntentActivities()
。如果您返回一个零长度列表,则没有任何东西可以处理您的Intent
。如果您获得包含两个或更多条目的列表,请考虑使用Intent.createChooser()
让用户选择要使用的活动。
【讨论】:
以上是关于查明是不是存在默认查看器的主要内容,如果未能解决你的问题,请参考以下文章