使用 Whatsapp 发送图像和文本

2024-03-10

我需要从我的应用程序发送带有文本的图像,我知道如何仅发送图像或仅发送文本,但我不知道如何将两者结合起来。

只是一张图片:

    let image = UIImage(named: "Image") // replace that with your UIImage

    let filename = "myimage.wai"
    let documentsPath = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, false)[0] as! NSString
    let destinationPath = documentsPath.stringByAppendingString("/" + filename).stringByExpandingTildeInPath
    UIImagePNGRepresentation(image).writeToFile(destinationPath, atomically: false)
    let fileUrl = NSURL(fileURLWithPath: destinationPath)! as NSURL

    documentController = UIDocumentInteractionController(URL: fileUrl)
    documentController.delegate = self
    documentController.UTI = "net.whatsapp.image"
    documentController.presentOpenInMenuFromRect(CGRectZero, inView: self.view, animated: false)    

只是一段文字:

    var whatsappURL = NSURL(string: "whatsapp://send?text=hello,%20world")

    if UIApplication.sharedApplication().canOpenURL(whatsappURL!) {
        UIApplication.sharedApplication().openURL(whatsappURL!)
    }    

如何发送带有文本的图像?

EDIT #1

我找到了一个代码,可以将带有文本的图像共享到whatsapp,但它是用java编写的,你能将它翻译成swift吗?

Intent whatsappIntent = new Intent(android.content.Intent.ACTION_SEND);
whatsappIntent.setType("image/*");
whatsappIntent.putExtra(Intent.EXTRA_TEXT, "Hello World");
whatsappIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + file)); //add image path
startActivity(Intent.createChooser(share, "Share image using"));
try {
    activity.startActivity(whatsappIntent);
} catch (android.content.ActivityNotFoundException ex) {
    Toast.makeText(activity, "Whatsapp have not been installed.", Toast.LENGTH_SHORT).show();
}    

您可以在 WhatsApp 上发布图像或文本。但是,您不能同时发布两者,因为 Whatsapp 不提供任何可以添加标题和发布带有文本的图像的 API。

现在有一个可用于与 WhatsApp 交互的 api:

http://www.whatsapp.com/faq/en/iphone/23559013 http://www.whatsapp.com/faq/en/iphone/23559013

另请参阅以下有用的答案:

您可以使用截至 2014 年 8 月 4 日此问题的第二个答案中提到的 UIDocumentInteractionController :在 iOS 应用程序中通过 WhatsApp 共享图像/文本 https://stackoverflow.com/questions/8354417/share-image-text-through-whatsapp-in-an-ios-app#51684451

希望这会有所帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Whatsapp 发送图像和文本 的相关文章

随机推荐

  • 当手势应用于 self.view 时,我们如何才能使表格视图工作?

    我已经在整个视图上应用了手势 并且我想与 self view 中的表格视图进行交互 我已经应用了自定义手势 如下所示 import TouchEvent h import
  • 如何获取泛型类型的实际类型?

    有一个具有泛型类型的类 class Action T 创建它的一些实例 放入列表中 val list List new Action String new Action Int 迭代一下 如何获取实例的实际类型 list foreach a
  • 获取 iPhone GO 按钮来提交表单

    有谁知道表单中包含哪些变量可以使 iPhone 虚拟键盘的 GO 按钮提交表单还是不提交表单 我一直在尝试缩小场景范围 这就是我发现的 如果 FORM 只有一个用户输入字段 Go 按钮会自动提交表单 如果 FORM 有多个用户输入字段 但没
  • 循环遍历字符串以查找多个索引

    我试图找出循环字符串并查找某个字母的所有索引的最有效方法 我用过 word or phrase indexOf letter 查找某个字母的单个索引 但该字母位于 word or phrase多次 最有效的方法是构建一个包含所有索引的数组
  • Swift 如何“按值传递”对象

    我对 Swift 还很陌生 我创建一个类 例如 class Fraction var a Int init a Int self a a func toString gt String return self a 我还在其他类中构建了一个函
  • 动态壁纸是否带有游戏引擎?

    我想开发一个动态壁纸 经过一番研究后 我得出结论 有两种选择可以创建一个 直接 就像 Android Developers 上所说的那样 http developer android com resources articles live
  • 用餐哲学家挨饿的可能性

    我需要检查解决哲学家就餐问题的算法是否保证满足以下所有条件 不存在僵局的可能性 没有挨饿的可能 我正在使用信号 http en wikipedia org wiki Semaphore 28programming 29放在筷子上即可解决问题
  • 如何从 Visual Studio 2017 中的 .NET Framework 4.5 控制台应用程序引用 .NET 标准库?

    我终于安装了 Visual Studio 2017 2 并试图让我的第一个项目正常运行 但遇到了一些问题 我希望在这里解决 我有一个非常简单的 NET 标准库 描述为以下项目文件
  • ActivatedRoute 订阅第一个子参数观察者

    我不确定这是否是实现此目的的最佳方法 如果您有其他意见请分享 我必须实现一个多收件箱系统 用户可以将多封电子邮件按不同的收件箱分组 例如 http localhost inbox personal 将显示电子邮件列表personal inb
  • 简单回溯暴力算法最坏情况下有效的数独谜题是什么?

    The 简单 幼稚的回溯暴力算法 数独的 直接深度优先搜索 是众所周知并已实现的 并且似乎不存在不同的实现 当我第一次写这个问题时 我想说我们可以完全标准化它 但措辞很糟糕 我认为这个人很好地描述了算法 https stackoverflo
  • 根据 pandas 数据框中的另一列获取子字符串

    您好 有没有办法根据另一列获取一列的子字符串 import pandas as pd x pd DataFrame name bernard brenden bern digit 2 3 3 x digit name 0 2 bernard
  • 为什么我的 JComponent 没有显示在背景 JFrame 的顶部?

    为什么我的 JComponent 没有显示在背景 JFrame 的顶部 请检查以下代码 class CounterFrame extends JFrame private static final long serialVersionUID
  • 如何在 Blazor 中使用 TagHelpers?

    我创建了一个标签助手 并想在我的 Blazor 示例项目中使用它 但是 当我想使用标签助手时 编译器会抱怨 CS0103 The name StartTagHelperWritingScope does not exist in the c
  • 使用方案时,浏览器如何确定 href 中的 URL 是否是相对的?

    假设我有以下链接标签 a href Phone number a 浏览器到底如何知道不加载相对位置 tel 15555555从当前服务器知道tel应该被解释为一个计划 检测主机相对 URL 或协议相关的 URL 似乎是微不足道的 我猜 HT
  • 将函数列表应用于数字

    据我了解 Scheme Racket 中的函数 如 map foldr 和 filter 可以做一些奇妙的事情 例如将函数应用于元素列表 是否可以将函数列表应用于单个元素 我想生成每个函数产生的值 然后找到它们的最大值 谢谢 对于第一部分
  • WSO2 EI/ESB:For 循环实现

    我想实现一个简单的 for loop 在 WSO2 Integration Studio 中 例如 我正在实现一个巴士路线 API 每辆巴士有 10 个不同的站点 我想从后端服务获取 10 个站点 一个正常的 for 循环是 for i 0
  • ”中的服务器错误

    我正在遵循一个教程 内容如下 1 添加 ASP NET Identity 之前的第一步是禁用应用程序服务器 IIS 的默认身份验证机制 因为该框架使用自己的身份验证机制 为此 请在 Web config 文件的 system web 部分添
  • 将 Spark 设置为 Hive 的默认执行引擎

    Hadoop 2 7 3 Spark 2 1 0 和 Hive 2 1 1 我正在尝试将 Spark 设置为配置单元的默认执行引擎 我将 SPARK HOME jars 中的所有 jar 上传到 hdfs 文件夹 并将 scala libr
  • 如何在 iOS Swift 中为 CMSampleBufferGetFormatDescription 创建一个AudioSampleBuffer

    我一直致力于 iOS Swift 中的视频压缩 并关注this https stackoverflow com a 52346800 9250384所以的答案 它工作正常 直到我将这段代码的文件格式更改为 mp4 let videoWrit
  • 使用 Whatsapp 发送图像和文本

    我需要从我的应用程序发送带有文本的图像 我知道如何仅发送图像或仅发送文本 但我不知道如何将两者结合起来 只是一张图片 let image UIImage named Image replace that with your UIImage