gpt4 book ai didi

Android:从我的应用程序在默认应用程序中打开保存的文件

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:04:38 28 4
gpt4 key购买 nike

首先,很抱歉,如果有人问过这个问题,但我找不到。我正在从远程资源下载我的应用程序中的文档。下载文档后,我想为用户打开它。我想知道的是如何检查他们是否有处理 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);

最佳答案

第 1 步:创建一个 ACTION_VIEW Intent,使用 setDataAndType() 为您的下载的文件(例如,Uri.fromFile())和内容的 MIME 类型(例如,application/pdf)。

从那里,您有两个选择:

步骤 #2a:将 PackageManagerqueryIntentActivities() 用于该 Intent。如果它返回一个零长度列表,您就知道没有候选者,因此可以禁用任何按钮、菜单选项或任何会导致调用 Intent< 上的 startActivity() 的东西.

步骤 #2b:当用户想要查看它时,只需调用 startActivity(),并捕获在没有安装支持的应用程序时发生的异常。这比上面的 #2a 更简单,但对用户来说不太友好。

关于Android:从我的应用程序在默认应用程序中打开保存的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4964148/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com