Tom*_*ear 10 file-io android document filehandler
首先,对不起,如果有人问我但找不到它.我正在从远程资源下载我的应用程序中的文档.下载文档后,我想为用户打开它.我想知道的是我如何检查他们是否有应用程序来处理Pdf或Tiff并在默认应用程序中启动它?
谢谢.
编辑
这是解决方案的一部分:
Intent viewDoc = new Intent(Intent.ACTION_VIEW);
viewDoc.setDataAndType(
Uri.fromFile(getFileStreamPath("test.pdf")),
"application/pdf");
PackageManager pm = getPackageManager();
List<ResolveInfo> apps =
pm.queryIntentActivities(viewDoc, PackageManager.MATCH_DEFAULT_ONLY);
if (apps.size() > 0)
startActivity(viewDoc);
Run Code Online (Sandbox Code Playgroud)
步骤#1:创建一个ACTION_VIEW Intent,setDataAndType()用于提供Uri下载的文件(例如Uri.fromFile())和内容的MIME类型(例如application/pdf).
从那里,您有两种选择:
步骤#2a:使用PackageManager和queryIntentActivities()使用Intent.如果它返回一个零长度列表,你知道没有候选者,因此可以禁用任何按钮,菜单选项或任何会导致调用startActivity()它的东西Intent.
要么
步骤#2b:只需startActivity()在用户想要查看时调用,并捕获未安装支持的应用程序时发生的异常.这比上面的#2a简单,但不太方便用户使用.
| 归档时间: |
|
| 查看次数: |
8170 次 |
| 最近记录: |