第三方分享(原生)

作者: 认真一点man | 来源:发表于2016-11-23 15:37 被阅读0次

集成部分

  • 官网下载SDK
    https://open.weixin.qq.com (微信的)
    http://open.weibo.com (新浪的)(这里我只简单介绍二种,其他的大同小异)
  • 拉入项目中
  • 配置需要的一些库文件


    weibo.png
    wechat.png
  • 编译下。提示有方法找不到的时候可以在 Build SettIngs -> 搜索 other linker Flags-> 添加 -ObjC
  • 配置URL Schemes
  • 在info.plist里配置白名单
<key>LSApplicationQueriesSchemes</key>
 <array>
  <string>sinaweibohd</string>
  <string>sinaweibo</string>
  <string>weibosdk</string>
  <string>weibosdk2.5</string>
  <string>weixin</string>
 </array>
  • 部分代码

- (void) shareToWechat
{
        WXMediaMessage *message = [WXMediaMessage message];
        message.title = @"标题";
        message.description = @"详情";
        //获取原图
        UIImage *originImage = [[SDImageCache sharedImageCache] imageFromDiskCacheForKey:@"图片URL"];//这里使用SD进行图片缓存
        
        [message setThumbImage:originImage];
        
        WXVideoObject *ext = [WXVideoObject object];//视频类型
        ext.videoUrl = @"链接地址";
        message.mediaObject = ext;
        
        SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
        req.bText = NO;
        req.message = message;
        req.scene = WXSceneSession;//WXSceneTimeline(朋友圈)
        
        [WXApi sendReq:req];
}
- (void)shareToSina
{
        WBAuthorizeRequest *authRequest = [WBAuthorizeRequest request];
        authRequest.redirectURI = @"http://www.sina.com";
        authRequest.scope = @"all";
        WBMessageObject *message = [WBMessageObject message];
        
        WBWebpageObject *webpage = [WBWebpageObject object];
        
        webpage.objectID = @"identifier1";
        webpage.title = @"标题";
        webpage.description = @"描述";
        
        //切记分享的图片大小不能超过32k,否则分享不成功(个人觉得放LOGO的)。
        webpage.thumbnailData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"userImage" ofType:@"png"]];
        webpage.webpageUrl = @"链接地址"; 
        message.mediaObject = webpage;
        
        WBSendMessageToWeiboRequest *request = [WBSendMessageToWeiboRequest requestWithMessage:message authInfo:authRequest access_token:nil];
        [WeiboSDK sendRequest:request];
}

  • 可能遇到的问题
    编译时报错,什么方法找不到,看是否有加入-ObjC
    跳转不成功?看是否有配置白名单
    返回时崩溃?在AppDelegate中加入回调方法(个人愚见)
/** 微博分享结束后的回调 */
- (void)didReceiveWeiboResponse:(WBBaseResponse *)response{}
- (void)didReceiveWeiboRequest:(WBBaseRequest *)request{}
/** 分享回调 */
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
    return  [WXApi handleOpenURL:url delegate:self] | [WeiboSDK handleOpenURL:url delegate:self];
}

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

说一下申请AppKey

  • 微信开放平台
    账号:邮箱注册(未注册开发平台、未注册公众平台、未绑定私人账号)
    应用中英文名称、中英文简介
    28X28像素的、108X108像素的PNG格式的图片(logo)
    应用官网(网址)
    Bundle ID // 很容易申请成功。。。我第二天就有结果了

  • 新浪开放平台
    微博账号登录
    开发者类型:个人 公司
    开发者名称、企业邮箱、企业电话、紧急联系人、电话
    真实姓名、证件号码、证件照片、手机验证
    Apple ID、
    应用简介(15)、应用介绍(1000)
    搜索标签
    16X16、80X80、120X120(PNG/JPG)
    应用介绍图片三张(高:300px 宽:450px) //需要个人认证,才能提交审核


懂得分享才能使我们成长的更快!

相关文章

  • Androi

    一、Android原生分享,即使用Android原生sdk进行分享,相比第三方sdk,优点是不用下载第三方jar包...

  • 代码布局

    为什么要了解原生代码布局? 今天要分享的是原生代码布局,当然也有很多优秀的布局第三方可以选择使用,但了解原生代码布...

  • 微信原生分享链接获取网络图片处理

    集成原生微信分享,要保证分享的图片大小不能超过32K 做完微信登录和微信分享之后,经验就是能用第三方,尽量用第三方...

  • UIActivityViewController使用

    UIActivityViewController 在使用了QQ、微信等的原生与第三方分享SDK之后,我更喜欢iOS...

  • 第三方分享(原生)

    集成部分 官网下载SDKhttps://open.weixin.qq.com (微信的)http://open.w...

  • mui框架安卓离线打包高级应用

    mui离线打包功能可以通过插件的方式让js和原生代码通信,以达到调用第三方原生sdk等目的,但有些第三方原生sdk...

  • 本地通知

    原生方法实现 2.第三方实现

  • IOS新浪微博、微信分享

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

  • ANDROID新浪微博、微信分享

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

  • iOS原生多图分享

    iOS原生多图分享iOS原生多图分享

网友评论

    本文标题:第三方分享(原生)

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