本篇文档主要讲解如何使用 QZone 进行分享。
创建应用
1.登录QQ互联,控制台并通过企业认证。
2.选择应用管理>移动应用>创建应用
3.单击创建移动应用
4.配置应用信息
以下为创建过程示例,图中信息仅为示例,创建时请按照真实信息填写,否则无法正常使用。
资料填写
完成以上内容填写后,QQ 平台应用创建已经完成,可正常使用。
应用关联(可选)
腾讯开放平台的移动应用关联到QQ互联,并获取 QQ 相关的开放能力。
安卓的需要查看包名和签名,iOS 的需要将自己项目的 Bundle id 进行报备,以及填写 Univesal link 进行审核
集成使用
配置信息获取
客户端在使用 QZone 平台之前,需要先获取 QQ 为应用分发的 APP ID 和 APP Key。(QZone 和 QQ 属同一平台,可使用同一个创建应用配置)
Android
SDK 集成
在集成 QZone 相关能力之前,请先按照ShareSDK集成指南完成 ShareSDK 的集成。
gradle 配置微信相关信息
在对应 gradle 文件中,添加如下 QZone 模块代码,其中 appId 的值对应 QQ 平台中的 App ID,appKey 对应 QQ 平台中的 App Key。
MobSDK {
appKey "xxxxxx"
appSecret "xxxxxx"
ShareSDK {
devInfo {
QZone{
appId "xxxxxx"
appKey "xxxxxx"
enable true
}
.......
}
}
}
复制代码
分享示例
以下代码示例分享网络链接至 QZone
Platform platform = ShareSDK.getPlatform(QZone.NAME);
Platform.ShareParams shareParams = new Platform.ShareParams();
shareParams.setText("QZone分享内容");
shareParams.setTitle("QZone分享标题");
shareParams.setImageUrl("https://download.sdk.mob.com/web/images/2019/07/30/14/1564468183056/750_750_65.12.png");
shareParams.setShareType(Platform.SHARE_WEBPAGE);
shareParams.setUrl("https://www.mob.com/");
shareParams.setTitleUrl("https://www.mob.com/");
//设置分享事件回调(注:回调放在不能保证在主线程调用,不可以在里面直接处理UI操作)
platform.setPlatformActionListener(new PlatformActionListener() {
@Override
public void onComplete(Platform platform, int i, HashMap<String, Object> hashMap) {
//分享成功
}
@Override
public void onError(Platform platform, int i, Throwable throwable) {
//分享失败
}
@Override
public void onCancel(Platform platform, int i) {
//分享取消
}
});
platform.share(shareParams);
复制代码
效果图
iOS
在集成 QQ 相关能力之前,请先按照ShareSDK集成指南完成 ShareSDK 的集成。
SDK 集成
添加白名单
在项目的 info.plist 中添加 Queried URL Schemes,类型为 Array,然后添加一个需要支持的项目,类型为字符串类型,添加:mqqopensdknopasteboardios16,mqqopensdknopasteboard,mqq,mqzone,mggopensdklaunchminiapp,mqqopensdkapiV2,tim,mqqapi,mgq
配置 scheme
打开项目的 Info 选项,添加对应平台的 URL Scheme 配置,如下图:
配置 universalink
选择 Target,点击 Capability,选择 Associated Domains,并双击添加,然后点击“+”号,添加 Universal link,添加形式为:applinks:XXX,XXX 为您 Universal link 的域名,如下图
初始化 SDK
在使用 QZone 能力之前,需要先对其初始化,其中 setupQQWithAppId 的值对应 QQ 平台的 APP ID,appkey 对应 QQ 平台中的 APP Key,universalLink 对应的是 QQ 平台的 Universal link。
[ShareSDK registPlatforms:^(SSDKRegister *platformsRegister) {
[platformsRegister setupQQWithAppId:@"xxxxxx"appkey:@"xxxxxx"enableUniversalLink:NO universalLink:@"xxxxxxx"];
}];
复制代码
分享示例
以下代码示例分享网络链接至 QZone
#import <ShareSDK/ShareSDK.h>
NSMutableDictionary *params = [NSMutableDictionary dictionary];
[params SSDKSetupShareParamsByText:@"Jshuoh "
images:@"https://resource.gy.cn/system/pdf.png"
url:[NSURL URLWithString:@"http://download..mob.com/2021/01/25/16/16115618066761.02.html"]
title:@"I'm Not The"
type:SSDKContentTypeWebPage];
[ShareSDK share:SSDKPlatformSubTypeQZone
parameters:params
onStateChanged:^(SSDKResponseState state, NSDictionary *userData,
SSDKContentEntity *contentEntity, NSError *error) {
}];
复制代码
效果图
评论