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

是否可以通过数据URL在Android上共享图像?

令狐晟
2023-03-14
Intent share = new Intent(Intent.ACTION_SEND);
share.setData(Uri.parse("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACx"
    + "jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGoSURBVDhPlVM9SEJRGD2DkL+QmoiKYNggToJL"
    + "4KKLNDiKW4NCoENQkzS1uboILoKjW61NSZOjo1uOBlHPgjJsuN3jvc+naVQHPt79vu+cc9/37n34"
    + "BQkd/0Jibw+3Ozt4j0TwwuCaNfYU5Qe43Tg5OMDD9TWEYUAIoYJr1mIxPEmjc01fh8uF03wer6vC"
    + "7zGbQZRKmPp8uNCyJWKhEAwSTDJ3NNc07fUsE76J1FjjcL5VQb0O4XBAVCoqj0ZV3u2qvN+H8Psx"
    + "1HLAZsPn6u6pFIQsi3AYYjKBcDpVXiyqPrl2O2ayZqc+FY9jaooZuZwSJBJL8iKv1SwONdTSIJtO"
    + "w1g1GA4h9vfVk3mjod5mPLY4ySQMqT2kgZ0jsMjZBgOL9D1omM2qtfwmH1K7SwN4vbhnkzuQ0G5v"
    + "imnOHjkMjwePC7HGUSajxuDM1aqa/+wM4vJSCRnmHSkU8CwNjrVWIRDAVauFubnjaATRbCoD7m7W"
    + "Ox3Mg0HcaNkaduV9GPCmbbuNrLEnxXeSuzi+reD/wJ+Hx1Qu443BNWvsadqfwDOu6lic9yaAL2uK"
    + "Y4RMd4E2AAAAAElFTkSuQmCC"));
startActivity(Intent.createChooser(share, getString(R.id.menu_share)));

共有1个答案

邹华皓
2023-03-14

有可能用类似这样的代码共享图像吗?

没有,因为action_send不使用URI。它使用extra_textextra_stream

我的目标是让我的应用程序不需要写到存储的权限,而是能够共享它动态创建的图像。有什么办法可以做到这一点吗?

 类似资料:
  • 我正在开发一个Android应用程序,它读取NFC标签,检索NDEF消息,然后将其传递给WebView activity以显示那个URL网站。我正在检查Logcat,并且正在读取URL,但我认为URL没有被传递,因为我得到以下错误: 这是主要活动: 这是Webview activity,它应该获取URL并加载它: 我想获取从标记接收到的URL到 稍后将加载网站。谢谢你的帮助。

  • 问题内容: 我在同一页面上有两个不同的应用程序。 我可以通过服务(或其他方式)在这两个应用之间共享数据吗? 还是不可能? (我怀疑这是不可能通过常规的角度机构实现的)-但我认为仍然值得提出… 可以使用window变量完成此操作-但我要避免这样做。 谢谢! 问题答案: 我最终以以下方式解决了该问题: 我必须承认这一解决方案并不理想,但这是我找到的最干净的解决方案。

  • 我在应用程序之间在android上共享内容时遇到问题,使用Intent我可以成功共享纯文本(在G、Facebook和Facebook Messenger上)代码如下: 但是,当谈到图像时,事情并不奏效。Intent已经创建,我实际上可以在与之共享图像的应用程序之间进行选择,但当所选应用程序尝试启动时,它只是崩溃,无法打开。没有应用程序工作(使用9Gag、G、Facebook、Facebook Me

  • 我有我导出到数据uri图像的HTML画布。现在我想通过点击我页面上的自定义链接,在Facebook时间线上尽可能轻松地分享这张图片(无需创建FB应用程序和身份验证令牌)。 我试过这样的方法: 图像生成: 共享链接: 当我点击链接Safari我得到 如何通过Facebook共享者URL(或其他方式)轻松共享数据uri图像? 谢谢你的回答!

  • 我正在开发一个应用程序,它必须通过whatsapp共享mp3文件。 我现在的代码如下: 例如,我可以通过Gmail成功共享,但通过whatsapp无法实现。这是我的代码的问题还是whatsapp不允许你共享mp3文件? 提前感谢!

  • 问题内容: 是否可以通过修改beforeSend回调中的XMLHttpRequest对象来修改Ajax请求中发送的数据?如果可以,我该怎么做? 问题答案: 是的,您可以对其进行修改, 实际上是的签名(在jQuery 1.4+中): __ 即使文档只是just ,您也可以在这里看到它的名称,settings对象在哪里: 因此,您 可以 在此之前修改参数(请注意 __ ,即使传入了一个对象, 到目前为