From 7acec95dedc4b1175a8d1fc5a123f5d381d276f8 Mon Sep 17 00:00:00 2001
From: lpw
Date: Mon, 14 Mar 2022 09:22:20 +0800
Subject: [PATCH] 2.5.0

---
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_safari.png          |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone@2x.png                               |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/qqicon.png                                 |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame@2x.png                        |    0 
 WAQQImpl_CN/2.5.0/WAQQImpl_CN.podspec                                                                     |   26 ++
 frameworks/TencentOpenAPI.framework/Headers/sdkdef.h                                                      |    5 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel_hover.png                             |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/Info.plist                                                        |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone.png                                  |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame@2x.png |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan@2x.png                         |    0 
 frameworks/WAQQImpl.framework/WAQQImpl                                                                    |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin.png                                 |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward@2x.png   |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/error.png                                  |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame.png    |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame.png                           |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan@2x.png  |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward@2x.png                          |    0 
 frameworks/TencentOpenAPI.framework/Headers/TencentOAuth.h                                                |   60 ++-
 frameworks/TencentOpenAPI.framework/Headers/QQApiInterface.h                                              |   60 ++++
 frameworks/TencentOpenAPI.framework/Headers/module.modulemap                                              |   11 
 config/wa_sdk_impl_config_qq.xml                                                                          |    2 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_for.png           |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more@2x.png                              |    0 
 WAQQImpl_CN.podspec                                                                                       |    2 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/local.html                                 |   73 +++++
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg@2x.png                            |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_for@2x.png        |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel.png            |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/refresh.png               |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_recommand@2x.png  |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back@2x.png       |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_safari@2x.png       |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone.png           |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan.png                            |    0 
 frameworks/TencentOpenAPI.framework/Headers/TencentOpenApiUmbrellaHeader.h                                |    6 
 bundle/TencentOpenApi_IOS_Bundle.bundle/local.html                                                        |  146 +++++-----
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more.png                                 |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back@2x.png                              |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop@2x.png                              |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq@2x.png           |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward.png                              |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg.png        |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin@2x.png       |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward.png                             |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/Info.plist                                 |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin.png          |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/refresh@2x.png            |    0 
 frameworks/WAQQImpl.framework/Headers/WAQQImpl.h                                                          |    2 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel_hover.png      |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_recommand.png     |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward.png      |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg@2x.png     |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/success.png                                |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward@2x.png                           |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more.png          |    0 
 frameworks/WAQQImpl.framework/Info.plist                                                                  |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg.png                               |    0 
 frameworks/TencentOpenAPI.framework/TencentOpenAPI                                                        |    0 
 frameworks/TencentOpenAPI.framework/Headers/QQApiInterfaceObject.h                                        |  378 ++++++++++++++++++----------
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop.png          |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin@2x.png                              |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel.png                                   |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop@2x.png       |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more@2x.png       |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop.png                                 |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward.png       |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq@2x.png                                  |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone@2x.png        |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back.png                                 |    0 
 bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq.png                                     |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward@2x.png    |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq.png              |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back.png          |    0 
 frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan.png     |    0 
 76 files changed, 521 insertions(+), 250 deletions(-)

diff --git a/WAQQImpl_CN.podspec b/WAQQImpl_CN.podspec
index feb61a5..9c0522e 100644
--- a/WAQQImpl_CN.podspec
+++ b/WAQQImpl_CN.podspec
@@ -9,7 +9,7 @@
 Pod::Spec.new do |s|
 
 s.name = 'WAQQImpl_CN'
-s.version = '2.2.0'
+s.version = '2.5.0'
 s.summary = 'WAQQImpl_CN framework in testing environment.'
 s.license = 'MIT'
 s.author = { "Hank" => "hank.zhang@gamehollywood.com" }
diff --git a/WAQQImpl_CN/2.5.0/WAQQImpl_CN.podspec b/WAQQImpl_CN/2.5.0/WAQQImpl_CN.podspec
new file mode 100644
index 0000000..9c0522e
--- /dev/null
+++ b/WAQQImpl_CN/2.5.0/WAQQImpl_CN.podspec
@@ -0,0 +1,26 @@
+#
+#  Be sure to run `pod spec lint WAApImpl_CN.podspec' to ensure this is a
+#  valid spec and to remove all comments including this before submitting the spec.
+#
+#  To learn more about Podspec attributes see http://docs.cocoapods.org/specification.html
+#  To see working Podspecs in the CocoaPods repo see https://github.com/CocoaPods/Specs/
+#
+
+Pod::Spec.new do |s|
+
+s.name = 'WAQQImpl_CN'
+s.version = '2.5.0'
+s.summary = 'WAQQImpl_CN framework in testing environment.'
+s.license = 'MIT'
+s.author = { "Hank" => "hank.zhang@gamehollywood.com" }
+s.homepage = 'http://172.16.100.58:7070/summary/WAQQImpl_CN.git'
+s.source = { :git => "http://admin@172.16.100.58:7070/r/WAQQImpl_CN.git" , :tag => s.version}
+s.platform = :ios
+s.ios.deployment_target = "7.0"
+s.vendored_frameworks = 'frameworks/*.framework'
+s.resources = ['config/*.xml','bundle/TencentOpenApi_IOS_Bundle.bundle']
+
+# s.dependency 'WASdkIntf_CN', '~> 2.1.0'   #
+# s.dependency 'WASdkImpl_CN', '~> 2.1.0'
+s.requires_arc = true
+end
\ No newline at end of file
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/Info.plist b/bundle/TencentOpenApi_IOS_Bundle.bundle/Info.plist
index 4cd456a..4a1632e 100644
--- a/bundle/TencentOpenApi_IOS_Bundle.bundle/Info.plist
+++ b/bundle/TencentOpenApi_IOS_Bundle.bundle/Info.plist
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel_hover.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel_hover.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan@2x.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan@2x.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq@2x.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq@2x.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone@2x.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone@2x.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin@2x.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin@2x.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back@2x.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back@2x.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame@2x.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame@2x.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward@2x.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward@2x.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward@2x.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward@2x.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more@2x.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more@2x.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop@2x.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop@2x.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg@2x.png b/bundle/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg@2x.png
old mode 100644
new mode 100755
Binary files differ
diff --git a/bundle/TencentOpenApi_IOS_Bundle.bundle/local.html b/bundle/TencentOpenApi_IOS_Bundle.bundle/local.html
index 4a1cf42..73f1a73 100644
--- a/bundle/TencentOpenApi_IOS_Bundle.bundle/local.html
+++ b/bundle/TencentOpenApi_IOS_Bundle.bundle/local.html
@@ -1,73 +1,73 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta http-equiv="X-UA-Compatible" content="IE=Edge">
-<meta charset="UTF-8">
-<title>社交渠道</title>
-<meta name="viewport" content="width=device-width,initial-scale=1.0, maximum-scale = 1.0,user-scalable=no" />
-<meta name="format-detection" content="telephone=no" />
-<meta name="apple-mobile-web-app-capable" content="yes" />
-<style>
-*{margin:0;padding:0}
-.header{text-align:center;height:44px;background:-webkit-gradient(linear,0 0,0 100%,from(#4c4c4c),to(#313131));border-top:#5b5b5b 1px solid;position:relative;line-height:44px}
-.header h1{color:#fff;font-weight:bold;font-size:20px}
-.header a{width:49px;height:29px;background-size:49px 29px;position:absolute;top:7px;display:block;text-indent:-999em;cursor:pointer}
-.header .back{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEkAAAAsCAYAAAApSpU1AAAFgElEQVR42u2bSWgsRRjH40XEg3rwIujBg6KCp4CH7AnZ933f9z0hK7kk8RCEhCwEMTmID81C8JIVQRJEfGQ5PEwOnpKDh+T0nomCGngolvUrpsaeYWbSnel5ODOv4Jfp/mrpqv9UffV1TyciwqYUGRn5keRjydeS7yWPgogfJOuSVsnrEXYn2ei7ku+Sk5NFZWWlaG1tFd3d3aK/vz9o6OnpES0tLaKoqEjIsfwu6bNToDzJbU1NjRgbGxPDw8NiYGAgqATSDA4OitHRUXXsEGvJDoEqJX8zcxCG2dPR0SHa2tqCkvb2dtHZ2Sl6e3vFyMiIKCwsRKgufwTKlTxFIKYqF2G6Njc3Bz2MA7EQTY7xRvLafQR6X/JHY2OjaoxGm5qaQgrEYlXk5OQgVJtVgV6W/FRRUaEEorFQE8goVFlZGSI9sCrS5wUFBaKrq0s1wmwKZZgMcsz7VgQqyszMVA4apRsaGkKe8vJyRHpoVqA3JL/U1dUpH4TKz0VyFegFybfEDuxmVK6vrw8LHD7JlEjdubm5aktEIGZTuFBaWnq3SLLAB0TUennV1taGFSUlJb5FkpkvcvNHQRw1lbj9CCfMiPQJy4ytngrV1dXPDEKMxcVFsbe390yv605xcbF3kWRGDPdlCMQMqqqq8gsCz5ubG7G7u+tiRwhscHJyIi4uLlQ5nW5vb8XU1JTXOlagntV+O250H3oS6BXJz3h2nBeFeQTiL4hA4lPb6DxCIA6Qh21jY0OJ46kd8km6jhm4BvWs9tlxk+tRpAcsMxw1BYk67eL4+Fh1Wp/TceO5GbRIVupwDepZ7a9HkaShOC0tTTlqBCKYshtCCX28s7Mjrq6uxMLCgld4bGGsTx2SlWsiEvWs9pVbMBeRHFH1NQqyxFhugUYP2FeijKc6+hwBPCXsxjLu7ZghPz//P5F0VJ2Xl6d2MgoQSNnF0NCQmJ+fd6LteiYZ8zQHBwdqsMbyug5Jn5+fn6tlbKzLOXZjGepZ7Td6GEXqycrKUo4agYgP7GR7e9vlW3a3M4i5uTmnnftDnC12b23pc8pgcy9jrOupjBmcIsk/bxFVs8RYh3YLdNcAr6+v1Sfp6OhICXR2dqZEYgb+X0RiqW2mpKSoDAKoQKEHqM8RCBvH6+vrShidODfThhbAvQx2X2XMwC5vXG6vSs5TU1NVABUo9AA5np2dVceTk5POfGaSTswmdllfbQACaBE02mYsg91qfx2Pb112tw8lf+KbiA8CwdbWlhogx3qpcYxQl5eXKm9tbU3BrMJGnrc2YH9/3ymKEey6DOfUs9rf7Oxsj3FSdVxcnIoPAoEeIMd0fHV11WlDsImJCWdZjhEKu7c2zKJFstpfJoy3iPvThIQEFSPYDd8uaXx83GnTQhHhu5fnh8Ll5WUXmxbJynW1SFb760skHpEcJSUlKe9uB319feL09FQNTn+ylDY3N50g1szMjEeor9ui7H0S9az2m2f6vp4CvCl5zI6Hh/eXpaUl1dGVlRV1Pj09LQ4PD112M1+J8rotLRI2s+gvxGq/MzIy7nyelMTjEtTEy/sLnfWV5wv3sgzYyrX5cnxd3xvp6emmHt+OxsbGKi8fjpgVSQWa7Hg4sXCDJyJmfy1RgWZiYqJyZOEEwbWVHydVoMmLWjizcIGNy7RIDqGqoqOjn4tkQqjPYmJilEMLB1g5ll6YcIj0kuRHHDlOLdTBD8vxfnGfl7jekfzGrUuoi8SqkWNtue/rgASaT1GaHSAU4bZMjvEJP7H5895kueSv+Ph45eBCjaioKERqsuMN3HTeeyYqDxVxmEEOgebtfJf7bcmu5B9CBJw6syvYoN8OcX7lPwMiApFkw+9JhiRfSb5h6wwyvpQ0evJB/wIFDhaTvqlwnwAAAABJRU5ErkJggg==);left:5px}
-</style>
-</head>
-<body>
-<div class="container" id="container">
-	<div class="header">
-		<h1 id="title"></h1>
-		<a href="javascript:void(0)" class="back" id="cancel">返回</a>
-		<a href="javascript:void(0)" style="display:none" id="confirm"></a>
-	</div>
-	<div id="main"></div>
-</div>
-<script>
-(function () {
-	try {
-		document.domain = "qq.com";
-	} catch (_) {
-		alert("invalid domain");
-	}
-	function getParam(name) {
-		var re = new RegExp("(?:\\?|#|&)" + name + "=([^&]*)(?:$|&|#)", "i"), m = re.exec(window.location.href);
-		var ret = m ? m[1] : "";
-		ret = ret.replace(/[+]/ig, "%20");
-		return ret;
-	}
-	var iface = getParam("iface");
-	switch (iface) {
-	case "AppChallenge":
-	case "AppInvitation":
-	case "AppGiftRequest":
-	case "SendStory": {
-		var appid = getParam("oauth_consumer_key"), type = getParam("type");
-		var url = "tencent" + appid + "://" + iface + "/cancel";
-		document.getElementById("cancel").addEventListener("click", function () {
-			setTimeout(function () {
-				window.open(url, "_self");
-			}, 0);
-		}, false);
-		document.getElementById("title").innerHTML = {
-			AppChallenge : type == "pk" ? "发送挑战" : "发送炫耀",
-			AppInvitation : "发送应用邀请",
-			AppGiftRequest : type == "request" ? "发送应用请求" : "发送免费礼物",
-			SendStory : "发送分享"
-		}[iface];
-		document.write('<script type="text/javascript" src="https://qzonestyle.gtimg.cn/open/mobile/' + {
-			AppChallenge : "brag_ios/js/sdk_brag.js",
-			AppInvitation : "invite_ios/js/sdk_invite.js",
-			AppGiftRequest : "request_ios/js/sdk_request.js",
-			SendStory : "story_ios/js/sdk_story.js"
-		}[iface] + '"><\/script>');
-		break;
-	}
-	default:
-		return;
-	}
-})();
-</script>
-</body>
-</html>
+<!DOCTYPE html>
+<html>
+<head>
+<meta http-equiv="X-UA-Compatible" content="IE=Edge">
+<meta charset="UTF-8">
+<title>社交渠道</title>
+<meta name="viewport" content="width=device-width,initial-scale=1.0, maximum-scale = 1.0,user-scalable=no" />
+<meta name="format-detection" content="telephone=no" />
+<meta name="apple-mobile-web-app-capable" content="yes" />
+<style>
+*{margin:0;padding:0}
+.header{text-align:center;height:44px;background:-webkit-gradient(linear,0 0,0 100%,from(#4c4c4c),to(#313131));border-top:#5b5b5b 1px solid;position:relative;line-height:44px}
+.header h1{color:#fff;font-weight:bold;font-size:20px}
+.header a{width:49px;height:29px;background-size:49px 29px;position:absolute;top:7px;display:block;text-indent:-999em;cursor:pointer}
+.header .back{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEkAAAAsCAYAAAApSpU1AAAFgElEQVR42u2bSWgsRRjH40XEg3rwIujBg6KCp4CH7AnZ933f9z0hK7kk8RCEhCwEMTmID81C8JIVQRJEfGQ5PEwOnpKDh+T0nomCGngolvUrpsaeYWbSnel5ODOv4Jfp/mrpqv9UffV1TyciwqYUGRn5keRjydeS7yWPgogfJOuSVsnrEXYn2ei7ku+Sk5NFZWWlaG1tFd3d3aK/vz9o6OnpES0tLaKoqEjIsfwu6bNToDzJbU1NjRgbGxPDw8NiYGAgqATSDA4OitHRUXXsEGvJDoEqJX8zcxCG2dPR0SHa2tqCkvb2dtHZ2Sl6e3vFyMiIKCwsRKgufwTKlTxFIKYqF2G6Njc3Bz2MA7EQTY7xRvLafQR6X/JHY2OjaoxGm5qaQgrEYlXk5OQgVJtVgV6W/FRRUaEEorFQE8goVFlZGSI9sCrS5wUFBaKrq0s1wmwKZZgMcsz7VgQqyszMVA4apRsaGkKe8vJyRHpoVqA3JL/U1dUpH4TKz0VyFegFybfEDuxmVK6vrw8LHD7JlEjdubm5aktEIGZTuFBaWnq3SLLAB0TUennV1taGFSUlJb5FkpkvcvNHQRw1lbj9CCfMiPQJy4ytngrV1dXPDEKMxcVFsbe390yv605xcbF3kWRGDPdlCMQMqqqq8gsCz5ubG7G7u+tiRwhscHJyIi4uLlQ5nW5vb8XU1JTXOlagntV+O250H3oS6BXJz3h2nBeFeQTiL4hA4lPb6DxCIA6Qh21jY0OJ46kd8km6jhm4BvWs9tlxk+tRpAcsMxw1BYk67eL4+Fh1Wp/TceO5GbRIVupwDepZ7a9HkaShOC0tTTlqBCKYshtCCX28s7Mjrq6uxMLCgld4bGGsTx2SlWsiEvWs9pVbMBeRHFH1NQqyxFhugUYP2FeijKc6+hwBPCXsxjLu7ZghPz//P5F0VJ2Xl6d2MgoQSNnF0NCQmJ+fd6LteiYZ8zQHBwdqsMbyug5Jn5+fn6tlbKzLOXZjGepZ7Td6GEXqycrKUo4agYgP7GR7e9vlW3a3M4i5uTmnnftDnC12b23pc8pgcy9jrOupjBmcIsk/bxFVs8RYh3YLdNcAr6+v1Sfp6OhICXR2dqZEYgb+X0RiqW2mpKSoDAKoQKEHqM8RCBvH6+vrShidODfThhbAvQx2X2XMwC5vXG6vSs5TU1NVABUo9AA5np2dVceTk5POfGaSTswmdllfbQACaBE02mYsg91qfx2Pb112tw8lf+KbiA8CwdbWlhogx3qpcYxQl5eXKm9tbU3BrMJGnrc2YH9/3ymKEey6DOfUs9rf7Oxsj3FSdVxcnIoPAoEeIMd0fHV11WlDsImJCWdZjhEKu7c2zKJFstpfJoy3iPvThIQEFSPYDd8uaXx83GnTQhHhu5fnh8Ll5WUXmxbJynW1SFb760skHpEcJSUlKe9uB319feL09FQNTn+ylDY3N50g1szMjEeor9ui7H0S9az2m2f6vp4CvCl5zI6Hh/eXpaUl1dGVlRV1Pj09LQ4PD112M1+J8rotLRI2s+gvxGq/MzIy7nyelMTjEtTEy/sLnfWV5wv3sgzYyrX5cnxd3xvp6emmHt+OxsbGKi8fjpgVSQWa7Hg4sXCDJyJmfy1RgWZiYqJyZOEEwbWVHydVoMmLWjizcIGNy7RIDqGqoqOjn4tkQqjPYmJilEMLB1g5ll6YcIj0kuRHHDlOLdTBD8vxfnGfl7jekfzGrUuoi8SqkWNtue/rgASaT1GaHSAU4bZMjvEJP7H5895kueSv+Ph45eBCjaioKERqsuMN3HTeeyYqDxVxmEEOgebtfJf7bcmu5B9CBJw6syvYoN8OcX7lPwMiApFkw+9JhiRfSb5h6wwyvpQ0evJB/wIFDhaTvqlwnwAAAABJRU5ErkJggg==);left:5px}
+</style>
+</head>
+<body>
+<div class="container" id="container">
+	<div class="header">
+		<h1 id="title"></h1>
+		<a href="javascript:void(0)" class="back" id="cancel">返回</a>
+		<a href="javascript:void(0)" style="display:none" id="confirm"></a>
+	</div>
+	<div id="main"></div>
+</div>
+<script>
+(function () {
+	try {
+		document.domain = "qq.com";
+	} catch (_) {
+		alert("invalid domain");
+	}
+	function getParam(name) {
+		var re = new RegExp("(?:\\?|#|&)" + name + "=([^&]*)(?:$|&|#)", "i"), m = re.exec(window.location.href);
+		var ret = m ? m[1] : "";
+		ret = ret.replace(/[+]/ig, "%20");
+		return ret;
+	}
+	var iface = getParam("iface");
+	switch (iface) {
+	case "AppChallenge":
+	case "AppInvitation":
+	case "AppGiftRequest":
+	case "SendStory": {
+		var appid = getParam("oauth_consumer_key"), type = getParam("type");
+		var url = "tencent" + appid + "://" + iface + "/cancel";
+		document.getElementById("cancel").addEventListener("click", function () {
+			setTimeout(function () {
+				window.open(url, "_self");
+			}, 0);
+		}, false);
+		document.getElementById("title").innerHTML = {
+			AppChallenge : type == "pk" ? "发送挑战" : "发送炫耀",
+			AppInvitation : "发送应用邀请",
+			AppGiftRequest : type == "request" ? "发送应用请求" : "发送免费礼物",
+			SendStory : "发送分享"
+		}[iface];
+		document.write('<script type="text/javascript" src="https://qzonestyle.gtimg.cn/open/mobile/' + {
+			AppChallenge : "brag_ios/js/sdk_brag.js",
+			AppInvitation : "invite_ios/js/sdk_invite.js",
+			AppGiftRequest : "request_ios/js/sdk_request.js",
+			SendStory : "story_ios/js/sdk_story.js"
+		}[iface] + '"><\/script>');
+		break;
+	}
+	default:
+		return;
+	}
+})();
+</script>
+</body>
+</html>
diff --git a/config/wa_sdk_impl_config_qq.xml b/config/wa_sdk_impl_config_qq.xml
index 134df6d..64bcc9d 100644
--- a/config/wa_sdk_impl_config_qq.xml
+++ b/config/wa_sdk_impl_config_qq.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <config>
-	<version val="QQ2.2.0"/>
+	<version val="QQ2.5.0"/>
     <comps>
         <!-- 公共模块 -->
         <comp module="CORE" plaf="QQ" mandatory="YES" value="WAQQCore" desc="公共模块"/>
diff --git a/frameworks/TencentOpenAPI.framework/Headers/QQApiInterface.h b/frameworks/TencentOpenAPI.framework/Headers/QQApiInterface.h
index 339d25f..f77f78d 100644
--- a/frameworks/TencentOpenAPI.framework/Headers/QQApiInterface.h
+++ b/frameworks/TencentOpenAPI.framework/Headers/QQApiInterface.h
@@ -11,6 +11,9 @@
 
 typedef void (^sendResultBlock)(NSDictionary *result);
 
+// 发送消息回调是否发送成功
+typedef void(^QQApiInterfaceSendMessageResultBlock)(QQApiSendResultCode sendResultCode, NSString *message);
+
 /**
  \brief 处理来至QQ的请求及响应的回调协议
  */
@@ -76,6 +79,56 @@
  \return 请求发送结果码
  */
 + (QQApiSendResultCode)sendMessageToQQAvatarWithReq:(QQBaseReq*)req;
+
+
++ (QQApiSendResultCode)sendMessageToQQAuthWithReq:(QQBaseReq*)req;
+
+
+/**
+ 向手Q发起绑群请求
+ \param req 请求的内容
+ \param resultBlock 请求回调
+ */
++ (void)sendThirdAppBindGroupReq:(QQBaseReq *)req resultBlock:(sendResultBlock)resultBlock;
+
+/**
+ 向手Q发起加群请求
+ \param req 请求的内容
+ \param resultBlock 请求回调
+ */
++ (void)sendThirdAppJoinGroupReq:(QQBaseReq *)req resultBlock:(sendResultBlock)resultBlock;
+
+/**
+ 向手Q发起解绑群请求
+ \param req 请求的内容
+ \param resultBlock 请求回调
+ */
++ (void)sendThirdAppUnBindGroupReq:(QQBaseReq *)req resultBlock:(sendResultBlock)resultBlock;
+
+/**
+ 向手Q发起创建QQ频道的请求
+ \param req 请求的内容
+ \param resultBlock 回调发送结果
+ \return void
+ */
++ (void)sendMessageToCreateQQGroupProWithMessageRequest:(SendMessageToQQReq *)messageRequest sendResultBlock:(QQApiInterfaceSendMessageResultBlock)sendResultBlock;
+
+
+/**
+ 向手Q发起加入QQ频道的请求
+ \param req 请求的内容
+ \param resultBlock 回调发送结果
+ \return void
+ */
++ (void)sendMessageToJoinQQGroupProWithMessageRequest:(SendMessageToQQReq *)messageRequest sendResultBlock:(QQApiInterfaceSendMessageResultBlock)sendResultBlock;
+
+
+/**
+ 向手Q发起查询QQ频道openID的请求
+ \param req 请求的内容
+ \param resultBlock 请求回调
+ */
++ (void)sendQueryQQGroupProInfo:(QQBaseReq *)req resultBlock:(sendResultBlock)resultBlock;
 
 /**
  向手Q发起组图分享到表情收藏
@@ -157,6 +210,7 @@
 + (NSString *)getTIMInstallUrl;
 
 #pragma mark - Log
+
 /*! @brief 调用此函数可以导出QQSDK的Log到第三方中,用于定位问题
  
     注意1:SDK会强引用这个block,注意不要导致内存泄漏,注意不要导致内存泄漏
@@ -165,10 +219,14 @@
  *  @param logBlock 打印log的回调block
  */
 + (void)startLogWithBlock:(QQApiLogBolock)logBlock;
+
 ///停止回调打印
 + (void)stopLog;
+
 ///设置打印日志到文件开关on/off,如果不设置,默认不打印到文件
 + (void)setSwitchPrintLogToFile:(BOOL)on;
+
 ///日志文件目录
-+ (NSString*)getLogFilePath;
++ (NSString *)getLogFilePath;
+
 @end
diff --git a/frameworks/TencentOpenAPI.framework/Headers/QQApiInterfaceObject.h b/frameworks/TencentOpenAPI.framework/Headers/QQApiInterfaceObject.h
index 61d6424..a02a7bd 100644
--- a/frameworks/TencentOpenAPI.framework/Headers/QQApiInterfaceObject.h
+++ b/frameworks/TencentOpenAPI.framework/Headers/QQApiInterfaceObject.h
@@ -11,46 +11,48 @@
 
 #import <Foundation/Foundation.h>
 
-typedef NS_ENUM(NSInteger,QQApiSendResultCode) {
-    EQQAPISENDSUCESS = 0,
-    EQQAPIQQNOTINSTALLED = 1,  //QQ未安装
-    EQQAPIQQNOTSUPPORTAPI = 2,  // QQ api不支持
-    EQQAPIMESSAGETYPEINVALID = 3,
-    EQQAPIMESSAGECONTENTNULL = 4,
-    EQQAPIMESSAGECONTENTINVALID = 5,
-    EQQAPIAPPNOTREGISTED = 6,
-    EQQAPIAPPSHAREASYNC = 7,
-    EQQAPIQQNOTSUPPORTAPI_WITH_ERRORSHOW = 8,  //QQ api不支持 && SDK显示error提示(已废弃)
-    EQQAPIMESSAGEARKCONTENTNULL = 9,  //ark内容为空
-    EQQAPIMESSAGE_MINI_CONTENTNULL = 10,  //小程序参数为空
-    EQQAPISENDFAILD = -1,  //发送失败
-    EQQAPISHAREDESTUNKNOWN = -2, //未指定分享到QQ或TIM
-    EQQAPITIMSENDFAILD = -3,  //发送失败
-    EQQAPITIMNOTINSTALLED = 11, //TIM未安装
-    EQQAPITIMNOTSUPPORTAPI = 12, // TIM api不支持
-    EQQAPI_INCOMING_PARAM_ERROR = 13, // 外部传参错误
-    EQQAPI_THIRD_APP_GROUP_ERROR_APP_NOT_AUTHORIZIED = 14, // APP未获得授权
-    EQQAPI_THIRD_APP_GROUP_ERROR_CGI_FAILED = 15, // CGI请求失败
-    EQQAPI_THIRD_APP_GROUP_ERROR_HAS_BINDED = 16, // 该组织已经绑定群聊
-    EQQAPI_THIRD_APP_GROUP_ERROR_NOT_BINDED = 17, // 该组织尚未绑定群聊
-    EQQAPIQZONENOTSUPPORTTEXT = 10000,  //qzone分享不支持text类型分享
-    EQQAPIQZONENOTSUPPORTIMAGE = 10001,  //qzone分享不支持image类型分享
-    EQQAPIVERSIONNEEDUPDATE = 10002,  //当前QQ版本太低,需要更新至新版本才可以支持
-    ETIMAPIVERSIONNEEDUPDATE = 10004,  //当前TIM版本太低,需要更新至新版本才可以支持
-    EAPPURLTYPESILLEGALITY = 20000,  //(>=3.3.8)第三方APP的info.plist中UrlTypes字段存在QQ的UrlScheme
+typedef NS_ENUM(NSInteger, QQApiSendResultCode) {
+    EQQAPISENDSUCESS                                 = 0,
+    EQQAPIQQNOTINSTALLED                             = 1,   // QQ未安装
+    EQQAPIQQNOTSUPPORTAPI                            = 2,   // QQ api不支持
+    EQQAPIMESSAGETYPEINVALID                         = 3,
+    EQQAPIMESSAGECONTENTNULL                         = 4,
+    EQQAPIMESSAGECONTENTINVALID                      = 5,
+    EQQAPIAPPNOTREGISTED                             = 6,
+    EQQAPIAPPSHAREASYNC                              = 7,
+    EQQAPIQQNOTSUPPORTAPI_WITH_ERRORSHOW             = 8,   // QQ api不支持 && SDK显示error提示(已废弃)
+    EQQAPIMESSAGEARKCONTENTNULL                      = 9,   // ark内容为空
+    EQQAPIMESSAGE_MINI_CONTENTNULL                   = 10,  // 小程序参数为空
+    EQQAPISENDFAILD                                  = -1,  // 发送失败
+    EQQAPISHAREDESTUNKNOWN                           = -2,  // 未指定分享到QQ或TIM
+    EQQAPITIMSENDFAILD                               = -3,  // 发送失败
+    EQQAPITIMNOTINSTALLED                            = 11,  // TIM未安装
+    EQQAPITIMNOTSUPPORTAPI                           = 12,  // TIM api不支持
+    EQQAPI_INCOMING_PARAM_ERROR                      = 13,  // 外部传参错误
+    EQQAPI_THIRD_APP_GROUP_ERROR_APP_NOT_AUTHORIZIED = 14,  // APP未获得授权
+    EQQAPI_THIRD_APP_GROUP_ERROR_CGI_FAILED          = 15,  // CGI请求失败
+    EQQAPI_THIRD_APP_GROUP_ERROR_HAS_BINDED          = 16,  // 该组织已经绑定群聊
+    EQQAPI_THIRD_APP_GROUP_ERROR_NOT_BINDED          = 17,  // 该组织尚未绑定群聊
+    EQQAPI_THIRD_APP_GROUP_ERROR_HAS_UNBINDED        = 18,  // 该组织已经解绑群聊
+    EQQAPIQZONENOTSUPPORTTEXT                        = 10000,   // qzone分享不支持text类型分享
+    EQQAPIQZONENOTSUPPORTIMAGE                       = 10001,   // qzone分享不支持image类型分享
+    EQQAPIVERSIONNEEDUPDATE                          = 10002,   // 当前QQ版本太低,需要更新至新版本才可以支持
+    ETIMAPIVERSIONNEEDUPDATE                         = 10004,   // 当前TIM版本太低,需要更新至新版本才可以支持
+    EAPPURLTYPESILLEGALITY                           = 20000,   // (>=3.3.8)第三方APP的info.plist中UrlTypes字段存在QQ的UrlScheme
+    EQQAPI_ERROR_USER_NOT_AGREED_AUTHORIZATION       = 30001,   // 用户未同意隐私协议,用户同意隐私协议后,需要设置[TencentOAuth setIsUserAgreedAuthorization:YES];
 };
 
 #pragma mark - QQApiObject(分享对象类型)
 
 // QQApiObject control flags
 typedef NS_ENUM(NSUInteger,kQQAPICtrlFlag) {
-    kQQAPICtrlFlagQZoneShareOnStart = 0x01,
-    kQQAPICtrlFlagQZoneShareForbid = 0x02, //屏蔽好友选择器上的空间入口
-    kQQAPICtrlFlagQQShare = 0x04,
-    kQQAPICtrlFlagQQShareFavorites = 0x08, //收藏
-    kQQAPICtrlFlagQQShareDataline = 0x10,  //数据线
-    kQQAPICtrlFlagQQShareEnableArk = 0x20, //支持ARK
-    kQQAPICtrlFlagQQShareEnableMiniProgram = 0x40, //支持小程序
+    kQQAPICtrlFlagQZoneShareOnStart         = 0x01,
+    kQQAPICtrlFlagQZoneShareForbid          = 0x02, //屏蔽好友选择器上的空间入口
+    kQQAPICtrlFlagQQShare                   = 0x04,
+    kQQAPICtrlFlagQQShareFavorites          = 0x08, //收藏
+    kQQAPICtrlFlagQQShareDataline           = 0x10, //数据线
+    kQQAPICtrlFlagQQShareEnableArk          = 0x20, //支持ARK
+    kQQAPICtrlFlagQQShareEnableMiniProgram  = 0x40, //支持小程序
 };
 
 // 分享到QQ或TIM
@@ -61,10 +63,10 @@
 
 //小程序的类型
 typedef NS_ENUM(NSUInteger, MiniProgramType) {
-    MiniProgramType_Develop=0,  // 开发版
-    MiniProgramType_Test=1,     // 测试版
-    MiniProgramType_Online=3,   // 正式版,默认
-    MiniProgramType_Preview=4,  // 预览版
+    MiniProgramType_Develop = 0,    // 开发版
+    MiniProgramType_Test    = 1,    // 测试版
+    MiniProgramType_Online  = 3,    // 正式版,默认
+    MiniProgramType_Preview = 4,    // 预览版
 };
 
 /// 打印回调的block
@@ -74,10 +76,14 @@
 /** \brief 所有在QQ及插件间发送的数据对象的根类。
  */
 __attribute__((visibility("default"))) @interface QQApiObject : NSObject
-@property(nonatomic, retain) NSString* title; ///< 标题,最长128个字符
-@property(nonatomic, retain) NSString* description; ///<简要描述,最长512个字符
-@property(nonatomic, retain) NSString* universalLink; ///(>=3.3.7)支持第三方传入在互联开放平台注册的universallink
-@property(nonatomic, assign) uint64_t cflag;
+
+@property (nonatomic, copy) NSString *title; ///< 标题,最长128个字符
+@property (nonatomic, copy) NSString *description; ///<简要描述,最长512个字符
+@property (nonatomic, copy) NSString *universalLink; ///(>=3.3.7)支持第三方传入在互联开放平台注册的universallink
+@property (nonatomic, assign) uint64_t cflag;
+//353新增两个字断给游戏侧使用,对齐微信sdk
+@property (nonatomic, copy) NSString *tagName;
+@property (nonatomic, copy) NSString *messageExt;
 /*
  * 分享到QQ/TIM
  * SDK根据是否安装对应客户端进行判断,判断顺序:QQ > TIM
@@ -90,8 +96,8 @@
 /** \brief 支持Ark的根类。
  */
 __attribute__((visibility("default"))) @interface ArkObject : NSObject
-@property(nonatomic,retain) NSString* arkData; ///< 显示Ark所需的数据,json串,长度暂不限制
-@property(nonatomic,assign) QQApiObject* qqApiObject; ///<原有老版本的QQApiObject
+@property (nonatomic, copy) NSString *arkData; ///< 显示Ark所需的数据,json串,长度暂不限制
+@property (nonatomic,assign) QQApiObject* qqApiObject; ///<原有老版本的QQApiObject
 
 - (id)initWithData:(NSString *)arkData qqApiObject:(QQApiObject*)qqApiObject;
 + (id)objectWithData:(NSString *)arkData qqApiObject:(QQApiObject*)qqApiObject;
@@ -100,24 +106,24 @@
 #pragma mark QQ小程序
 //分享小程序消息 - QQ 8.0.8
 __attribute__((visibility("default"))) @interface QQApiMiniProgramObject : NSObject
-@property(nonatomic,retain) QQApiObject* qqApiObject; //原有老版本的QQApiObject
-@property(nonatomic,retain) NSString* miniAppID; //必填,小程序的AppId(注:必须在QQ互联平台中,将该小程序与分享的App绑定)
-@property(nonatomic,retain) NSString* miniPath; //必填,小程序的展示路径
-@property(nonatomic,retain) NSString* webpageUrl; //必填,兼容低版本的网页链接
-@property(nonatomic,assign) MiniProgramType miniprogramType; //非必填,小程序的类型,默认正式版(3),可选测试版(1)、预览版(4)
+@property (nonatomic, strong) QQApiObject* qqApiObject; //原有老版本的QQApiObject
+@property (nonatomic, copy) NSString *miniAppID; //必填,小程序的AppId(注:必须在QQ互联平台中,将该小程序与分享的App绑定)
+@property (nonatomic, copy) NSString *miniPath; //必填,小程序的展示路径
+@property (nonatomic, copy) NSString *webpageUrl; //必填,兼容低版本的网页链接
+@property (nonatomic,assign) MiniProgramType miniprogramType; //非必填,小程序的类型,默认正式版(3),可选测试版(1)、预览版(4)
 @end
 
 //唤起小程序 - QQ 8.1.8
 __attribute__((visibility("default"))) @interface QQApiLaunchMiniProgramObject : QQApiObject
-@property(nonatomic,retain) NSString* miniAppID; //必填,小程序的AppId(注:必须在QQ互联平台中,将该小程序与分享的App绑定)
-@property(nonatomic,retain) NSString* miniPath; //小程序的展示路径,不填展示默认小程序首页
-@property(nonatomic,assign) MiniProgramType miniprogramType; //非必填,小程序的类型,默认正式版(3),可选测试版(1)、开发版(0)
+@property (nonatomic, copy) NSString *miniAppID; //必填,小程序的AppId(注:必须在QQ互联平台中,将该小程序与分享的App绑定)
+@property (nonatomic, copy) NSString *miniPath; //小程序的展示路径,不填展示默认小程序首页
+@property (nonatomic,assign) MiniProgramType miniprogramType; //非必填,小程序的类型,默认正式版(3),可选测试版(1)、开发版(0)
 @end
 
 //小程序唤起第三方 - SDK 3.3.9
 __attribute__((visibility("default"))) @interface QQApiMiniProgramLaunchObject : QQApiObject
-@property(nonatomic,copy) NSString* appParameter; //小程序带来的数据,透传
-+ (instancetype)newWithAppParameter:(NSString*)parameter;
+@property (nonatomic, copy) NSString *appParameter; //小程序带来的数据,透传
++ (instancetype)newWithAppParameter:(NSString *)parameter;
 @end
 
 // QQApiResultObject
@@ -134,19 +140,21 @@
  </TABLE>
  */
 __attribute__((visibility("default"))) @interface QQApiResultObject : QQApiObject
-@property(nonatomic,retain) NSString* error; ///<错误
-@property(nonatomic,retain) NSString* errorDescription; ///<错误描述
-@property(nonatomic,retain) NSString* extendInfo; ///<扩展信息
+@property (nonatomic, copy) NSString *error; ///<错误
+@property (nonatomic, copy) NSString *errorDescription; ///<错误描述
+@property (nonatomic, copy) NSString *extendInfo; ///<扩展信息
+@property (nonatomic, copy) NSDictionary *otherInfo; ///<其他扩展信息
 @end
 
 // QQApiTextObject
 /** \brief 文本对象
  */
 @interface QQApiTextObject : QQApiObject
-@property(nonatomic,retain)NSString* text; ///<文本内容,必填,最长1536个字符
+@property (nonatomic, copy)NSString *text; ///<文本内容,必填,最长1536个字符
 
--(id)initWithText:(NSString*)text; ///<初始化方法
-+(id)objectWithText:(NSString*)text;///<工厂方法,获取一个QQApiTextObject对象.
+- (id)initWithText:(NSString *)text; ///<初始化方法
++ (id)objectWithText:(NSString *)text;///<工厂方法,获取一个QQApiTextObject对象.
+
 @end
 
 // QQApiURLObject
@@ -166,31 +174,34 @@
  URL地址所指向的目标类型.
  @note 参见QQApi.h 中的 QQApiURLTargetType 定义.
  */
-@property(nonatomic)QQApiURLTargetType targetContentType;
+@property (nonatomic)QQApiURLTargetType targetContentType;
 
-@property(nonatomic,retain)NSURL* url; ///<URL地址,必填,最长512个字符
-@property(nonatomic,retain)NSData* previewImageData;///<预览图像数据,最大1M字节
-@property(nonatomic, retain) NSURL *previewImageURL;    ///<预览图像URL **预览图像数据与预览图像URL可二选一
+@property (nonatomic, strong) NSURL *url; ///<URL地址,必填,最长512个字符
+@property (nonatomic, copy) NSData *previewImageData;///<预览图像数据,最大1M字节
+@property (nonatomic, strong) NSURL *previewImageURL;    ///<预览图像URL **预览图像数据与预览图像URL可二选一
 
 /**
  初始化方法
  */
--(id)initWithURL:(NSURL*)url title:(NSString*)title description:(NSString*)description previewImageData:(NSData*)data targetContentType:(QQApiURLTargetType)targetContentType;
--(id)initWithURL:(NSURL*)url title:(NSString*)title description:(NSString*)description previewImageURL:(NSURL*)previewURL targetContentType:(QQApiURLTargetType)targetContentType;
+- (id)initWithURL:(NSURL *)url title:(NSString *)title description:(NSString *)description previewImageData:(NSData *)data targetContentType:(QQApiURLTargetType)targetContentType;
+
+- (id)initWithURL:(NSURL *)url title:(NSString *)title description:(NSString *)description previewImageURL:(NSURL *)previewURL targetContentType:(QQApiURLTargetType)targetContentType;
 /**
  工厂方法,获取一个QQApiURLObject对象
  */
-+(id)objectWithURL:(NSURL*)url title:(NSString*)title description:(NSString*)description previewImageData:(NSData*)data targetContentType:(QQApiURLTargetType)targetContentType;
-+(id)objectWithURL:(NSURL*)url title:(NSString*)title description:(NSString*)description previewImageURL:(NSURL*)previewURL targetContentType:(QQApiURLTargetType)targetContentType;
++ (id)objectWithURL:(NSURL *)url title:(NSString *)title description:(NSString *)description previewImageData:(NSData *)data targetContentType:(QQApiURLTargetType)targetContentType;
+
++ (id)objectWithURL:(NSURL *)url title:(NSString *)title description:(NSString *)description previewImageURL:(NSURL *)previewURL targetContentType:(QQApiURLTargetType)targetContentType;
+
 @end
 
 // QQApiExtendObject
 /** @brief 扩展数据类型
  */
 @interface QQApiExtendObject : QQApiObject
-@property(nonatomic,retain) NSData* data;///<具体数据内容,必填,最大5M字节
-@property(nonatomic,retain) NSData* previewImageData;///<预览图像,最大1M字节
-@property(nonatomic,retain) NSArray* imageDataArray;///图片数组(多图暂只支持分享到手机QQ收藏功能)
+@property (nonatomic, copy) NSData *data;///<具体数据内容,必填,最大5M字节
+@property (nonatomic, copy) NSData *previewImageData;///<预览图像,最大1M字节
+@property (nonatomic, copy) NSArray *imageDataArray;///图片数组(多图暂只支持分享到手机QQ收藏功能)
 
 /**
  初始化方法
@@ -199,7 +210,7 @@
  @param title 标题
  @param description 此对象,分享的描述
  */
-- (id)initWithData:(NSData*)data previewImageData:(NSData*)previewImageData title:(NSString*)title description:(NSString*)description;
+- (id)initWithData:(NSData *)data previewImageData:(NSData *)previewImageData title:(NSString *)title description:(NSString *)description;
 
 /**
  初始化方法
@@ -208,7 +219,8 @@
  @param description 此对象,分享的描述
  @param imageDataArray 发送的多张图片队列
  */
-- (id)initWithData:(NSData *)data previewImageData:(NSData*)previewImageData title:(NSString *)title description:(NSString *)description imageDataArray:(NSArray *)imageDataArray;
+- (id)initWithData:(NSData *)data previewImageData:(NSData *)previewImageData title:(NSString *)title description:(NSString *)description imageDataArray:(NSArray *)imageDataArray;
+
 
 /**
  helper方法获取一个autorelease的<code>QQApiExtendObject</code>对象
@@ -219,8 +231,7 @@
  @return
  一个自动释放的<code>QQApiExtendObject</code>实例
  */
-+ (id)objectWithData:(NSData*)data previewImageData:(NSData*)previewImageData title:(NSString*)title description:(NSString*)description;
-
++ (id)objectWithData:(NSData *)data previewImageData:(NSData *)previewImageData title:(NSString *)title description:(NSString *)description;
 /**
  helper方法获取一个autorelease的<code>QQApiExtendObject</code>对象
  @param data 数据内容
@@ -231,7 +242,8 @@
  @return
  一个自动释放的<code>QQApiExtendObject</code>实例
  */
-+ (id)objectWithData:(NSData*)data previewImageData:(NSData*)previewImageData title:(NSString*)title description:(NSString*)description imageDataArray:(NSArray*)imageDataArray;
++ (id)objectWithData:(NSData *)data previewImageData:(NSData *)previewImageData title:(NSString *)title description:(NSString *)description imageDataArray:(NSArray *)imageDataArray;
+
 
 @end
 
@@ -265,7 +277,13 @@
  @"ret=-17&error_des=account diff"//账号不一致
  */
 @interface QQApiVideoForQQAvatarObject : QQApiExtendObject
-@property(nonatomic, retain) NSString *assetURL;
+@property (nonatomic, copy) NSString *assetURL;
+@end
+
+
+
+//QQApiAuthObject 用于拉起手Q的授权详情页
+@interface QQApiAuthObject : QQApiObject
 @end
 
 // QQApiImageArrayForFaceCollectionObject
@@ -274,13 +292,13 @@
  */
 @interface QQApiImageArrayForFaceCollectionObject : QQApiObject
 
-@property(nonatomic,retain) NSArray* imageDataArray;///图片数组
+@property (nonatomic, copy) NSArray *imageDataArray;///图片数组
 
 /**
  初始化方法
  @param imageDataArray 图片数组
  */
-- (id)initWithImageArrayData:(NSArray*)imageDataArray;
+- (id)initWithImageArrayData:(NSArray *)imageDataArray;
 /**
  helper方法获取一个autorelease的<code>QQApiObject</code>对象
  @param imageDataArray 发送的多张图片队列
@@ -297,8 +315,8 @@
  */
 @interface QQApiImageArrayForQZoneObject : QQApiObject
 
-@property(nonatomic,retain) NSArray* imageDataArray;///图片数组
-@property(nonatomic,retain) NSDictionary* extMap; // 扩展字段
+@property (nonatomic, copy) NSArray *imageDataArray;///图片数组
+@property (nonatomic, copy) NSDictionary *extMap; // 扩展字段
 
 /**
  初始化方法
@@ -306,7 +324,7 @@
  @param title 写说说的内容,可以为空
  @param extMap 扩展字段
  */
-- (id)initWithImageArrayData:(NSArray*)imageDataArray title:(NSString*)title extMap:(NSDictionary *)extMap;
+- (id)initWithImageArrayData:(NSArray *)imageDataArray title:(NSString *)title extMap:(NSDictionary *)extMap;
 
 /**
  helper方法获取一个autorelease的<code>QQApiExtendObject</code>对象
@@ -316,7 +334,7 @@
  @return
  一个自动释放的<code>QQApiExtendObject</code>实例
  */
-+ (id)objectWithimageDataArray:(NSArray*)imageDataArray title:(NSString*)title extMap:(NSDictionary *)extMap;
++ (id)objectWithimageDataArray:(NSArray *)imageDataArray title:(NSString *)title extMap:(NSDictionary *)extMap;
 
 @end
 
@@ -329,17 +347,17 @@
  */
 @interface QQApiVideoForQZoneObject : QQApiObject
 
-@property(nonatomic, retain) NSString *assetURL;
-@property(nonatomic,retain) NSDictionary* extMap; // 扩展字段
-@property(nonatomic,retain) NSData* videoData;
+@property (nonatomic, copy) NSString *assetURL;
+@property (nonatomic, copy) NSDictionary *extMap; // 扩展字段
+@property (nonatomic, copy) NSData *videoData;
 
-- (id)initWithAssetURL:(NSString*)assetURL title:(NSString*)title extMap:(NSDictionary *)extMap;
+- (id)initWithAssetURL:(NSString *)assetURL title:(NSString *)title extMap:(NSDictionary *)extMap;
 
-+ (id)objectWithAssetURL:(NSString*)assetURL title:(NSString*)title extMap:(NSDictionary *)extMap;
++ (id)objectWithAssetURL:(NSString *)assetURL title:(NSString *)title extMap:(NSDictionary *)extMap;
 
-- (id)initWithVideoData:(NSData*)videoData title:(NSString*)title extMap:(NSDictionary *)extMap;
+- (id)initWithVideoData:(NSData *)videoData title:(NSString *)title extMap:(NSDictionary *)extMap;
 
-+ (id)objectWithVideoData:(NSData*)videoData title:(NSString*)title extMap:(NSDictionary *)extMap;
++ (id)objectWithVideoData:(NSData *)videoData title:(NSString *)title extMap:(NSDictionary *)extMap;
 
 @end
 
@@ -350,7 +368,7 @@
  */
 @interface QQApiWebImageObject : QQApiObject
 
-@property(nonatomic, retain) NSURL *previewImageURL;    ///<预览图像URL
+@property (nonatomic, strong) NSURL *previewImageURL;    ///<预览图像URL
 
 /**
  初始化方法
@@ -358,7 +376,7 @@
  @param title 标题
  @param description 此对象,分享的描述
  */
-- (id)initWithPreviewImageURL:(NSURL*)previewImageURL title:(NSString*)title description:(NSString*)description;
+- (id)initWithPreviewImageURL:(NSURL *)previewImageURL title:(NSString *)title description:(NSString *)description;
 
 /**
  helper方法获取一个autorelease的<code>QQApiWebImageObject</code>对象
@@ -366,7 +384,7 @@
  @param title 标题
  @param description 此对象,分享的描述
  */
-+ (id)objectWithPreviewImageURL:(NSURL*)previewImageURL title:(NSString*)title description:(NSString*)description;
++ (id)objectWithPreviewImageURL:(NSURL *)previewImageURL title:(NSString *)title description:(NSString *)description;
 
 @end
 
@@ -375,11 +393,12 @@
 /** @brief 本地文件对象(暂只支持分享到手机QQ数据线功能)
  用于分享文件内容的对象,是一个指定为文件类型的<code>QQApiExtendObject</code>
  */
-@interface QQApiFileObject : QQApiExtendObject
-{
-    NSString* _fileName;
+@interface QQApiFileObject : QQApiExtendObject {
+    NSString *_fileName;
 }
-@property(nonatomic, retain)NSString* fileName;
+
+@property (nonatomic, copy)NSString *fileName;
+
 @end
 
 // QQApiAudioObject
@@ -388,7 +407,7 @@
  */
 @interface QQApiAudioObject : QQApiURLObject
 
-@property (nonatomic, retain) NSURL *flashURL;      ///<音频URL地址,最长512个字符
+@property (nonatomic, strong) NSURL *flashURL;      ///<音频URL地址,最长512个字符
 
 /**
  获取一个autorelease的<code>QQApiAudioObject</code>
@@ -398,7 +417,7 @@
  @param data 分享内容的预览图像
  @note 如果url为空,调用<code>QQApi#sendMessage:</code>时将返回FALSE
  */
-+(id)objectWithURL:(NSURL*)url title:(NSString*)title description:(NSString*)description previewImageData:(NSData*)data;
++ (id)objectWithURL:(NSURL *)url title:(NSString *)title description:(NSString *)description previewImageData:(NSData *)data;
 
 /**
  获取一个autorelease的<code>QQApiAudioObject</code>
@@ -408,7 +427,7 @@
  @param previewURL 分享内容的预览图像URL
  @note 如果url为空,调用<code>QQApi#sendMessage:</code>时将返回FALSE
  */
-+(id)objectWithURL:(NSURL*)url title:(NSString*)title description:(NSString*)description previewImageURL:(NSURL*)previewURL;
++ (id)objectWithURL:(NSURL *)url title:(NSString *)title description:(NSString *)description previewImageURL:(NSURL *)previewURL;
 
 @end
 
@@ -421,7 +440,7 @@
  */
 @interface QQApiVideoObject : QQApiURLObject
 
-@property (nonatomic, retain) NSURL *flashURL;      ///<视频URL地址,最长512个字符
+@property (nonatomic, strong) NSURL *flashURL;      ///<视频URL地址,最长512个字符
 
 /**
  获取一个autorelease的<code>QQApiVideoObject</code>
@@ -431,8 +450,7 @@
  @param data 分享内容的预览图像
  @note 如果url为空,调用<code>QQApi#sendMessage:</code>时将返回FALSE
  */
-+(id)objectWithURL:(NSURL*)url title:(NSString*)title description:(NSString*)description previewImageData:(NSData*)data;
-
++ (id)objectWithURL:(NSURL *)url title:(NSString *)title description:(NSString *)description previewImageData:(NSData *)data;
 /**
  获取一个autorelease的<code>QQApiVideoObject</code>
  @param url 视频内容的目标URL
@@ -441,7 +459,7 @@
  @param previewURL 分享内容的预览图像URL
  @note 如果url为空,调用<code>QQApi#sendMessage:</code>时将返回FALSE
  */
-+(id)objectWithURL:(NSURL*)url title:(NSString*)title description:(NSString*)description previewImageURL:(NSURL*)previewURL;
++ (id)objectWithURL:(NSURL *)url title:(NSString *)title description:(NSString *)description previewImageURL:(NSURL *)previewURL;
 
 @end
 
@@ -458,8 +476,7 @@
  @param data 分享内容的预览图像
  @note 如果url为空,调用<code>QQApi#sendMessage:</code>时将返回FALSE
  */
-+(id)objectWithURL:(NSURL*)url title:(NSString*)title description:(NSString*)description previewImageData:(NSData*)data;
-
++ (id)objectWithURL:(NSURL *)url title:(NSString *)title description:(NSString *)description previewImageData:(NSData *)data;
 /**
  获取一个autorelease的<code>QQApiNewsObject</code>
  @param url 视频内容的目标URL
@@ -468,7 +485,7 @@
  @param previewURL 分享内容的预览图像URL
  @note 如果url为空,调用<code>QQApi#sendMessage:</code>时将返回FALSE
  */
-+(id)objectWithURL:(NSURL*)url title:(NSString*)title description:(NSString*)description previewImageURL:(NSURL*)previewURL;
++ (id)objectWithURL:(NSURL *)url title:(NSString *)title description:(NSString *)description previewImageURL:(NSURL *)previewURL;
 
 @end
 
@@ -481,19 +498,19 @@
 /**
  预定义的界面布局类型
  */
-@property(nonatomic,assign) unsigned int layoutType;
-@property(nonatomic,assign) NSData* previewImageData;///<预览图
-@property(nonatomic,retain) NSArray* textArray;///<文本列表
-@property(nonatomic,retain) NSArray* pictureDataArray;///<图片列表
-+(id)objectWithLayoutType:(int)layoutType textArray:(NSArray*)textArray pictureArray:(NSArray*)pictureArray previewImageData:(NSData*)data;
+@property (nonatomic,assign) unsigned int layoutType;
+@property (nonatomic, copy) NSData *previewImageData;///<预览图
+@property (nonatomic, copy) NSArray *textArray;///<文本列表
+@property (nonatomic, copy) NSArray *pictureDataArray;///<图片列表
++ (id)objectWithLayoutType:(int)layoutType textArray:(NSArray *)textArray pictureArray:(NSArray *)pictureArray previewImageData:(NSData *)data;
 /**
  将一个NSDictionary对象转化为QQApiCommomContentObject,如果无法转换,则返回空
  */
-+(id)objectWithDictionary:(NSDictionary*)dic;
--(NSDictionary*)toDictionary;
++ (id)objectWithDictionary:(NSDictionary *)dic;
+- (NSDictionary *)toDictionary;
 @end
 
-// QQApiExtraServiceObject;
+// QQApiExtraServiceObject; 通用业务消息处理类(旧版,后续使用QQApiCommonServiceObject)
 /**
  @brief OpenSDK扩展支持的服务,通用接口,后续会扩充能力
  @param serviceID [必选] 扩展支持的服务类型ID,参考官方文档说明
@@ -503,13 +520,39 @@
  @note 该接口的使用须先登录
  */
 @interface QQApiExtraServiceObject : QQApiObject
-@property (nonatomic,retain) NSString* serviceID;
-@property (nonatomic,retain) NSString* openID;
-@property (nonatomic,retain) NSString* toUin;
-@property (nonatomic,retain) NSDictionary* extraInfo;
+@property (nonatomic, copy) NSString *serviceID;
+@property (nonatomic, copy) NSString *openID;
+@property (nonatomic, copy) NSString *toUin;
+@property (nonatomic, copy) NSDictionary *extraInfo;
 
 - (id)initWithOpenID:(NSString *)openID serviceID:(NSString *)serviceID;
 + (id)objecWithOpenID:(NSString *)openID serviceID:(NSString *)serviceID;
+@end
+
+
+/**
+ * QQApiCommonServiceObject; 通用业务消息处理类(新),可以适用所有的需要通过互联SDK发消息给手Q的业务去处理。
+ * 使用前需要申请serviceID,每个业务功能有个对应的serviceID
+ */
+@interface QQApiCommonServiceObject : QQApiObject
+
+// [必选] 授权登录后对该用户的唯一标识
+@property (nonatomic, copy) NSString *openID;
+
+// [必选] 扩展支持的服务类型ID,参考官方文档说明
+@property (nonatomic, copy) NSString *serviceID;
+
+// [可选] 扩展字段,由调用方跟具体的业务方协定具体的字段
+@property (nonatomic, copy) NSDictionary *extendInfo;
+
+- (instancetype)initWithOpenID:(NSString *)openID
+                     serviceID:(NSString *)serviceID
+                    extendInfo:(NSDictionary *)extendInfo;
+
++ (instancetype)objecWithOpenID:(NSString *)openID
+                      serviceID:(NSString *)serviceID
+                     extendInfo:(NSDictionary *)extendInfo;
+
 @end
 
 
@@ -519,10 +562,10 @@
 /** @brief 广告数据对象
  */
 @interface QQApiAdItem : NSObject
-@property(nonatomic,retain) NSString* title; ///<名称
-@property(nonatomic,retain) NSString* description;///<描述
-@property(nonatomic,retain) NSData* imageData;///<广告图片
-@property(nonatomic,retain) NSURL* target;///<广告目标链接
+@property (nonatomic, copy) NSString *title; ///<名称
+@property (nonatomic, copy) NSString *description;///<描述
+@property (nonatomic, copy) NSData *imageData;///<广告图片
+@property (nonatomic, strong) NSURL *target;///<广告目标链接
 @end
 
 
@@ -532,20 +575,20 @@
  QQApi请求消息类型
  */
 typedef NS_ENUM(NSUInteger, QQApiInterfaceReqType) {
-    EGETMESSAGEFROMQQREQTYPE = 0,   ///< 手Q -> 第三方应用,请求第三方应用向手Q发送消息
-    ESENDMESSAGETOQQREQTYPE = 1,    ///< 第三方应用 -> 手Q,第三方应用向手Q分享消息
-    ESHOWMESSAGEFROMQQREQTYPE = 2,   ///< 手Q -> 第三方应用,请求第三方应用展现消息中的数据
-    ESENDMESSAGEARKTOQQREQTYPE = 3,    ///< 第三方应用 -> 手Q,第三方应用向手Q分享Ark消息
-    ESENDMESSAGE_MINI_TOQQREQTYPE = 4  ///< 第三方应用 -> 手Q,第三方应用向手Q分享小程序消息
+    EGETMESSAGEFROMQQREQTYPE      = 0,  /// < 手Q -> 第三方应用,请求第三方应用向手Q发送消息
+    ESENDMESSAGETOQQREQTYPE       = 1,  /// < 第三方应用 -> 手Q,第三方应用向手Q分享消息
+    ESHOWMESSAGEFROMQQREQTYPE     = 2,  /// < 手Q -> 第三方应用,请求第三方应用展现消息中的数据
+    ESENDMESSAGEARKTOQQREQTYPE    = 3,  /// < 第三方应用 -> 手Q,第三方应用向手Q分享Ark消息
+    ESENDMESSAGE_MINI_TOQQREQTYPE = 4   /// < 第三方应用 -> 手Q,第三方应用向手Q分享小程序消息
 };
 
 /**
  QQApi应答消息类型
  */
 typedef NS_ENUM(NSUInteger, QQApiInterfaceRespType) {
-    ESHOWMESSAGEFROMQQRESPTYPE = 0, ///< 第三方应用 -> 手Q,第三方应用应答消息展现结果
-    EGETMESSAGEFROMQQRESPTYPE = 1,  ///< 第三方应用 -> 手Q,第三方应用回应发往手Q的消息
-    ESENDMESSAGETOQQRESPTYPE = 2    ///< 手Q -> 第三方应用,手Q应答处理分享消息的结果
+    ESHOWMESSAGEFROMQQRESPTYPE  = 0,    /// < 第三方应用 -> 手Q,第三方应用应答消息展现结果
+    EGETMESSAGEFROMQQRESPTYPE   = 1,    /// < 第三方应用 -> 手Q,第三方应用回应发往手Q的消息
+    ESENDMESSAGETOQQRESPTYPE    = 2     /// < 手Q -> 第三方应用,手Q应答处理分享消息的结果
 };
 
 /**
@@ -564,16 +607,16 @@
 @interface QQBaseResp : NSObject
 
 /** 请求处理结果 */
-@property (nonatomic, copy) NSString* result;
+@property (nonatomic, copy) NSString *result;
 
 /** 具体错误描述信息 */
-@property (nonatomic, copy) NSString* errorDescription;
+@property (nonatomic, copy) NSString *errorDescription;
 
 /** 应答消息类型,参见\ref QQApiInterfaceRespType */
 @property (nonatomic, assign) int type;
 
 /** 扩展信息 */
-@property (nonatomic, assign) NSString* extendInfo;
+@property (nonatomic, copy) NSString *extendInfo;
 
 @end
 
@@ -609,20 +652,23 @@
  * @param miniMessage 小程序实例对象
  * @return 消息请求实例
  */
-+(SendMessageToQQReq*) reqWithMiniContent:(QQApiMiniProgramObject *)miniMessage;
++ (SendMessageToQQReq *)reqWithMiniContent:(QQApiMiniProgramObject *)miniMessage;
 /** 具体分享消息 */
-@property (nonatomic, retain) QQApiObject *message;
+@property (nonatomic, strong) QQApiObject *apiObject;
 
 /** 支持Ark的具体分享消息 */
-@property (nonatomic, retain) ArkObject *arkMessage;
+@property (nonatomic, strong) ArkObject *arkObject;
 /** 支持小程序的具体分享消息 */
-@property (nonatomic, retain) QQApiMiniProgramObject *miniMessage;
+@property (nonatomic, strong) QQApiMiniProgramObject *miniProgramObject;
 @end
 
 /**
  SendMessageToQQResp应答帮助类
  */
 @interface SendMessageToQQResp : QQBaseResp
+
+/** 其他扩展信息 */
+@property (nonatomic, copy) NSDictionary *otherInfo;
 
 /**
  创建一个SendMessageToQQResp应答实例
@@ -631,7 +677,9 @@
  \param extendInfo 扩展信息
  \return 新创建的SendMessageToQQResp应答实例
  */
-+ (SendMessageToQQResp *)respWithResult:(NSString *)result errorDescription:(NSString *)errDesp extendInfo:(NSString*)extendInfo;
++ (SendMessageToQQResp *)respWithResult:(NSString *)result errorDescription:(NSString *)errDesp extendInfo:(NSString *)extendInfo;
+
++ (SendMessageToQQResp *) respWithResult:(NSString *)result errorDescription:(NSString *)errDesp extendInfo:(NSString *)extendInfo otherInfo:(NSDictionary *)otherInfo;
 
 @end
 
@@ -648,7 +696,57 @@
 + (ShowMessageFromQQReq *)reqWithContent:(QQApiObject *)message;
 
 /** 具体待展现消息 */
-@property (nonatomic, retain) QQApiObject *message;
+@property (nonatomic, strong) QQApiObject *message;
+
+@end
+
+#pragma mark --一键加群&建群&解绑群
+// QQApiThirdAppBindGroupObject
+/** \brief 第三方app绑定群
+ */
+@interface QQApiThirdAppBindGroupObject : QQApiObject
+
+@property (nonatomic, copy) NSString *accessToken;
+@property (nonatomic, copy) NSString *payToken;
+@property (nonatomic, copy) NSString *pfkey;
+@property (nonatomic, copy) NSString *unionID;
+@property (nonatomic, copy) NSString *appDisplayName;
+
+- (id)initWithAccessToken:(NSString *)accessToken payToken:(NSString *)payToken pfkey:(NSString *)pfkey unionID:(NSString *)unionID appDisplayName:(NSString *)appDisplayName; ///<初始化方法
++ (id)objectWithAccessToken:(NSString *)accessToken payToken:(NSString *)payToken pfkey:(NSString *)pfkey unionID:(NSString *)unionID appDisplayName:(NSString *)appDisplayName; ///<工厂方法,获取一个QQApiThirdAppBindGroupObject对象.
+
+@end
+
+// QQApiThirdAppJoinGroupObject
+/** \brief 第三方app加入群
+ */
+@interface QQApiThirdAppJoinGroupObject : QQApiObject
+
+@property (nonatomic, copy) NSString *accessToken;
+@property (nonatomic, copy) NSString *payToken;
+@property (nonatomic, copy) NSString *pfkey;
+@property (nonatomic, copy) NSString *unionID;
+
+- (id)initWithAccessToken:(NSString *)accessToken payToken:(NSString *)payToken pfkey:(NSString *)pfkey unionID:(NSString *)unionID; ///<初始化方法
+
++ (id)objectWithAccessToken:(NSString *)accessToken payToken:(NSString *)payToken pfkey:(NSString *)pfkey unionID:(NSString *)unionID; ///<工厂方法,获取一个QQApiThirdAppJoinGroupObject对象.
+
+@end
+
+// QQApiThirdAppUnBindGroupObject
+/** \brief 第三方app解绑群
+ */
+@interface QQApiThirdAppUnBindGroupObject : QQApiObject
+
+@property (nonatomic, copy) NSString *accessToken;
+@property (nonatomic, copy) NSString *openId;
+@property (nonatomic, copy) NSString *payToken;
+@property (nonatomic, copy) NSString *pfkey;
+@property (nonatomic, copy) NSString *unionID;
+
+- (id)initWithAccessToken:(NSString *)accessToken payToken:(NSString *)payToken pfkey:(NSString *)pfkey unionID:(NSString *)unionID openId:(NSString *)openId appId:(NSString *)appId; ///<初始化方法
+
++ (id)objectWithAccessToken:(NSString *)accessToken payToken:(NSString *)payToken pfkey:(NSString *)pfkey unionID:(NSString *)unionID openId:(NSString *)openId appId:(NSString *)appId; ///<工厂方法,获取一个QQApiThirdAppBindGroupObject对象.
 
 @end
 
diff --git a/frameworks/TencentOpenAPI.framework/Headers/TencentOAuth.h b/frameworks/TencentOpenAPI.framework/Headers/TencentOAuth.h
index 982edaa..c63ad04 100644
--- a/frameworks/TencentOpenAPI.framework/Headers/TencentOAuth.h
+++ b/frameworks/TencentOpenAPI.framework/Headers/TencentOAuth.h
@@ -7,7 +7,7 @@
 ///
 
 #import <UIKit/UIKit.h>
-#import "sdkdef.h"
+#import <TencentOpenAPI/SDKDef.h>
 
 @protocol TencentSessionDelegate;
 @protocol TencentLoginDelegate;
@@ -37,57 +37,58 @@
  */
 @interface TencentOAuth : NSObject
 {
-    NSMutableDictionary* _apiRequests;
-	NSString* _accessToken;
-	NSDate* _expirationDate;
+    NSMutableDictionary *_apiRequests;
+	NSString *_accessToken;
+	NSDate *_expirationDate;
 	id<TencentSessionDelegate> _sessionDelegate;
-	NSString* _localAppId;
-	NSString* _openId;
-	NSString* _redirectURI;
-	NSArray* _permissions;
+	NSString *_localAppId;
+	NSString *_openId;
+	NSString *_redirectURI;
+	NSArray *_permissions;
 }
 
 /** Access Token凭证,用于后续访问各开放接口 */
-@property(nonatomic, copy) NSString* accessToken;
+@property(nonatomic, copy) NSString *accessToken;
 
 /** Access Token的失效期 */
-@property(nonatomic, copy) NSDate* expirationDate;
+@property(nonatomic, copy) NSDate *expirationDate;
 
 /** 已实现的开放接口的回调委托对象 */
-@property(nonatomic, assign) id<TencentSessionDelegate> sessionDelegate;
+@property(nonatomic, weak) id<TencentSessionDelegate> sessionDelegate;
 
 /** 第三方应用在开发过程中设置的URLSchema,用于浏览器登录后后跳到第三方应用 */
-@property(nonatomic, copy) NSString* localAppId;
+@property(nonatomic, copy) NSString *localAppId;
 
 /** 用户授权登录后对该用户的唯一标识 */
-@property(nonatomic, copy) NSString* openId;
+@property(nonatomic, copy) NSString *openId;
 
 /** 用户登录成功过后的跳转页面地址 */
-@property(nonatomic, copy) NSString* redirectURI;
+@property(nonatomic, copy) NSString *redirectURI;
 
 /** 第三方应用在互联开放平台申请的appID */
-@property(nonatomic, retain) NSString* appId;
+@property(nonatomic, retain) NSString *appId;
 
 /** 第三方应用在互联开放平台注册的UniversalLink */
-@property(nonatomic, retain) NSString* universalLink;
+@property(nonatomic, retain) NSString *universalLink;
 
 /** 主要是互娱的游戏设置uin */
-@property(nonatomic, retain) NSString* uin;
+@property(nonatomic, retain) NSString *uin;
 
 /** 主要是互娱的游戏设置鉴定票据 */
-@property(nonatomic, retain) NSString* skey;
+@property(nonatomic, retain) NSString *skey;
 
 /** 登陆透传的数据 */
-@property(nonatomic, copy) NSDictionary* passData;
+@property(nonatomic, copy) NSDictionary *passData;
 
 /** 授权方式(Client Side Token或者Server Side Code) */
 @property(nonatomic, assign) TencentAuthMode authMode;
 
 /** union id */
-@property(nonatomic, retain) NSString* unionid;
+@property(nonatomic, retain) NSString *unionid;
 
 /** 第三方在授权登录/分享 时选择 QQ,还是TIM 。在授权前一定要指定其中一个类型*/
 @property(nonatomic, assign) TencentAuthShareType authShareType;
+
 /**
  * 获取上次登录得到的token
  *
@@ -122,14 +123,14 @@
  * \return 返回sdk版本号
  **/
 
-+ (NSString*)sdkVersion;
++ (NSString *)sdkVersion;
 
 /**
  * 用来获得当前sdk的小版本号
  * \return 返回sdk小版本号
  **/
 
-+ (NSString*)sdkSubVersion;
++ (NSString *)sdkSubVersion;
 
 /**
  * 用来获得当前sdk的是否精简版
@@ -192,6 +193,21 @@
            delegate:(id<TencentSessionDelegate>)delegate;
 
 /**
+ * 设置用户是否已经授权同意授权隐私协议,在主体应用中,用户同意授权隐私协议后再初始化互联SDK,默认未同意授权
+ * 注意:如未同意授权隐私协议,则互联SDK的所有功能都无法使用,包括初始化!!!
+ * 从3.5.7版本开始支持该方法
+ *
+ * @param isAgreedAuthorization 是否已经授权,isAgreedAuthorization=YES, 表示已经同意授权;isAgreedAuthorization=NO,表示未同意授权,互联SDK的所有功能都无法使用
+ */
++ (void)setIsUserAgreedAuthorization:(BOOL)isUserAgreedAuthorization;
+
+/**
+ * 获取当前用户是否已经同意授权隐私协议
+ * 从3.5.7版本开始支持该方法
+ */
++ (BOOL)isUserAgreedAuthorization;
+
+/**
  * 判断用户手机上是否安装手机QQ
  * \return YES:安装 NO:没安装
  *
diff --git a/frameworks/TencentOpenAPI.framework/Headers/TencentOpenApiUmbrellaHeader.h b/frameworks/TencentOpenAPI.framework/Headers/TencentOpenApiUmbrellaHeader.h
index 9dbb5b9..6a8a10e 100644
--- a/frameworks/TencentOpenAPI.framework/Headers/TencentOpenApiUmbrellaHeader.h
+++ b/frameworks/TencentOpenAPI.framework/Headers/TencentOpenApiUmbrellaHeader.h
@@ -9,12 +9,14 @@
 #ifndef TencentOpenApiUmbrellaHeader_h
 #define TencentOpenApiUmbrellaHeader_h
 
+#import <Foundation/Foundation.h>
+
 FOUNDATION_EXPORT double StaticLibraryModuleVersionNumber;
 FOUNDATION_EXPORT const unsigned char StaticLibraryModuleVersionString[];
 
-#imoort "QQApiInterface.h"
+#import "QQApiInterface.h"
 #import "QQApiInterfaceObject.h"
-#import "sdkdef.h"
+#import "SDKDef.h"
 #import "TencentOAuth.h"
 
 
diff --git a/frameworks/TencentOpenAPI.framework/Headers/module.modulemap b/frameworks/TencentOpenAPI.framework/Headers/module.modulemap
index 579837e..d504d26 100644
--- a/frameworks/TencentOpenAPI.framework/Headers/module.modulemap
+++ b/frameworks/TencentOpenAPI.framework/Headers/module.modulemap
@@ -1,9 +1,4 @@
-framework module TencentOpenAPI {
-  header "QQApiInterface.h"
-  header "QQApiInterfaceObject.h"
-  header "TencentOAuth.h"
-  header "TencentOpenApiUmbrellaHeader.h"
-  header "sdkdef.h"
-
-  export *
+module TencentOpenApi{
+    umbrella header "TencentOpenApiUmbrellaHeader.h"
+    export *
 }
diff --git a/frameworks/TencentOpenAPI.framework/Headers/sdkdef.h b/frameworks/TencentOpenAPI.framework/Headers/sdkdef.h
index fc112a7..72d9a95 100644
--- a/frameworks/TencentOpenAPI.framework/Headers/sdkdef.h
+++ b/frameworks/TencentOpenAPI.framework/Headers/sdkdef.h
@@ -57,7 +57,7 @@
  *
  * APIResponse用于封装所有请求的返回结果,包括错误码、错误信息、原始返回数据以及返回数据的json格式字典
  */
-@interface APIResponse : NSObject<NSCoding> {
+@interface APIResponse : NSObject<NSSecureCoding> {
     int      _detailRetCode;
 	int		 _retCode;
 	int		 _seq;
@@ -248,6 +248,9 @@
 /** 设置头像图片过大 */
 FOUNDATION_EXTERN NSString * const TCOpenSDKErrorMsgUserHeadPicLarge;
 
+/** 用户未同意授权隐私协议 */
+FOUNDATION_EXPORT NSString * const TCOpenSDKErrorMsgUserNotAgreedAuthorization;
+
 ///@}
 
 /**
diff --git a/frameworks/TencentOpenAPI.framework/TencentOpenAPI b/frameworks/TencentOpenAPI.framework/TencentOpenAPI
index 9e5b70f..7a46969 100644
--- a/frameworks/TencentOpenAPI.framework/TencentOpenAPI
+++ b/frameworks/TencentOpenAPI.framework/TencentOpenAPI
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/Headers/WAQQImpl.h b/frameworks/WAQQImpl.framework/Headers/WAQQImpl.h
index 07ef866..b2a5cbd 100644
--- a/frameworks/WAQQImpl.framework/Headers/WAQQImpl.h
+++ b/frameworks/WAQQImpl.framework/Headers/WAQQImpl.h
@@ -15,6 +15,6 @@
 FOUNDATION_EXPORT const unsigned char WAQQImplVersionString[];
 
 // In this header, you should import all the public headers of your framework using statements like #import <WAQQImpl/PublicHeader.h>
-//time:2021/01/29 15:35 ver:2.2.0
+//time:2022/03/15 15:35 ver:2.5.0
 
 
diff --git a/frameworks/WAQQImpl.framework/Info.plist b/frameworks/WAQQImpl.framework/Info.plist
index 807c021..5c8c199 100644
--- a/frameworks/WAQQImpl.framework/Info.plist
+++ b/frameworks/WAQQImpl.framework/Info.plist
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/Info.plist b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/Info.plist
new file mode 100644
index 0000000..4a1632e
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/Info.plist
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel.png
new file mode 100755
index 0000000..ca93fe3
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel_hover.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel_hover.png
new file mode 100755
index 0000000..7dbc632
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/btn_cancel_hover.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/refresh.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/refresh.png
new file mode 100644
index 0000000..8738ff5
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/refresh.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/refresh@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/refresh@2x.png
new file mode 100644
index 0000000..b40c0af
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/refresh@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan.png
new file mode 100755
index 0000000..6c036c5
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan@2x.png
new file mode 100755
index 0000000..9f5a6ac
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_pengyouquan@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq.png
new file mode 100755
index 0000000..6bb555d
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq@2x.png
new file mode 100755
index 0000000..47b2a7b
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qq@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone.png
new file mode 100755
index 0000000..a0583d5
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone@2x.png
new file mode 100755
index 0000000..77bfc1d
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_qzone@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_safari.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_safari.png
new file mode 100644
index 0000000..8cb94ba
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_safari.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_safari@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_safari@2x.png
new file mode 100644
index 0000000..64c8a29
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_safari@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin.png
new file mode 100755
index 0000000..b761c06
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin@2x.png
new file mode 100755
index 0000000..bc2df83
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/share_weixin@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back.png
new file mode 100755
index 0000000..89ef3f1
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back@2x.png
new file mode 100755
index 0000000..03a49b7
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_back@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame.png
new file mode 100755
index 0000000..d03324e
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame@2x.png
new file mode 100755
index 0000000..48bc652
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backtogame@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward.png
new file mode 100755
index 0000000..da7806d
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward@2x.png
new file mode 100755
index 0000000..b5f8a4c
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_backward@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_for.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_for.png
new file mode 100644
index 0000000..acc433c
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_for.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_for@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_for@2x.png
new file mode 100644
index 0000000..1429464
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_for@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward.png
new file mode 100755
index 0000000..0ade455
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward@2x.png
new file mode 100755
index 0000000..e19646d
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_forward@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more.png
new file mode 100755
index 0000000..61cd374
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more@2x.png
new file mode 100755
index 0000000..24b6573
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_more@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_recommand.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_recommand.png
new file mode 100644
index 0000000..e5b1cbe
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_recommand.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_recommand@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_recommand@2x.png
new file mode 100644
index 0000000..cbd268f
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_recommand@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop.png
new file mode 100755
index 0000000..fb87477
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop@2x.png
new file mode 100755
index 0000000..9ae2038
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_stop@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg.png
new file mode 100755
index 0000000..0dca23f
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg@2x.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg@2x.png
new file mode 100755
index 0000000..5d5df6c
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/WebViewResources/webview_toolbg@2x.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/error.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/error.png
new file mode 100644
index 0000000..b0ce461
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/error.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/local.html b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/local.html
new file mode 100644
index 0000000..73f1a73
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/local.html
@@ -0,0 +1,73 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta http-equiv="X-UA-Compatible" content="IE=Edge">
+<meta charset="UTF-8">
+<title>社交渠道</title>
+<meta name="viewport" content="width=device-width,initial-scale=1.0, maximum-scale = 1.0,user-scalable=no" />
+<meta name="format-detection" content="telephone=no" />
+<meta name="apple-mobile-web-app-capable" content="yes" />
+<style>
+*{margin:0;padding:0}
+.header{text-align:center;height:44px;background:-webkit-gradient(linear,0 0,0 100%,from(#4c4c4c),to(#313131));border-top:#5b5b5b 1px solid;position:relative;line-height:44px}
+.header h1{color:#fff;font-weight:bold;font-size:20px}
+.header a{width:49px;height:29px;background-size:49px 29px;position:absolute;top:7px;display:block;text-indent:-999em;cursor:pointer}
+.header .back{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEkAAAAsCAYAAAApSpU1AAAFgElEQVR42u2bSWgsRRjH40XEg3rwIujBg6KCp4CH7AnZ933f9z0hK7kk8RCEhCwEMTmID81C8JIVQRJEfGQ5PEwOnpKDh+T0nomCGngolvUrpsaeYWbSnel5ODOv4Jfp/mrpqv9UffV1TyciwqYUGRn5keRjydeS7yWPgogfJOuSVsnrEXYn2ei7ku+Sk5NFZWWlaG1tFd3d3aK/vz9o6OnpES0tLaKoqEjIsfwu6bNToDzJbU1NjRgbGxPDw8NiYGAgqATSDA4OitHRUXXsEGvJDoEqJX8zcxCG2dPR0SHa2tqCkvb2dtHZ2Sl6e3vFyMiIKCwsRKgufwTKlTxFIKYqF2G6Njc3Bz2MA7EQTY7xRvLafQR6X/JHY2OjaoxGm5qaQgrEYlXk5OQgVJtVgV6W/FRRUaEEorFQE8goVFlZGSI9sCrS5wUFBaKrq0s1wmwKZZgMcsz7VgQqyszMVA4apRsaGkKe8vJyRHpoVqA3JL/U1dUpH4TKz0VyFegFybfEDuxmVK6vrw8LHD7JlEjdubm5aktEIGZTuFBaWnq3SLLAB0TUennV1taGFSUlJb5FkpkvcvNHQRw1lbj9CCfMiPQJy4ytngrV1dXPDEKMxcVFsbe390yv605xcbF3kWRGDPdlCMQMqqqq8gsCz5ubG7G7u+tiRwhscHJyIi4uLlQ5nW5vb8XU1JTXOlagntV+O250H3oS6BXJz3h2nBeFeQTiL4hA4lPb6DxCIA6Qh21jY0OJ46kd8km6jhm4BvWs9tlxk+tRpAcsMxw1BYk67eL4+Fh1Wp/TceO5GbRIVupwDepZ7a9HkaShOC0tTTlqBCKYshtCCX28s7Mjrq6uxMLCgld4bGGsTx2SlWsiEvWs9pVbMBeRHFH1NQqyxFhugUYP2FeijKc6+hwBPCXsxjLu7ZghPz//P5F0VJ2Xl6d2MgoQSNnF0NCQmJ+fd6LteiYZ8zQHBwdqsMbyug5Jn5+fn6tlbKzLOXZjGepZ7Td6GEXqycrKUo4agYgP7GR7e9vlW3a3M4i5uTmnnftDnC12b23pc8pgcy9jrOupjBmcIsk/bxFVs8RYh3YLdNcAr6+v1Sfp6OhICXR2dqZEYgb+X0RiqW2mpKSoDAKoQKEHqM8RCBvH6+vrShidODfThhbAvQx2X2XMwC5vXG6vSs5TU1NVABUo9AA5np2dVceTk5POfGaSTswmdllfbQACaBE02mYsg91qfx2Pb112tw8lf+KbiA8CwdbWlhogx3qpcYxQl5eXKm9tbU3BrMJGnrc2YH9/3ymKEey6DOfUs9rf7Oxsj3FSdVxcnIoPAoEeIMd0fHV11WlDsImJCWdZjhEKu7c2zKJFstpfJoy3iPvThIQEFSPYDd8uaXx83GnTQhHhu5fnh8Ll5WUXmxbJynW1SFb760skHpEcJSUlKe9uB319feL09FQNTn+ylDY3N50g1szMjEeor9ui7H0S9az2m2f6vp4CvCl5zI6Hh/eXpaUl1dGVlRV1Pj09LQ4PD112M1+J8rotLRI2s+gvxGq/MzIy7nyelMTjEtTEy/sLnfWV5wv3sgzYyrX5cnxd3xvp6emmHt+OxsbGKi8fjpgVSQWa7Hg4sXCDJyJmfy1RgWZiYqJyZOEEwbWVHydVoMmLWjizcIGNy7RIDqGqoqOjn4tkQqjPYmJilEMLB1g5ll6YcIj0kuRHHDlOLdTBD8vxfnGfl7jekfzGrUuoi8SqkWNtue/rgASaT1GaHSAU4bZMjvEJP7H5895kueSv+Ph45eBCjaioKERqsuMN3HTeeyYqDxVxmEEOgebtfJf7bcmu5B9CBJw6syvYoN8OcX7lPwMiApFkw+9JhiRfSb5h6wwyvpQ0evJB/wIFDhaTvqlwnwAAAABJRU5ErkJggg==);left:5px}
+</style>
+</head>
+<body>
+<div class="container" id="container">
+	<div class="header">
+		<h1 id="title"></h1>
+		<a href="javascript:void(0)" class="back" id="cancel">返回</a>
+		<a href="javascript:void(0)" style="display:none" id="confirm"></a>
+	</div>
+	<div id="main"></div>
+</div>
+<script>
+(function () {
+	try {
+		document.domain = "qq.com";
+	} catch (_) {
+		alert("invalid domain");
+	}
+	function getParam(name) {
+		var re = new RegExp("(?:\\?|#|&)" + name + "=([^&]*)(?:$|&|#)", "i"), m = re.exec(window.location.href);
+		var ret = m ? m[1] : "";
+		ret = ret.replace(/[+]/ig, "%20");
+		return ret;
+	}
+	var iface = getParam("iface");
+	switch (iface) {
+	case "AppChallenge":
+	case "AppInvitation":
+	case "AppGiftRequest":
+	case "SendStory": {
+		var appid = getParam("oauth_consumer_key"), type = getParam("type");
+		var url = "tencent" + appid + "://" + iface + "/cancel";
+		document.getElementById("cancel").addEventListener("click", function () {
+			setTimeout(function () {
+				window.open(url, "_self");
+			}, 0);
+		}, false);
+		document.getElementById("title").innerHTML = {
+			AppChallenge : type == "pk" ? "发送挑战" : "发送炫耀",
+			AppInvitation : "发送应用邀请",
+			AppGiftRequest : type == "request" ? "发送应用请求" : "发送免费礼物",
+			SendStory : "发送分享"
+		}[iface];
+		document.write('<script type="text/javascript" src="https://qzonestyle.gtimg.cn/open/mobile/' + {
+			AppChallenge : "brag_ios/js/sdk_brag.js",
+			AppInvitation : "invite_ios/js/sdk_invite.js",
+			AppGiftRequest : "request_ios/js/sdk_request.js",
+			SendStory : "story_ios/js/sdk_story.js"
+		}[iface] + '"><\/script>');
+		break;
+	}
+	default:
+		return;
+	}
+})();
+</script>
+</body>
+</html>
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/qqicon.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/qqicon.png
new file mode 100644
index 0000000..65c743c
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/qqicon.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/success.png b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/success.png
new file mode 100644
index 0000000..df3899d
--- /dev/null
+++ b/frameworks/WAQQImpl.framework/TencentOpenApi_IOS_Bundle.bundle/success.png
Binary files differ
diff --git a/frameworks/WAQQImpl.framework/WAQQImpl b/frameworks/WAQQImpl.framework/WAQQImpl
index f5aa84b..27391a9 100644
--- a/frameworks/WAQQImpl.framework/WAQQImpl
+++ b/frameworks/WAQQImpl.framework/WAQQImpl
Binary files differ

--
Gitblit v1.8.0