【问题标题】: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
}

【问题讨论】:

    标签: android mime intentfilter


    【解决方案1】:

    获取Intent 并将其传递给PackageManagerqueryIntentActivities()。如果您返回一个零长度列表,则没有任何东西可以处理您的Intent。如果您获得包含两个或更多条目的列表,请考虑使用Intent.createChooser() 让用户选择要使用的活动。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-12
      • 1970-01-01
      • 2018-03-05
      • 2012-09-12
      相关资源
      最近更新 更多