美文网首页
iOS 分享 --微博

iOS 分享 --微博

作者: 未完成1307 | 来源:发表于2018-01-24 10:09 被阅读1422次

微信、QQ、微博都差不多 ,前两篇已经和清楚了 微博就简单记录一下

配置

  • 添加白名单以及URL scheme


    白名单.png
F61BF6CC-CA7F-43E2-98B3-349AF16029DD.png
  • 添加依赖库


    依赖库.png
  • 选择Build Setting,在"Other Linker Flags"中加入"


    94E50B50-967F-4DAB-A21F-6A6414F93A32.png

    -all_load"

注册

/**
 设置WeiboSDK的调试模式
 当开启调试模式时,WeiboSDK会在控制台输出详细的日志信息,开发者可以据此调试自己的程序。默认为 NO
 @param enabled 开启或关闭WeiboSDK的调试模式
 */
    [WeiboSDK enableDebugMode:YES];

    [WeiboSDK registerApp:kAppKey];
这里如果有多种分享途径 需判断分享的是微信、QQ、微博。。。。

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
    return [WeiboSDK handleOpenURL:url delegate:self];
}

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
    return [WeiboSDK handleOpenURL:url delegate:self ];
}

回调(官方demo里 这里写的比较详细 可以参考)

- (void)didReceiveWeiboResponse:(WBBaseResponse *)response {
    if ([response isKindOfClass:WBSendMessageToWeiboResponse.class])
    {
        if (response.statusCode == 0) {
          // 新浪微博分享成功     
        }
        else {
         //新浪微博分享失败  
        }
    }
    else if ([response isKindOfClass:WBAuthorizeResponse.class]){
        if (response.statusCode == 0) {
         // 新浪微博授权成功
        }
        else {
           // 新浪微博授权失败
        }
    }
}

授权

 WBAuthorizeRequest *request = [WBAuthorizeRequest request];
    request.redirectURI = kRedirectURI;
    request.scope = @"all";
    request.userInfo = @{@"SSO_From": @"SendMessageToWeiboViewController",
                         @"Other_Info_1": [NSNumber numberWithInt:123],
                         @"Other_Info_2": @[@"obj1", @"obj2"],
                         @"Other_Info_3": @{@"key1": @"obj1", @"key2": @"obj2"}};
    [WeiboSDK sendRequest:request];

此处注意一下 ,如果是安装了微博客户端的 授权跳转后应该是这样


1.png

但是 跳转后确实这样


2.png
可以检查一下是否没有添加白名单 (我就是忘了添加,跳转后一直是这个页面。。。)

退出

 AppDelegate *myDelegate =(AppDelegate*)[[UIApplication sharedApplication] delegate];
    [WeiboSDK logOutWithToken:myDelegate.wbtoken delegate:self withTag:@"user1"];

分享

文字
   WBMessageObject *message = [WBMessageObject message];
              message.text = NSLocalizedString(@"林俊杰最新专辑《伟大的渺小》", nil);
          
            WBSendMessageToWeiboRequest *request = [WBSendMessageToWeiboRequest requestWithMessage:message];
            [WeiboSDK sendRequest:request];
图片
  UIImage * image = [UIImage imageNamed:@"小瓶子"];
                WBMessageObject *message = [WBMessageObject message];
                message.text = @"小瓶子";
                
                // 消息的图片内容中,图片数据不能为空并且大小不能超过10M
                WBImageObject *imageObject = [WBImageObject object];
                imageObject.imageData = UIImageJPEGRepresentation(image, 0.5);
                message.imageObject = imageObject;
                
                WBSendMessageToWeiboRequest *request = [WBSendMessageToWeiboRequest requestWithMessage:message];
                [WeiboSDK sendRequest:request];
链接 
     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:@"小瓶子" ofType:@"png"]];
        webpage.webpageUrl = @"https://m.weibo.cn/5360551125/4199268648046669";
        message.mediaObject = webpage;
  WBSendMessageToWeiboRequest *request = [WBSendMessageToWeiboRequest requestWithMessage:message];
                [WeiboSDK sendRequest:request];

这只是列举了其中的两种,具体的看文档。
多废话几句,如果在各种信息都配置好了,却点击分享后没有跳转,可以检查一下参数是否符合要求,很多都是有大小、非空等限制。
另外,在分享链接的时候,如果跳转了但是 有文字没有链接的话,可以检查一下thumbnailData 图片是否存在,以及大小是否符合要求。。。。。
不仅仅是微博,微信、QQ等 都存在参数有限制的要求,如果分享失败,可以往这方面检查一下。。。。。。。

相关文章

  • iOS 分享 --微博

    微信、QQ、微博都差不多 ,前两篇已经和清楚了 微博就简单记录一下 配置 添加白名单以及URL scheme白名...

  • 简单实用的iOS分享方式iOS_Share

    搞iOS开发的人,都会碰到一个问题,就是iOS分享,主要是分享到微信、QQ、新浪微博等社交媒体。分享实现的方式有以...

  • iOS微博SDK分享

    一、集成微博SDK 1.添加SDK文件 2.添加编译选项 新浪微博 SDK 附带的文档中有这么一个说明:在工程中引...

  • 短链生成哪家强 新浪微博很张扬 t.cn

    最快速的短网址接口,短链接服务,支持支持html5,IOS,Android,短信,微信分享防封,微博分享,抖音分享...

  • iOS 分享(微信、QQ、微博)

    iOS开发过程中可能会遇到需要进行第三方分享的需求,比如向QQ,微信,微博等分享,我们今天要讲到的方式是使用了一个...

  • IOS新浪微博、微信分享

    用的各平台原生的分享SDK,未采用第三方集成的SDK(例如ShareSDK、友盟U-Share等)。 原因有三: ...

  • 去年,我在微博上发起了100天阅读博文的行动。具体就是,每天读一篇 iOS 开发相关的技术博文,并在微博上分享自己...

  • 博客百篇,其义自见

    去年,我在微博上发起了100天阅读博文的行动。具体就是,每天读一篇 iOS 开发相关的技术博文,并在微博上分享自己...

  • ios最好用的第三方分享集成框架

    ios最好用的第三方分享集成框架 ios一般项目中都会有第三方分享功能,微信好友 朋友圈 新浪微博 分享 链接,图...

  • iOS - 仿微博照片/图片选择器

    iOS - 仿微博照片/图片选择器 iOS - 仿微博照片/图片选择器

网友评论

      本文标题:iOS 分享 --微博

      本文链接:https://www.haomeiwen.com/subject/movsaxtx.html