当前位置: 首页 > 编程笔记 >

iOS实现调用QQ客户端发起临时会话

权浩阔
2023-03-14
本文向大家介绍iOS实现调用QQ客户端发起临时会话,包括了iOS实现调用QQ客户端发起临时会话的使用技巧和注意事项,需要的朋友参考一下

一.前言:

前段时间项目中有个需求,在App内调用QQ客户端,在不是好友前提下,向指定的客服QQ发起临时会话,很简单的一个需求,但是实际实现起来却碰到很多问题.

1.QQ开发者平台,并没有找到App调用QQ客户端发起临时会话方法,(只提供了网页端接入方法)

2.网上搜到的一些方法,大部分都粗秒淡写,要么可以调用QQ客户端,不能成功发送消息,要么是其他问题.

经过一段时间摸索,发现接入方法相当简单,现将接入方法分享给大家,希望有同样需求的同鞋,少走弯路.

二.效果:

三.需求:

App内调用QQ客户端,在不是好友前提下,向指定QQ号发起临时会话

四.接入方法:

1.用来接收临时消息QQ号(拿这个QQ号举例:10997**3)需开通QQ推广功能,未开通QQ推广功能,是不能接收陌生人消息的,开通方法如下:

1.开通方式:打开QQ推广网址 http://shang.qq.com 并用接收临时消息QQ号(109977**83)登录

2.点击顶部导航栏:推广工具,(如图):

3.在弹出菜单中点击'立即免费开通'(如图:)即可

2.将QQ(mqq字段)添加到项目plist文件白名单中(iOS9新出要求),方法如下:

1.在项目info.plist添加LSApplicationQueriesSchemes字段 类型Array

2.在此Array中添加一个 item 值设为:mqq(如图)

3.直接上代码:

//是否安装QQ
  if([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"mqq://"]])
  {
     //用来接收临时消息的客服QQ号码(注意此QQ号需开通QQ推广功能,否则陌生人向他发送消息会失败)
     NSString *QQ = @"1099779883";
     //调用QQ客户端,发起QQ临时会话
     NSString *url = [NSString stringWithFormat:@"mqq://im/chat?chat_type=wpa&uin=%@&version=1&src_type=web",QQ];
     [[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]];
  }

五.注意事项:

1.由于开发文档中规定App的正常使用不能依赖其他App,所以在项目中集成此功能的童鞋要注意,在未安装QQ客户端时建议影藏此功能,不然上架有被拒风险.

2.我前期上架一个项目,便是这样处理的.

 类似资料:
  • 什么都不会 原地倒闭

  • * 算法LRU * tcp五层、osi七层 * c 和 c++ 区别 * 网络层和链路层作用 * 指针引用区别 * 栈和队列区别 * new malloc区别 * 智能指针区别 * url网页渲染过程 * 三握四挥 ,time_wait * tcp udp区别 更安全or更可靠 为什么这么简单为什么这么简单,项目根本没问(虽然很low)难不成走流程然后寄掉 更新 挂掉了 终究过不去学历关 搞不懂看

  • 实时调试模块提供埋点的审计功能,主要应用于以下两个业务场景: 测试或者产品需要校验埋点是否跟业务场景一致: 埋点是否埋上:当前业务流程或者位置是否有埋点。==避免漏埋== 埋点是否准确:当前埋点是否跟业务流程或者位置一致,关键信息是否上报。==避免埋点错误== 测试或者开发需要校验埋点,但是又不希望当前操作产生错误日志污染线上数据 实时调试功能目前支iOS、Android以及微信小程序,本节介绍客

  • 1. TCP和UDP区别 2. TCP怎么保证可靠传输 3. TCP拥塞控制做什么用 4. HTTP协议基于什么 5. HTTP和HTTPS 6. 客户机拿到了公钥和私钥全部吗 7. Java中的GC流程 8. 为什么要有分代收集 9. 哈希表 10. 数组和链表的区别 11. 数组和链表头部插入和尾部插入细说 12. Java中哈希表查找和插入的时间复杂度 13. 项目和实习 算法1:括号匹配,

  • 问题内容: 我正在尝试使用Parse LiveQueries。我使用此Parse“ Bootstrap”:“ https://github.com/parse- community/parse-server ”, 我可以看到日志:, 但是尽管我已经订阅了,但我没有在查询中得到更新。它甚至没有到达的处理程序。 : : (iOS Swift): 问题答案: 这段代码的问题是您正在将该代码放置在函数中。

  • WebService是为程序服务的,只在浏览器中访问WebService是没有意义的。因此,在本节使用Java实现了一个控制台程序来调用上一节发布的WebService。调用WebService的客户端代码如下: package client; import javax.xml.namespace.QName; import org.apache.axis2.addressing.Endp