由于项目的需要,要将友盟的社会化组件SDK由0.9更新至2.0. 版本变化比较大。

1、很多类以及命名空间已经取消了。

如UmengSocialSDK.Net.Request命名空间, UmengSocial类等。

2、微信会话和朋友圈已整合成一个。

老版本两者分别是两个类,此处已经整合为一个。(WP8.1下暂时无法分享至微信、朋友圈)

分享内容支持三种:Link链接、Text文字、Picture图片

具体查看官方文档:http://dev.umeng.com/social/windows-phone/share/detail-share

对于各个分享,加入完整必须属性后,才能够分享成功,不然就无反应。(比如:分享图片,微信必须有Title和Image, 而其他平台不能要Title)

                          

                           UmengPicture类

成员 新浪微博 人人网 腾讯微博 QQ空间 豆瓣 微信
Loc (位置信息)可选      ×
Text (文本内容)可选      
Title × × × × ×
Image

另外,无法实现将图片和文字同时分享到微信和朋友圈中。

(也就是说,图片分享至微信无法看到文字;链接分享到微信也只有一张可转到其他网页的图片,而无文字)

以新浪微博为例,分享屏幕截屏  (详细配置及其他事项的请参照官方说明文档):

SinaWeiboClient Sina = new SinaWeiboClient(DataBaseManager.AppYouMengKey);  //创建对象

private async void btnShare_Click(object sender, RoutedEventArgs e)  //点击分享按钮
{
  bool flag = await Sina.CheckLoggedin();  //判断是否已(登陆)授权
  if (flag)  //如果已授权,则直接分享
  {
    ShareImage();  //分享
  }
  //如果目标平台未授权则先授权再分享
  else
  {
    var rec = await Sina.LoginAsync();  //登陆,打开登陆授权页面
    if (rec.Status == LoginStatus.Success)  //登陆成功
    {
      ShareImage();
    }    
    else
    {
      MessageBox.Show("登陆失败");    
    }
  }
} private async void ShareImage()  //分享图片
{
  var res = await Sina.SharePictureAsync(GetImageShare(), true);  //调用分享图片方法,isEditable = true 可编辑
  if (res.Status == ShareStatus.Success)  //分享成功
    MessageBox.Show("分享成功");
  else if (res.Status == ShareStatus.UserCanceled)  //用户退出分享界面
    return;
  else
    MessageBox.Show("分享失败");
} private UmengPicture GetImageShare()  //返回值为UmengPicture类型
{
  WriteableBitmap writeableBitmap;
  writeableBitmap = ShotScreen();  //截屏   MemoryStream stream = new MemoryStream();
  writeableBitmap.SaveJpeg(stream, writeableBitmap.PixelWidth,
  writeableBitmap.PixelHeight, , );
  
  UmengPicture picture = new UmengPicture(stream.ToArray(), "图片详细描述")  //image为数组
  {
    Text = "这是新浪分享的内容"
  };
  /*
  if (SharePlatform == SharePlatform.Wechat)
    picture.Title = "图片分享";
  */
  return picture;
 } private static BitmapSource ShotScreen() //截屏
{
  PhoneApplicationFrame frame = System.Windows.Application.Current.RootVisual as PhoneApplicationFrame;
  PhoneApplicationPage page = frame.Content as PhoneApplicationPage;
  WriteableBitmap wBitmap = new WriteableBitmap((int)page.ActualWidth, (int)page.ActualHeight);
return wBitmap;
} private async void btnLogOut_Click(object sender, RoutedEventArgs e)  //登出
{
  await Sina.LogoutAsync();  //貌似老版本没有登出的方法
}

PS: 我在退出后重进程序分享失败(已经是授权的情况下,分享报错OAuthExpired)(已解决,方案如下)

但是问了其他人,说是没问题的。我就不懂了。。

补充:但是呢,测试了官方给的Demo,也是一样的问题呀。。正在联系官方人员解决。希望有结果。

有结果了:  联系了友盟,经过三天时间,对方修复了bug。太开心了。貌似官方还没有更新。

现在上传上来: http://t.cn/RzWdI4w

引用-管理NuGet程序包-设置。

添加一个程序包源,更改源路径后保存。

在联机中选择“友盟社会化组件”安装

如果不需要支持全部平台,可依照下表删除对应引用。

Facebook: Facebook

微信:Google.ProtocolBuffersLite    +     MicroMsgSDK

Twitter : Hammock.WindowsPhone     +      ICSharpCode.SharpZipLib.WindowsPhone

PS:如果原来引用过旧版本,要先删除工程目录下的package文件,不然使用的还是以前的Dll

Windows Phone 8下 友盟社会化组件SDK的使用。的更多相关文章

  1. android第三方分享之友盟社会化组件

    前言 现在几乎所有的app都带有分享功能,第一为了更好地推广自己的产品,第二作为使用者也能及时的把自己觉得好的文章,话题,app分享到社交平台供大家一起学习和使用.开发中虽然android系统自带分享 ...

  2. Android Cocos2d-x游戏集成友盟社会化组件分享功能

    最近在帮助开发者集成友盟社会化组件的过程中,发现游戏的集成过程遇到一些困难,而Cocos2d-x具有较好的代表性,因此整理了一篇关于Android Cocos2d-x游戏集成友盟社会化组件指南,由于本 ...

  3. Android 友盟社会化组件-分享实现

    本文章链接地址:http://dev.umeng.com/social/android/share/quick-integration 分享快速集成 1 产品概述 友盟社会化组件,可以让移动应用快速具 ...

  4. Android集成友盟社会化分享功能

    1.  产品概述 友盟社会化组件,可以让移动应用快速具备社会化分享.登录.评论.喜欢等功能,并提供实时.全面的社会化数据统计分析服务. 指南将会手把手教你使用社会化组件SDK,用5分钟为APP增加新浪 ...

  5. Xamarin.Android 绑定友盟社会化分享组件

    Xamarin.Android 绑定友盟社会化分享组件 最近在开发博客园Android App的时候需要用到友盟社会化分享组件,在github上搜了一下都没有找到最新版本绑定好的项目,就自己动手来绑定 ...

  6. 友盟推送SDK集成测试、常见问题以及注意事项总结

    最近为了解决公司APP在一些手机出现的推送问题重新集成了最新版的友盟推送SDK,花费了几天时间终于把集成和测试工作完成,最终在华为,Nexus,三星,小米,HTC,魅族等10多部手机上测试并达到了预想 ...

  7. iOS快速集成友盟社会化分享功能(v6.1.1)

    1.  U-Share SDK集成 1.1 下载U-Share SDK 通过iOS社会化组件选择所需的社交平台后进行下载,下载链接http://dev.umeng.com/social/ios/sdk ...

  8. React Native中集成友盟社会化分享-----童叟无欺

    1.下载所需的jar,下载地址https://developer.umeng.com/sdk/reactnative?spm=a211g2.211692.0.0.28967d238GW6mC 2.将以 ...

  9. IOS开发之——友盟社会化分享UMSocial_SDK的使用

    友盟第三方官方网址:http://dev.umeng.com/social/ios/quick-integration

随机推荐

  1. linux系统安装jdk

    OpenJdk8安装: sudo add-apt-repository ppa:openjdk-r/ppa sudo apt-get update sudo apt-get install openj ...

  2. hihocoder #1052 基因工程

    传送门:基因工程 这道题拖了好久,一直没有清晰的思路. 当然,$K\le\frac{N}{2}$时,比较简单.下面我着重讲一下当$K>\frac{N}{2}$,即前$K$个字符与后$K$个字符有 ...

  3. 算法与设计模式系列1之Python实现常见算法

    preface 常见的算法包括: 递归算法 二分法查找算法 冒泡算法 插入排序 快速排序 二叉树排序 下面就开始挨个挨个的说说原理,然后用Python去实现: 递归算法 一个函数(或者程序)直接或者间 ...

  4. POJ3114 Countries in War (强连通分量 + 缩点 + 最短路径 + 好题)

    题目链接 题意是说在几个邮局之间传送一份信件,如果出发点和终止点在同一个国家传递,则时间为0,否则让你求花费最少时间,如果不能传到,则输出Nao e possivel entregar a carta ...

  5. php 如何造一个简短原始的数据库类用来增加工作效率

    class DBDA{ public $host="localhost"; public $uid="root"; public $pwd="123& ...

  6. MySQL------如何将SQLServer文件数据迁移到MySQL

    转载: http://blog.csdn.net/zhangdaiscott/article/details/46412453

  7. git的基本操作

    今天给同事培训了一下git的使用流程,简单记录一下 1,基本概念, 远程库和本地库. 2, git clone git://url/*.git clone远程的代码库到本地 3. 创建本地分支 当前是 ...

  8. /MT、/MD编译选项,以及可能引起在不同堆中申请、释放内存的问题

    一.MD(d).MT(d)编译选项的区别 1.编译选项的位置 以VS2005为例,这样子打开: 1)         打开项目的Property Pages对话框 2)         点击左侧C/C ...

  9. 中缀表达式转后缀表达式(用于求字符串表达式值)(js栈和队列的实现是通过数组的push和unshift方法插值,pop方法取值)

    中缀表达式:就是我通常用的算术或逻辑公式: 后缀表达式:不包含括号,运算符放在两个运算对象后面,所有的计算按运算符出现的顺序,严格从左向右进行,不用考虑运算符优先级: 如,(2+1)*3 转换后,2 ...

  10. JStorm集群的安装和使用

    0 JStorm概述 JStorm是一个分布式的实时计算引擎.从应用的角度,JStorm应用是一种遵守某种编程规范的分布式应用:从系统角度, JStorm是一套类似MapReduce的调度系统: 从数 ...