分享到 :

分享ark消息到QQ(3.3.3)

  • 使用场景

3.3.5新增支持分享ark消息到手Q和空间,替代原来的结构化消息,目前支持的消息类型有:新闻、音乐、视频,若选中其他消息(文本、图片),会报错不支持。

  • 接口方法

新增消息类型ArkObject

//QQApiInterfaceObject.h
+ (SendMessageToQQReq *)reqWithArkContent:(ArkObject *)message;

创建完ark消息后,再通过分享接口发送消息到QQ和空间

  • 示例代码(以分享音频消息为例)
//音频消息对象
QQApiAudioObject* audioObj = [QQApiAudioObject objectWithURL:[NSURL URLWithString:utf8String ? : @""] title:self.binding_title ? : @"" description:self.binding_description ? : @"" previewImageData:previewData];

//如果是发到空间还需要打开下面一句(不支持直接分享ark到空间,会报错发送参数错误)
//audioObj.cflag |= kQQAPICtrlFlagQZoneShareOnStart;

//ark消息对象
audioObj.cflag |= kQQAPICtrlFlagQQShareEnableArk;
ArkObject *arkObj = [ArkObject objectWithData:json qqApiObject:audioObj];

//发送消息
req = [SendMessageToQQReq reqWithArkContent:arkObj];
QQApiSendResultCode ret = [QQApiInterface sendReq:req];

其中json是ark的输入数据,格式示例如下(以音乐为例)

@"{
        "config":{
                "forward":true,
                "type":"card",
                "autosize":true
        },
        "prompt":"[应用]音乐",
        "app":"com.tencent.music",
        "ver":"1.0.1.26",
        "view":"Share",
        "meta":{
                "Share":{
                        "musicId":"4893051"
                }
        },
        "desc":"音乐"
}"
  • 参数说明
参数类型必填说明
arkDataStringYes显示Ark所需的数据,json串,长度暂不限制
qqApiObjectObjectYesark消息封装的原有消息对象
返回顶部