博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决新浪微博未安装客户端分享不能带链接问题
阅读量:4960 次
发布时间:2019-06-12

本文共 2342 字,大约阅读时间需要 7 分钟。

因为一开始是按照新浪的demo写的,但是demo也存在这个问题当在未安装客户端的情况下分享的链接不会显示。解决办法 :

WBSendMessageToWeiboRequest 类有一个WBMessageObject 的类 这个类的text是分享的内容  在这里设置分享内容 将分享的url加进来。代码如下

- (void)shareButtonPressed{    AppDelegate *myDelegate =(AppDelegate*)[[UIApplication sharedApplication] delegate];        WBAuthorizeRequest *authRequest = [WBAuthorizeRequest request];    authRequest.redirectURI = kRedirectURI;    authRequest.scope = @"all";        WBSendMessageToWeiboRequest *request = [WBSendMessageToWeiboRequest requestWithMessage:[self messageToShare] authInfo:authRequest access_token:myDelegate.wbtoken];    request.userInfo = @{
@"ShareMessageFrom": @"SendMessageToWeiboViewController", @"Other_Info_1": [NSNumber numberWithInt:123], @"Other_Info_2": @[@"obj1", @"obj2"], @"Other_Info_3": @{
@"key1": @"obj1", @"key2": @"obj2"}}; // request.shouldOpenWeiboAppInstallPageIfNotInstalled = NO; //判断是否存在客户端 不存在就这样写 if (![WeiboSDK isWeiboAppInstalled]) { request.message.text = [NSString stringWithFormat:@"%@%@",NSLocalizedString(@"分享网页标题", nil),@"http://sina.cn?a=1"]; } [WeiboSDK sendRequest:request];}

messageToShare方法

- (WBMessageObject *)messageToShare{    WBMessageObject *message = [WBMessageObject message];        if (self.textSwitch.on)    {        message.text = NSLocalizedString(@"测试通过WeiboSDK发送文字到微博!", nil);    }        if (self.imageSwitch.on)    {        WBImageObject *image = [WBImageObject object];        image.imageData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"image_1" ofType:@"jpg"]];        message.imageObject = image;    }        if (self.mediaSwitch.on)    {        WBWebpageObject *webpage = [WBWebpageObject object];        webpage.objectID = @"identifier1";        webpage.title = NSLocalizedString(@"分享网页标题", nil);        webpage.description = [NSString stringWithFormat:NSLocalizedString(@"分享网页内容简介-%.0f", nil), [[NSDate date] timeIntervalSince1970]];        webpage.thumbnailData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"image_2" ofType:@"jpg"]];        webpage.webpageUrl = @"http://sina.cn?a=1";        message.mediaObject = webpage;    }        return message;}

当然如果在 messageToShare 整合一下代码也可以 不再举例了。

 

转载于:https://www.cnblogs.com/lianghaoxintai/p/4645857.html

你可能感兴趣的文章
Xen虚拟机磁盘镜像模板制作(四)—CentOS 7
查看>>
【洛谷】3402:【模板】可持久化并查集
查看>>
python第15天
查看>>
ueditor1_4_3-utf8-jsp配置及自定义,结合struts2
查看>>
PHPMyAdmin在Window下的安装
查看>>
Eclipse 批量创建多级文件夹
查看>>
用console.log分析Vue源码
查看>>
java抽象类与接口
查看>>
Vue仿string.format
查看>>
C#读取大文件
查看>>
Dubbo学习-2-注册中心搭建
查看>>
ANSIToMultiByteUTF8的跨平台实现
查看>>
(专题一)02 matlab数值数据的表示方法,输出数据以及相关函数
查看>>
通过WebService获取归属地查询
查看>>
求两个等长的已排序数组的中位数(《算法导论》P113习题9.3-8)
查看>>
Mysql数据库查询优化日常笔记
查看>>
javascript 引擎实现机制 集合
查看>>
测试下载链接
查看>>
jquery 验证插件
查看>>
zabbix--api学习之路--get_hostgroup获取
查看>>