近日需要做一个分享PDF文件到微信的功能,微信文档一直未写明分享文件的用法,但是文件里面是有方法存在的。
各种百度,各种摸索后终于成功了。
WXFileObject *fileObject = [WXFileObject object];
NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"你的文件地址"]];
fileObject.fileData = data;
fileObject.fileExtension = @"pdf";
WXMediaMessage *message2 = [WXMediaMessage message];
message2.mediaObject = fileObject;
message2.title = [NSString stringWithFormat:@"%@",@"你的标题"];
message2.description = @"你的内容";
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
req.bText = NO;
req.message = message2;
req.scene = WXSceneSession;
[WXApi sendReq:req];
终于分享成功了,可是发现一个奇怪的问题,分享出去的文件缩略图是个问号❓,但二次转发给安卓机,发现是正常的,缩略图也有,只有iPhone无法显示。
于是再次各种百度各种谷歌,还是没找到解决方案,折腾许久之后,终于可以正常显示了,成功版本附上......
WXFileObject *fileObject = [WXFileObject object];
NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"你的文件地址"]];
fileObject.fileData = data;
fileObject.fileExtension = @"pdf";
WXMediaMessage *message2 = [WXMediaMessage message];
message2.mediaObject = fileObject;
message2.title = [NSString stringWithFormat:@"%@.pdf",@"你的标题"];
message2.description = @"你的内容";
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
req.bText = NO;
req.message = message2;
req.scene = WXSceneSession;
[WXApi sendReq:req];
是的,只是加了个后缀.pdf就成功解决了。
网友评论