iOS 功能开发说明
简介
区分不同类型的分享数据
不同场景的分享区分
分享给朋友
发送文本消息
示例代码
// 发送文本消息到支付宝
- (void)sendText
{
// 创建消息载体 APMediaMessage 对象
APMediaMessage *message = [[APMediaMessage alloc] init];
// 创建文本类型的消息对象
APShareTextObject *textObj = [[APShareTextObject alloc] init];
textObj.text = @"此处填充发送到支付宝的纯文本信息";
// 回填 APMediaMessage 的消息对象
message.mediaObject = textObj;
// 创建发送请求对象
APSendMessageToAPReq *request = [[APSendMessageToAPReq alloc] init];
// 填充消息载体对象
request.message = message;
// 分享场景,0为分享到好友,1为分享到生活圈;支付宝9.9.5版本至当前版本,分享入口已合并,scene参数并没有被使用,用户会在跳转进支付宝后选择分享场景(好友、动态、圈子等),但为保证老版本上无问题,建议还是照常传入。
request.scene = 0;
// 发送请求
BOOL result = [APOpenAPI sendReq:request];
if (!result) {
//失败处理
NSLog(@"发送失败");
}
}
发送网页Card
示例代码
// 发送网页消息到支付宝
- (void)sendWebByUrl
{
// 创建消息载体 APMediaMessage 对象
APMediaMessage *message = [[APMediaMessage alloc] init];
message.title = @"此处填充网页标题";
message.desc = @"此处填充网页简要内容";
message.thumbUrl = @"此处填充缩略图的URL链接地址";
//缩略图也可使用thumbData字段分享本地UIImage类型图片,必须填充有效的image NSData类型数据,否则无法正常分享
//例如 message.thumbData = UIImagePNGRepresentation(Your UIImage Obj);
// 创建网页类型的消息对象
APShareWebObject *webObj = [[APShareWebObject alloc] init];
webObj.wepageUrl = @"此处填充网页URL链接地址";
// 回填 APMediaMessage 的消息对象
message.mediaObject = webObj;
// 创建发送请求对象
APSendMessageToAPReq *request = [[APSendMessageToAPReq alloc] init];
// 填充消息载体对象
request.message = message;
// 分享场景,0为分享到好友,1为分享到生活圈;支付宝9.9.5版本至当前版本,分享入口已合并,scene参数并没有被使用,用户会在跳转进支付宝后选择分享场景(好友、动态、圈子等),但为保证老版本上无问题,建议还是照常传入。
request.scene = 1;
// 发送请求
BOOL result = [APOpenAPI sendReq:request];
if (!result) {
//失败处理
NSLog(@"发送失败");
}
}
发送图片分享
示例代码
// 发送图片消息到支付宝
- (void)sendPhotoByUrl
{
// 创建消息载体 APMediaMessage 对象
APMediaMessage *message = [[APMediaMessage alloc] init];
// 创建图片类型的消息对象
APShareImageObject *imgObj = [[APShareImageObject alloc] init];
imgObj.imageUrl = @"此处填充图片的URL链接地址";
//图片也可使用imageData字段分享本地UIImage类型图片,必须填充有效的image NSData类型数据,否则无法正常分享
//例如 imgObj.imageData = UIImagePNGRepresentation(Your UIImage Obj);
// 回填 APMediaMessage 的消息对象
message.mediaObject = imgObj;
// 创建发送请求对象
APSendMessageToAPReq *request = [[APSendMessageToAPReq alloc] init];
// 填充消息载体对象
request.message = message;
// 分享场景,0为分享到好友,1为分享到生活圈;支付宝9.9.5版本至当前版本,分享入口已合并,scene参数并没有被使用,用户会在跳转进支付宝后选择分享场景(好友、动态、圈子等),但为保证老版本上无问题,建议还是照常传入。
request.scene = 0;
// 发送请求
BOOL result = [APOpenAPI sendReq:request];
if (!result) {
//失败处理
NSLog(@"发送失败");
}
}
其它辅助能力
检查当前手机上是否安装了支付宝
判断当前设备是否支持分享到支付宝好友
判断当前设备是否支持分享到支付宝生活圈
获取支付宝客户端在AppStore的下载链接
响应返回码说明
错误码 | 说明 |
---|---|
APSuccess | 分享成功 |
APErrCodeUserCancel | 分享被用户取消 |
APErrCodeAuthDeny | 分享鉴权失败,需要检查 appId、packageId 以及签名是否和注册的时候一致。 |
APErrCodeSentFail | 分享过程中出现异常导致分享失败,可能由于网络或其它原因的失败。 |
APErrCodeUnsupport | 支付宝客户端版本不支持 |
APErrCodeCommon | 分享参数错误 |
修改于 2023-11-27 03:00:43