当前位置: 首页 > 知识库问答 >
问题:

如何以编程方式在Android中共享文件

易博文
2023-03-14

我想分享一个文件(. pdf,. apk等)使用分享意图,我搜索谷歌,但我只找到共享图像的代码

Intent sharingIntent = new Intent(Intent.ACTION_SEND);
Uri screenshotUri = Uri.parse(path);
sharingIntent.setType("image/png");
sharingIntent.putExtra(Intent.EXTRA_STREAM, screenshotUri);
startActivity(Intent.createChooser(sharingIntent, "Share image using"));

共有3个答案

高鸿振
2023-03-14

这对你有帮助

Intent sharingIntent = new Intent(Intent.ACTION_SEND);
Uri screenshotUri = Uri.parse(path);
sharingIntent.setType("*/*");
sharingIntent.putExtra(Intent.EXTRA_STREAM, screenshotUri);
startActivity(Intent.createChooser(sharingIntent, "Share using"));
孟新知
2023-03-14

要保持代码的实用性,请使用ShareCompatclass:

ShareCompat.IntentBuilder.from(this)
        .setStream(uri)
        .setType(URLConnection.guessContentTypeFromName(file.getName()))
        .startChooser();
邓子濯
2023-03-14

您使用相同的代码,只需更改您希望共享的数据类型的MIME类型。如果您希望共享任何东西,而不管类型如何,请使用*/*

 类似资料:
  • 问题内容: 我需要一个小的代码片段,该片段从给定的.zip文件中解压缩一些文件,并根据压缩文件中的格式提供单独的文件。请发表您的知识并帮助我。 问题答案: peno的版本进行了优化。性能的提高是可以察觉的。

  • 问题内容: 我在4.4.2上,尝试通过uri删除文件(图像)。这是我的代码: 目前,这些删除功能均未真正删除文件。我的AndroidManifest.xml中也有此代码: 问题答案: 您为什么不使用以下代码对此进行测试: 我认为问题的一部分是您永远不要尝试删除文件,而只是创建一个具有方法调用的变量。 因此,在您的情况下,您可以尝试: 但是我认为这有点过分。 您添加了一条注释,说明您正在使用外部目录

  • 问题内容: 在我的应用程序中,我将维护一个联系人列表。 列表中联系人的所有呼叫都将被挂断。他们会在未接来电下显示,但电话不会响铃。 问题答案: 首先创建此接口: 然后创建扩展BroadcastReceiver的此类 这只会阻止该单个电话号码,但是您明白了。 在清单中添加以下内容:

  • 我想创建一个应用程序,它可以将屏幕行为记录为视频,并以编程方式保存在设备上。有人能帮我吗?

  • null 目前,我可以转到url并进行一些屏幕刮擦以尝试获得内容列表,但链接Dropbox博客条目中描述的解决方案的优点是不需要刮擦文件,因此它更加可靠和高效。

  • 在这里,我尝试使用Bluetooth classic连接两个android设备,并通过HFP模式转接电话。 如果设备A有来电,我需要通知设备B并从设备B侧接受/拒绝,甚至需要从设备B侧通话。 我在蓝牙配置中从源端进行了更改,以在设备B中为HFP配置文件启用A2DP接收器和HF角色(禁用AG角色)。 我对AT命令的工作原理感到困惑。我必须通过输出流传递AT命令(蓝牙经典连接)。 仅仅传递AT命令(根