单军华
2018-07-11 7b02207537d35bfa1714bf8beafc921f717d100a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
///
/// \file QQApiInterface.h
/// \brief QQApi接口简化封装
///
/// Created by Tencent on 12-5-15.
/// Copyright (c) 2012年 Tencent. All rights reserved.
///
 
#import <Foundation/Foundation.h>
#import "QQApiInterfaceObject.h"
 
/**
 \brief 处理来至QQ的请求及响应的回调协议
 */
@protocol QQApiInterfaceDelegate <NSObject>
 
/**
 处理来至QQ的请求
 */
- (void)onReq:(QQBaseReq *)req;
 
/**
 处理来至QQ的响应
 */
- (void)onResp:(QQBaseResp *)resp;
 
/**
 处理QQ在线状态的回调
 */
- (void)isOnlineResponse:(NSDictionary *)response;
 
@end
 
/**
 \brief 对QQApi的简单封装类
 */
@interface QQApiInterface : NSObject
 
/**
 处理由手Q唤起的跳转请求
 \param url 待处理的url跳转请求
 \param delegate 第三方应用用于处理来至QQ请求及响应的委托对象
 \return 跳转请求处理结果,YES表示成功处理,NO表示不支持的请求协议或处理失败
 */
+ (BOOL)handleOpenURL:(NSURL *)url delegate:(id<QQApiInterfaceDelegate>)delegate;
 
/**
 向手Q发起分享请求
 \param req 分享内容的请求
 \return 请求发送结果码
 */
+ (QQApiSendResultCode)sendReq:(QQBaseReq *)req;
 
/**
 向手Q QZone结合版发起分享请求
 \note H5分享只支持单张网络图片的传递
 \param req 分享内容的请求
 \return 请求发送结果码
 */
+ (QQApiSendResultCode)SendReqToQZone:(QQBaseReq *)req;
 
/**
 向手Q 群部落发起分享请求
 \note H5分享只支持单张网络图片的传递
 \param req 分享内容的请求
 \return 请求发送结果码
 */
+ (QQApiSendResultCode)SendReqToQQGroupTribe:(QQBaseReq *)req;
 
/**
 向手Q发送应答消息
 \param resp 应答消息
 \return 应答发送结果码
 */
+ (QQApiSendResultCode)sendResp:(QQBaseResp *)resp;
 
/**
 检测是否已安装QQ
 \return 如果QQ已安装则返回YES,否则返回NO
 */
+ (BOOL)isQQInstalled;
 
/**
 检测是否已安装TIM
 \return 如果TIM已安装则返回YES,否则返回NO
 */
+ (BOOL)isTIMInstalled;
 
/**
 批量检测QQ号码是否在线
 */
+ (void)getQQUinOnlineStatues:(NSArray *)QQUins delegate:(id<QQApiInterfaceDelegate>)delegate;
 
/**
 检测QQ是否支持API调用
 \return 如果当前安装QQ版本支持API调用则返回YES,否则返回NO
 */  
+ (BOOL)isQQSupportApi;
 
/**
 检测TIM是否支持API调用
 \return 如果当前安装TIM版本支持API调用则返回YES,否则返回NO
 */
+ (BOOL)isTIMSupportApi;
 
/**
 启动QQ
 \return 成功返回YES,否则返回NO
 */
+ (BOOL)openQQ;
 
/**
 启动TIM
 \return 成功返回YES,否则返回NO
 */
+ (BOOL)openTIM;
 
/**
 获取QQ下载地址
 
 如果App通过<code>QQApiInterface#isQQInstalled</code>和<code>QQApiInterface#isQQSupportApi</code>检测发现QQ没安装或当前版本QQ不支持API调用,可引导用户通过打开此链接下载最新版QQ。
 \return iPhoneQQ下载地址
 */
+ (NSString *)getQQInstallUrl;
 
/**
 获取TIM下载地址
 
 如果App通过<code>QQApiInterface#isTIMInstalled</code>和<code>QQApiInterface#isTIMSupportApi</code>检测发现TIM没安装或当前版本TIM不支持API调用,可引导用户通过打开此链接下载最新版TIM。
 \return iPhoneTIM下载地址
 */
+ (NSString *)getTIMInstallUrl;
 
@end