国内的社交平台所提供的windows平台的sdk,大多数停留在wp8,还有是部分wp7,话说fb都有win10的。对于win10开发,这些基于silverlight的sdk在引用时难免会遇到各种问题。偶然发现微博的sdk有win8版的,据称是基于windows runtime,那应该是可以移植到win10开发使用。

给出微博SDK的下载地址,下载后就是两个.winmd文件,在工程中添加引用。

微博开发文档中给的API参考给了很多,但那时给Android和IOS开发人员用的,对于windows开发,SDK中集成的很少。对于实现微博分享需要关注的主要是两个接口update和upload,在SDK中还实现了两个读取接口friends_timeline和user_timeline,读取接口本文不做叙述。

  • OAuth2.0 登陆
    首先要做的就是让用户登陆并授权应用访问。参考如下代码:
private void InitData()
{SdkData.AppKey = ""; //填写自己的AppKeySdkData.AppSecret = "";  //填写自己的AppSecretSdkData.RedirectUri = "https://api.weibo.com/oauth2/default.html";var oauthClient = new ClientOAuth();// 判断是否已经授权或者授权是否过期.if (oauthClient.IsAuthorized == false){oauthClient.LoginCallback += (isSucces, err, response) =>{if (isSucces){//授权成功}else{//授权失败}};oauthClient.BeginOAuth();}
}

在电脑上会弹窗提示验证,在手机上则是会转到一个验证的页面。用户登录成功后才会授权成功,用户中途取消也会是授权失败。

  • 发送纯文本微博(update接口)
    参考如下代码:
    var engine = new SdkNetEngine();ISdkCmdBase cmdBase = new CmdPostMessage(){Status = ""  // 微博正文};var result = await engine.RequestCmd(SdkRequestType.POST_MESSAGE, cmdBase);if (result.errCode == SdkErrCode.SUCCESS){//成功}else{//失败}
  • 发送带图片微博(update接口)
    参考如下代码:
    var engine = new SdkNetEngine();ISdkCmdBase cmdBase = new CmdPostMsgWithPic(){Status = "",  //微博正文PicPath = ""  //图片路径,在本机的存储位置};var result = await engine.RequestCmd(SdkRequestType.POST_MESSAGE_PIC, cmdBase);if (result.errCode == SdkErrCode.SUCCESS){//成功}else{//失败}

需要注意的是发送的图片需要给在本机的存储路径,所以如果是网络上的图片或者是程序中生成的图片,还要先将其保存在本地。

  • 长链转短链(shorten接口)
    实际应用中,可能发送微博时需要附带链接,此时需要将其转化为短链接并附在正文中。
    参考如下代码:
    var engine = new SdkNetEngine();ISdkCmdBase cmdbase = null;{cmdbase = new CmdShortenUrl(){OriginalUrl = @"https://www.microsoft.com"  //待转换长链};}var result = await engine.RequestCmd(SdkRequestType.SHORTEN_URL, cmdbase);if (result.errCode == SdkErrCode.SUCCESS){//成功string str = result.content;  //获得的转换结果,json格式}else{//失败}

给出一个Json示例

{"urls": [{"url_short": "http://t.cn/h4DwT1","url_long": "http://www.baidu.com","type": 0,"result": "true"}]
}

可使用System.Runtime.Serialization.Json.DataContractJsonSerializer类,实现Json的反序列化。


测试环境Windows 10 UWP

[UWP开发] Win10微博分享相关推荐

  1. Win10 UWP开发系列:使用VS2015 Update2+ionic开发第一个Cordova App

    安装VS2015 Update2的过程是非常曲折的.还好经过不懈的努力,终于折腾成功了. 如果开发Cordova项目的话,推荐大家用一下ionic这个框架,效果还不错.对于Cordova.PhoneG ...

  2. Win10 UWP开发中的重复性静态UI绘制小技巧 1

    Win10 UWP开发中的重复性静态UI绘制小技巧 1 原文:Win10 UWP开发中的重复性静态UI绘制小技巧 1 介绍 在Windows 10 UWP界面实现的过程中,有时会遇到一些重复性的.静态 ...

  3. iOS开发之第三方分享微博分享、微博分享失败原因总结,史上最新最全第三方分享微博方式实现。 微博分享各种坑总结

    本篇文章项目demo:点击打开链接https://github.com/zhonggaorong/weiboSDKDemo 微博环境的相关搭建,请参照我的这篇博客 : http://blog.csdn ...

  4. HBuilder webApp开发(七)微信/QQ/新浪/腾讯微博分享

    HBuilder是支持微信分享(好友和朋友圈),QQ分享,新浪微博和腾讯微博分享. 但是在使用的过程中,官方给的文档似乎很坑爹. <分享插件配置> <分享插件开发指南> 都是2 ...

  5. Win 10 UWP开发系列:设置AppBarButton的图标

    在WP8以前,页面最下面的四个小圆按钮是不支持绑定的,WP8.1 RT之后,系统按钮升级成了AppBarButton,并且支持绑定了.在Win10 UWP开发中,按钮的样式发生了变化,外面的圆圈没有了 ...

  6. 史上最具体Android集成QQ,微信,微博分享(不用第三方)持续更新中

    QQ 下载sdk并执行demo 各种配置 IUiListener 分享图片 分享到QQ 分享到QZONE Sina微博 配置 选择集成sdk方式 分享图片 微信 朋友 朋友圈 如今项目中用个第三方登录 ...

  7. Windows10 UWP开发 - 响应式设计

    Windows10 UWP开发 - 响应式设计 原文:Windows10 UWP开发 - 响应式设计 Windows10 UWP开发 - 响应式设计 本篇随笔与大家简单讨论一下在开发适配不同分辨率.宽 ...

  8. android qq分享自动弹出,史上最详细Android集成QQ,微信,微博分享(不要第三方)持续更新中...

    QQ1 下载sdk并运行demo 2 各种配置 IUiListener 4 分享图片41 分享到QQ 41 分享到QZONE Sina微博配置 选择集成sdk方式 分享图片 现在项目中用个第三方登录, ...

  9. 基于Android的sina微博分享功能

    该功能是在基于Android的应用中实现sina微博分享,利用sina微博这个平台来推广自己的应用,大家有兴趣可以看看新浪微博开发平台的相关介绍http://open.weibo.com/ 运行结果: ...

  10. 【课程设计】UWP 开发入门小笔记(1)

    UWP 开发入门小笔记(1) 零.介绍 一.系列介绍[p1] 二.创建第一个属于自己的UWP应用[p2] (一)一个button的属性: (二)修改属性的三种方法 (三)字号(以后会细讲) 三.UWP ...

最新文章

  1. PostgreSQL中的数据库实例、模式、用户(角色)、表空间
  2. M2: XAML Controls(2)
  3. Linux下redis安装与使用
  4. golang获取结构体中的tag_26. Go 语言中结构体的 Tag 用法
  5. 【原】继承AbstractRoutingDataSource再通过AOP实现动态数据源切换
  6. 【研究】Metasploit自动攻击模块
  7. 网站维护页面_营销型企业网站有哪些功能?
  8. 为什么要做短视频秒播优化
  9. 十年编程经验凝结 与新人们分享
  10. 马云:创业成功者没有固定模式
  11. Dalamud:FFXIV插件框架和API-源码
  12. 基于51单片机的电子时钟
  13. 电动自动吞吐式IC卡RFID读写器EMV模块HX150进卡命令
  14. 通过身份证号码进行归属地的查询、出生日期,以及判断性别(升级版)
  15. 一些BIM的相关概念
  16. 【模电】0010 正弦波产生电路(RC正弦波振荡电路)
  17. Windows设置开机自启动的三种方式
  18. 用Mac安装homebrew的时候报错解决方法
  19. u盘盘符不显示 win10_电脑插上优盘不显示怎么办_win10电脑插上优盘不显示弹窗的处理方法...
  20. 电信行业大数据(大数据平台系列)

热门文章

  1. 智伴机器人wifi键在哪里_智伴机器人介绍和按键功能
  2. vue源码之数据侦测
  3. 猜数字小游戏(加强版)它来了
  4. 海尔智慧电视如何进入工厂模式
  5. dateutil 日期计算_时间工具——DateUtil
  6. 百度 bos php,GitHub - SwimmingTiger/BOSFS: PHP流包装器:百度开放云对象存储文件系统(BCE BOS File System)...
  7. 2021-CSP-J2/S2 自我题解
  8. 小学计算机课知识点内容,小学信息技术教案九篇
  9. 未来机器人背景的AI人工智能PPT模板
  10. 客快物流大数据项目(一):物流项目介绍和内容大纲