IOS新浪微博分享链接

新浪微博分享不显示分享的链接问题


新浪微博分享成功后,明明传了URL,分享成功后,到微博查看分享的内容,没有链接,无法查看。 说来也奇怪,新浪微博并没有传过去的url作为redirecturl,不显示分享的链接。

原文链接:http://www.henishuo.com/sina-weibo-share-url-not-show/

解决方案


所以,笔者这里把分享的文字和URL拼在一起,结果就可以分享带链接的内容了。


// 把分享内容和ULR拼接在一起
NSString *sinaContent = [NSString stringWithFormat:@"%@%@", content, url];

sharedContent = [ShareSDK content:sinaContent
                 defaultContent:sinaContent
                          image:[ShareSDK pngImageWithImage:pngImage]
                          title:title
                            url:url
                    description:@"" // 根据项目而写
                      mediaType:mediaType];
                      
[self shareToSinaWeiboWithContent:sharedContent
                      authOptions:authOptions 
                          content:sinaContent 
                         pngImage:pngImage 
                         completion:^(BOOL successful) {
    if (completion) {
      completion(successful);
    }
}];



分享就可以成功地解决分享不了链接的问题了。

注意:封装时,请不要将NSString *sinaContent = [NSString stringWithFormat:@"%@%@", content, url];放在内部写死,应该有外部传进来。因为像微信分享、QQ空间分享等与新浪微信不同,不需要拼接的哦。

关注我


微信公众号:iOSDevShares
有问必答QQ群:324400294

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Flutter是一种跨平台的移动应用开发框架,可以用于开发iOS和Android应用。在Flutter中实现微博分享可以通过集成第三方的微博SDK来实现。 首先,在pubspec.yaml文件中添加微博SDK的依赖: ``` dependencies: fluwx: ^x.x.x #微信开发包 umeng_sdk: ^x.x.x #友盟统计SDK weibo_sdk: ^x.x.x #微博SDK ``` 然后,在Flutter的代码中,添加微博分享的逻辑。首先,用户需要先登录微博,获取到授权信息。可以使用微博SDK提供的登录接口来实现: ```dart import 'package:weibo_sdk/weibo_sdk.dart'; void loginWeibo() async { var response = await WeiboSDK.login(); if (response != null && response.isSuccess()) { // 授权成功 var accessToken = response.accessToken; var uid = response.uid; // 在这里可以进行微博分享的操作 } else { // 授权失败 } } ``` 在获取到授权信息后,就可以通过微博SDK提供的分享接口来实现微博分享: ```dart import 'package:weibo_sdk/weibo_sdk.dart'; void shareToWeibo() { var weiboContent = WeiboContent(); weiboContent.title = '分享标题'; weiboContent.description = '分享内容'; weiboContent.webpageUrl = '分享链接'; weiboContent.imageUrl = '分享图片链接'; WeiboSDK.shareToWeibo(weiboContent).then((response) { if (response != null && response.isSuccess()) { // 分享成功 } else { // 分享失败 } }); } ``` 通过上述的代码实现,就可以在Flutter中进行微博分享了。当用户点击分享按钮时,首先需要登录微博获取授权信息,然后再调用分享接口进行分享操作。使用微博SDK可以方便地实现微博分享功能,同时也提供了分享成功和失败的回调,方便开发者对分享结果进行处理。 ### 回答2: Flutter 是一种开源的移动应用程序开发框架,它能够帮助开发者用一套代码构建高效、美观的跨平台应用。在 Flutter 中,我们可以很方便地实现微博分享功能。 首先,我们需要引入 `flutter_weibo` 插件,这是一个与微博 API 交互的插件。我们可以在 `pubspec.yaml` 文件中添加依赖: ``` dependencies: flutter_weibo: ^1.0.0 ``` 然后,在我们的代码中导入该插件: ```dart import 'package:flutter_weibo/flutter_weibo.dart'; ``` 接下来,我们需要设置微博开放平台的相关信息,包括 App Key 和回调地址。我们可以在微博开放平台申请一个开发者账号,创建一个应用,然后获取这些信息。在我们的代码中,可以这样设置: ```dart Weibo.init('YOUR_APP_KEY', 'YOUR_REDIRECT_URL'); ``` 现在,我们就可以使用该插件来实现微博分享了。比如,我们可以创建一个按钮,点击该按钮时触发分享操作: ```dart FlatButton( onPressed: () { // 分享文本 Weibo.shareText('要分享的文本内容'); // 分享图片(本地图片或网络图片) Weibo.shareImage( image: 'http://example.com/image.jpg', description: '图片描述', ); // 分享网页链接 Weibo.shareWebPage( url: 'http://example.com/page', title: '网页标题', description: '网页描述', thumbnail: 'http://example.com/thumbnail.jpg', ); }, child: Text('点击分享微博'), ); ``` 通过上述代码,我们可以实现微博分享的功能。用户点击按钮后,可以分享文本、图片或网页链接微博上。当然,在实际开发中,我们还可以根据需求进行更多的定制和优化,以提供更好的用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值