iOS-如何跳转至WhatsApp指定联系人对话界面

最近接了个新需求, 就是需要从公司项目跳转到第三方通讯App的指定联系人的对话界面。大概就是跳转到第三方APP时用手机号码找到对应的联系人,然后自动到达这个联系人的对话界面进行沟通。
关于第三方App公司给了2个选择, 一个是微信, 一个是WhatsApp,任选其一。
话说微信SDK经常接触,WhatsApp倒是没咋弄过,于是就决定先从微信入手。
看了微信的开发文档,符合这个需求的只有分享功能,但是文档提供的分享场景只有这三个:

分享到对话: WXSceneSession
分享到朋友圈: WXSceneTimeline
分享到收藏: WXSceneFavorite

并不支持分享给指定的联系人,我用第一种场景分享到对话做了测试,必须要自己手动选中联系人才能跳转到对话界面,那这个就不符合需求了,所以微信Pass。

WhatsApp

再来看看WhatsApp, WhatsApp的官方文档非常简洁,而且不需要集成SDK,非常方便。幸运的是它对跳到到指定联系人界面对话有提供Custom URL Scheme,就是点击对话功能

官方文档:
WhatsApp 的 点击直接对话功能让用户无需将另一方的电话号码储存到手机通讯录中也可与对方对话。只要您知道对方的电话号码,您就可以建立一个链接,允许您与对方对话,点击该链接会直接打开对话窗。WhatsApp 手机应用程式和网页版本支持点击对话功能。
如要建立链接,请使用 https://wa.me/<number>,其中的<number>请填入联系人的完整国际格式电话号码,省略任何前方的零号、括号或破折号。更多有关国际格式电话号码的完整消息,请阅读 此文章。请注意,电话号码必须已绑定到一个有效的 WhatsApp 帐号。
正确:https://wa.me/15551234567 不正确:https://wa.me/+001-(555)1234567>

1.简而言之我们只要用https://wa.me/ + 用户手机号码 新建一个链接进行跳转就能实现我们的需求。话不多说直接上代码:

 NSString *whatsappPhoneMumber = @"133XXXXXXXX”;
 NSString *url = [NSString stringWithFormat:@"https://wa.me/86%@",whatsappPhoneMumber];
 NSURL *whatsappURL = [NSURL URLWithString: @"whatsapp://"];
 NSURL *ChatsURL = [NSURL URLWithString: url];
//判断本地是否存在WhatsApp应用,存在才进行跳转
 if ([[UIApplication sharedApplication] canOpenURL: whatsappURL]) {

 [[UIApplication sharedApplication] openURL: ChatsURL];
 } else {
 // Cannot open whatsapp
 NSLog(@"不能打开WhatsApp");
 }

需要注意的是:在代码运行之前我们需要先在info.plist 文件添加允许访问 WhatsApp 的名单,否则无法跳转。

WhatsApp名单

或者将 info.plist 以 Source Code 方式打开,添加以下代码:

 <key>LSApplicationQueriesSchemes</key>
 <array>
  <string>whatsapp</string>
 </array> 

代码运行效果:

6E8A24DBC4290968D0AD57D4F1BF3033.png

2.如果想在跳转后附带上文字也很简单,在后面拼接上text即可

格式:https://wa.me/手机号码/?text=对话文字,

   NSString *urlencodedtext = @"预先填入内容"
   NSString *whatsappphonenumber = @"133XXXXXXXX";
   NSString *url = [NSString stringWithFormat:@"https://wa.me/86%@/?text=%@",whatsappphonenumber,urlencodedtext];

参考链接:
https://www.jianshu.com/p/d66a8aef8071
https://faq.whatsapp.com/zh_cn/iphone/26000030/?category=5245251

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,639评论 6 513
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,093评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 167,079评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,329评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,343评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,047评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,645评论 3 421
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,565评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,095评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,201评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,338评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,014评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,701评论 3 332
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,194评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,320评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,685评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,345评论 2 358

推荐阅读更多精彩内容

  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,440评论 0 17
  • 最新版全能地图下载器 V17.6.30,已支持下载高德地图POI(兴趣点数据),高德地图POI比百度和腾讯地图PO...
    全能地图阅读 3,366评论 0 1
  • 001 公司的事情和纷争终于落下帷幕。 松了一口气的我疲惫不堪,昨天下午窝在洽谈室的沙发上忍不住眯了一会,可还是困...
    晴千千阅读 274评论 0 1
  • 一直在路上。 然后你又回头。 停停,又走。 回来吗?还会回来吗? 01 一块去流浪。 真的? 02 什么? 又要数...
    前方是什么阅读 880评论 3 22
  • 等 等了一阵风 又等一个人 再等一艘船 还等一架飞机与高铁 直至所有激情与期待都被磨灭 等了许久 风还未吹 人也未...
    司马青芒阅读 227评论 3 4