| 
 | 
	
 
 
  SkyDrive简单介绍 
  全称是Windows Live SkyDrive,它是微软推出的一款在线储存文件的网盘,用户帐户需要用微软帐户登录。现在Win8 系统自带这款应用,当我们装完win8系统,就可以看到Metro 桌面有这款应用,如果我们的win8系统是用微软帐户登录,那么进入这个应用就不会再要求登录了,这也是我后面要介绍的,在win8下,Live帐号单点登录的情况。 
  应用中集成SkyDrive的好处 
  其实这个好处也可以说是网盘的优点吧,网盘的优点我们都知道就是很方便,不需要依赖外接存储设备或某台PC,只要有网络我们就很方便浏览我们的文件。在我们应用中,我们可以依赖微软开放的SkyDrive SDK进行与SkyDrive的交互,当我们浏览某文件时,我们可以把该文件上传或共享到SkyDrive(目前共享已经实现),我们可以打开SkyDrive中的pdf文件,进行修改,修改完后我们还可以把该更新到SkyDrive中,当然这些操作都是需要与帐号关联。 
  应用中如何集成SkyDrive 
  微软已经开放了Live SDK,里面提供了对SkyDrive各类文件的访问接口,但该SDK 暂不支持C++,所以考虑利用C#封装Windows 运行时组件供C++调用。 
  单一登录 
  应用程序与Live SDK集成的一个关键优势就是可以利用Microsoft帐户进行单一登录,所谓单一登录,就是如win8用户只要利用Microsoft帐户登录PC,那Microsoft的应用程序(如Mail,Messaging,SkyDrive)都不需要再次登录,这样的好处就是提高了用户的体检性,用户不需要进行不同的应用,都会提示用户登录。 
  开放的接口 
  Live SDK中包括以下API:Live Api、Message Api、Identity Api、Hotmail Api 
  当然我们主要用到的就是Live Api(主要用于用户登录的判断及获取用户信息的)和SkyDrive Api 
  1、  Live Connect API获取帐户基本信息 
  2、  SkyDrive Api获取对应帐户下的所有文件夹及文件 
  (1)上传、下载文件 
  (2)更新文件 
  (3)删除文件 
  (4)新建文件 
  3、可以获取相册、视频、音频一些文件 
  具体可以参考http://msdn.microsoft.com/en-us/library/live/hh826521.aspx 
  如何调用接口 
  1、  先通过http://msdn.microsoft.com/zh-CN/live/ff621310打开网页,下载live SDK包 
  2、  安装SDK包 
  3、  首先,新建一个Windows Store 商店应用程序,然后添加引用,“扩展”—“Live SDK” 
  4、  接下来参照http://msdn.microsoft.com/en-us/library/live/ff621314.aspx给出的API,可以进行测试调用接口喽 
  5、  我们就先进行一个最简单的测试是否连接的接口 
 
 
 
///  
/// 登录 
///  
async private void LiveConnect() 
{ 
try 
{ 
if (!Windows.ApplicationModel.DesignMode.DesignModeEnabled) 
{ 
LiveAuthClient authClient = new LiveAuthClient(); 
LiveLoginResult authResult = 
await authClient.LoginAsync(new List() { "wl.signin", "wl.basic", "wl.skydrive", "wl.contacts_skydrive", "wl.skydrive_update" }); 
if (authResult.Status == LiveConnectSessionStatus.Connected) 
{ 
// An app level property for the session. 
session = authResult.Session; 
isConnect = true; 
liveClient = new LiveConnectClient(session); 
tbMessage.Text = "Connect Success!"; 
} 
else 
{ 
MessageDialog dialog = new MessageDialog("Connect Failed!"); 
await dialog.ShowAsync(); 
} 
} 
} 
catch (LiveConnectException exception) 
{ 
tbMessage.Text = exception.Message.ToString(); 
} 
} 
 
  6、  程序跑起来,呃,有错误,再仔细看看文档,原来调用Live SDK的接口前,还得配置我们APP,参照http://msdn.microsoft.com/en-us/library/live/hh826541.aspx地址给出的配置方法,我们Windows Sotre应用相对非常简单,只要参照以下步骤就可以啦,不过得要开发者帐号哦~ 
 
 
  如果我们只是想做一个简单的测试,那你可以先登录应用商店,建一个空应用,只要设置一个应用名称即可,然后按照上述步骤操作一下,接下来右击你的本地工程名 
  
 
 
  会提示你输入帐号,输完即会显示你所有的应用,点击你刚才建立的空应用即可啦~ 
  7、  OK,到这一步,设置都完成了,我们本地应用就可以顺利通过 
  8、  看下运行结果: 
 
 
   
   |   
 
 
 
 | 
  
 |