一.前言:
前段時間項目中有個需求,在App內調用QQ客戶端,在不是好友前提下,向指定的客服QQ發起臨時會話,很簡單的一個需求,可是實際實現起來卻碰到不少問題.
- 1.QQ開發者平臺,並無找到App調用QQ客戶端發起臨時會話方法,(只提供了網頁端接入方法)
- 2.網上搜到的一些方法,大部分都粗秒淡寫,要麼能夠調用QQ客戶端,不能成功發送消息,要麼是其餘問題.
通過一段時間摸索,發現接入方法至關簡單,現將接入方法分享給你們,但願有一樣需求的同鞋,少走彎路.
二.效果:
三.需求:
- App內調用QQ客戶端,在不是好友前提下,向指定QQ號發起臨時會話
四.接入方法:
1.用來接收臨時消息QQ號(拿這個QQ號舉例:1099779883)需開通QQ推廣功能,未開通QQ推廣功能,是不能接收陌生人消息的,開通方法以下:
- 1.開通方式:打開QQ推廣網址 http://shang.qq.com 並用接收臨時消息QQ號(1099779883)登陸
- 2.點擊頂部導航欄:推廣工具,(如圖):
- 3.在彈出菜單中點擊'當即免費開通'(如圖:)便可
2.將QQ(mqq
字段)添加到項目plist文件白名單中(iOS9新出要求),方法以下:
- 1.在項目info.plist添加
LSApplicationQueriesSchemes
字段 類型Array
- 2.在此Array中添加一個 item 值設爲:
mqq
(如圖)
3.直接上代碼:
if([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"mqq://"]])
{
NSString *QQ = @"1099779883";
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.我前期上架一個項目,即是這樣處理的.
六.小結: