无法使用Windows Phone 8.1 RT中的LiveSDK上传到OneDrive

时间:2015-09-30 21:04:49

标签: c# windows-runtime windows-phone-8.1 onedrive live-sdk

我正在尝试将1 KB文件上传到OneDrive到现有文件夹。该应用程序是真正的Windows Phone 8.1设备上的WinRT。

代码非常简单,取自文档的例子:

    var lcc = new LiveConnectClient(session);
    //https://msdn.microsoft.com/en-us/library/office/dn659730.aspx
    var r = await lcc.CreateBackgroundUploadAsync(folderId, "somefile.bin", file, OverwriteOption.Overwrite);            
    var r2 = await r.StartAsync();
    return r2;

此代码是从异步按钮点击事件调用的。使用BackgroundUploadAsync时我会遇到相同的结果(这可能与使用前2种方法的方式相同)。

所以StartAsync方法执行,但没有收到响应,它等待无限期(它不会阻止UI线程),没有抛出可观察的异常,也没有上传文件。

folderId引用OneDrive上的真实文件夹。

我也没有注意到上传文件的任何问题。它存在,没有应用程序试图访问它。

使用类似的代码从OneDrive下载文件没有问题。

从Windows Store 8.1应用程序运行时,完全相同的代码工作正常。 Windows& Windows Phone应用程序使用相同的WinRT Live SDK库。所以我想问题是Live SDK使用的后台传输API。

1 个答案:

答案 0 :(得分:0)

我试图在单独的应用程序中隔离问题,但没有成功。相同的代码在另一个项目中正常工作。所以我重新安装(卸载然后从VS2015运行)应用程序,现在工作正常!