分享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]; // //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":"音乐" }" |
- 参数说明
参数 | 类型 | 必填 | 说明 |
arkData | String | Yes | 显示Ark所需的数据,json串,长度暂不限制 |
qqApiObject | Object | Yes | ark消息封装的原有消息对象 |