Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >通过whatsapp ios 8共享映像

通过whatsapp ios 8共享映像
EN

Stack Overflow用户
提问于 2015-09-08 16:53:00
回答 2查看 1.7K关注 0票数 1

我正在我的应用程序中捕获图像,并使用WHATSAPP通过按下分享按钮来分享它,就像在RETRICA中一样。但我找不到任何方法来正确地完成它。我使用了UIDocumentInteraction,但它不起作用。如何在IOS8中使用WHATSAPP的share扩展来共享它。

我在使用UIDocumentInteractionController时遇到了这个异常。

'UIDocumentInteractionController:方案无效(null)。仅支持文件方案。‘

这是我的代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
let image = UIImage(named: "nature")
        let path = NSHomeDirectory().stringByAppendingPathComponent("Documents/whatsAppTmp.wai")
        UIImageJPEGRepresentation(image!, 100.0)?.writeToFile(path, atomically: true)

        let documentInteractionController = UIDocumentInteractionController(URL: NSURL(string: path)!)
        documentInteractionController.UTI = "net.whatsapp.image"
EN

回答 2

Stack Overflow用户

发布于 2016-03-22 02:33:25

也许这对你有帮助:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
let urlWhats = "whatsapp://app"
if let urlString = urlWhats.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet()) {
    if let whatsappURL = NSURL(string: urlString) {

        if UIApplication.sharedApplication().canOpenURL(whatsappURL) {

            if let image = UIImage(named: "image") {
                if let imageData = UIImageJPEGRepresentation(image, 1.0) {
                    let tempFile = NSURL(fileURLWithPath: NSHomeDirectory()).URLByAppendingPathComponent("Documents/whatsAppTmp.wai")
                    do {
                        try imageData.writeToURL(tempFile, options: .DataWritingAtomic)
                        self.documentInteractionController = UIDocumentInteractionController(URL: tempFile)
                        self.documentInteractionController.UTI = "net.whatsapp.image"
                        self.documentInteractionController.presentOpenInMenuFromRect(CGRectZero, inView: self.view, animated: true)
                    } catch {
                        print(error)
                    }
                }
            }

        } else {
            // Cannot open whatsapp
        }
    }
}

你可以看到这个答案Share image/text through WhatsApp in an iOS app

票数 0
EN

Stack Overflow用户

发布于 2016-10-28 04:29:41

在Swift 3中使用以下代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 @IBAction func whatsappShareWithImages(_ sender: AnyObject)
    {

        let urlWhats = "whatsapp://app"
        if let urlString = urlWhats.addingPercentEncoding(withAllowedCharacters:CharacterSet.urlQueryAllowed) {
            if let whatsappURL = URL(string: urlString) {

                if UIApplication.shared.canOpenURL(whatsappURL as URL) {

                    if let image = UIImage(named: "whatsappIcon") {
                        if let imageData = UIImageJPEGRepresentation(image, 1.0) {
                            let tempFile = URL(fileURLWithPath: NSHomeDirectory()).appendingPathComponent("Documents/whatsAppTmp.wai")
                            do {
                                try imageData.write(to: tempFile, options: .atomic)
                                self.documentInteractionController = UIDocumentInteractionController(url: tempFile)
                                self.documentInteractionController.uti = "net.whatsapp.image"
                                self.documentInteractionController.presentOpenInMenu(from: CGRect.zero, in: self.view, animated: true)

                            } catch {
                                print(error)
                            }
                        }
                    }

                } else {
                    // Cannot open whatsapp
                }
            }
        }

    }

将此代码添加到您的应用程序"plist“中

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
   <key>LSApplicationQueriesSchemes</key>
        <array>
            <string>whatsapp</string>
        </array>

你也可以参考一下小应用:https://github.com/nithinbemitk/iOS-Whatsapp-Share

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32463224

复制
相关文章
AngularJS Select(选择框)
在 AngularJS 中我们可以使用 ng-option 指令来创建一个下拉列表,列表项通过对象和数组循环输出,如下实例:
陈不成i
2021/07/23
2.5K0
在eclipse中没有server(需在选项中设置)
①在软件eclipse下的Help->InstallNew Software->中,在Work with中点击Add,如下,加入
全栈程序员站长
2022/07/25
4K0
在eclipse中没有server(需在选项中设置)
“我的‘换机焦虑’,选择太多等于没有选择”
为了换台新手机,我询问了周边12个90后的朋友们,真是不问不知道,一问吓一跳,12个朋友中,10个人用的都是iPhone,从8到13各种型号应有尽有。
用户2908108
2022/12/17
5740
“我的‘换机焦虑’,选择太多等于没有选择”
【错误记录】IntelliJ IDEA 中右键点击源码目录选择 New 选项 没有创建 Java Class 选项 ( 将对应的源码目录标记为 Sources 选项 )
右键点击源码根目录 , 在弹出的菜单中选择 " Open Module Settings " 选项 ,
韩曙亮
2023/03/30
2.3K0
【错误记录】IntelliJ IDEA 中右键点击源码目录选择 New 选项 没有创建 Java Class 选项 ( 将对应的源码目录标记为 Sources 选项 )
AngularJS ng-model 指令
ng-model 指令用于绑定应用程序数据到 HTML 控制器(input, select, textarea)的值。
陈不成i
2021/07/23
1.1K0
SourceTree 推送没有分支选择
使用 SourceTree Checkout 了 远程分支,本地分支与远程分支名字不匹配,然后 push 的时候就没有分支选择。
晓晨
2020/05/29
1.4K0
轻松构建灵活的表单,试试AngularJS 选择框
在Web开发中,表单是一个非常重要的组件。表单通常包含各种输入字段,例如输入框、复选框和选择框等,用于收集用户的输入数据。AngularJS 提供了一系列的指令和服务,使得表单的开发更加简单、高效。本文将详细介绍 AngularJS 中的选择框(Select)指令,以及如何使用它来构建灵活的表单。
网络技术联盟站
2023/07/05
2120
AngularJS系列之select下拉选择第一个选项为空白的解决办法
今天给大家介绍一下AngularJS系列之select下拉选择第一个选项为空白的解决办法。 相信大家也经常遇到这种情况吧:在使用AngularJS中的select组件开发的时候,莫名其妙的第一个选项就
林老师带你学编程
2018/01/03
3.2K0
初次使用AngularJS中的ng-view,路由控制
AngularJS中的route可以控制页面元素的改变,使多页面变成一个单页面 第一步:引入必要的js: <script src="js/lib/angular.js"></script> <script src="js/lib/angular-animate.min.js"></script> <script src="js/lib/angular-route.min.js"></script> <script src="app.js"></script> 第二步:准备好一个单页: <body ng-a
Ryan-Miao
2018/03/13
1.6K0
AngularJS ng-model 指令
在前端开发中,表单是用户与网站互动的重要组成部分。为了实现表单数据的双向绑定,AngularJS 提供了 ng-model 指令。本文将详细介绍 ng-model 指令的用法和工作原理,并提供一些实例帮助读者更好地理解和应用该指令。
网络技术联盟站
2023/07/05
1880
AngularJs ng-route路由详解
本篇基于ng-route来讲下angular中的路由,路由功能主要是 $routeProvider服务 与 ng-view 实现。 ng-view的实现原理,是根据路由的切换,动态编译html模板——$compile(html)(scope)。 更多内容参考:Angularjs总结 前提 首先需要在页面引入angular和angular-route,注意要在angular-route之前引入angular <script src="../../bower_components/angular/an
用户1154259
2018/01/17
1.9K0
angularJS学习之路(九)---ng-if
ng-if  指令可以根据表示的结果   在DOM中生成或者移除一个元素   而且是完全移除  不是隐藏或者显示
wust小吴
2019/07/08
4680
人生中的选择
我曾经在微博出了一个选择题: 假设不能兼得,以下三位候选人你会跟谁结婚: A)Sex Partner(性伴侣,在一起激情四射) B)Business Partner(商业伙伴,前途钱财与名利无限) C
用户1756920
2018/06/20
1.3K0
eclipse里没有server选项怎么办(eclipse中没有server选项)
用eclipese写网页很多时候需要配置tomcat,但有些朋友跟着网上的教程配置发现eclipse->【Window】->【Preferences】里没有【server】从而配置不了Runtime Environment。所以需要通过eclipse进行安装。 下面给出解决办法 首先,获取你的eclipse的版本类型,点击【help】->【about eclipse IDE】
全栈程序员站长
2022/08/01
1.3K0
eclipse里没有server选项怎么办(eclipse中没有server选项)
eclipse设置中没有server选项[通俗易懂]
用eclipse准备配置tomcat,发现配置中没有server选项,参考各种解决方法之后成功解决。
全栈程序员站长
2022/08/01
6.5K1
eclipse设置中没有server选项[通俗易懂]
选择篇(017)-哪个选项是不正确的?
在JavaScript中,所有对象键都是字符串(除了Symbol)。尽管有时我们可能不会给定字符串类型,但它们总是被转换为字符串。
齐丶先丶森
2022/05/12
1.3K0
angularjs中常用的ng指令介绍【转载】
原文:http://www.cnblogs.com/lvdabao/p/3379659.html
用户3055976
2018/09/12
2K0
没有万能的结构和选择
从磁盘到CPU的寄存器的所有存储介质,都是从体积大、速度慢、价格便宜 到体积小、速度高价格更贵;
明明如月学长
2021/08/31
3110
没有万能的结构和选择
在seaborn中设置和选择颜色梯度
seaborn在matplotlib的基础上进行开发,当然也继承了matplotlib的颜色梯度设置, 同时也自定义了一系列独特的颜色梯度。在seaborn中,通过color_palette函数来设置颜色, 用法如下
生信修炼手册
2020/11/02
3.8K0
在seaborn中设置和选择颜色梯度
Hibernate 5 在保存数据的时候提示数据库没有选择
09:06:40.277 [http-nio-8080-exec-1] ERROR o.h.id.enhanced.TableStructure - could not read a hi value
HoneyMoose
2020/04/15
1.5K0
Hibernate 5 在保存数据的时候提示数据库没有选择

相似问题

AngularJS -ng-选项选择值

11

AngularJs选择ng-选项无效

23

在AngularJS中使用带有选项选择的ng选项

16

在angularJS中使用ng选项选择绑定

11

在angularjs中禁用带有ng选项的选择箱

49
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文