不能从Windows Phone 8.1 RT使用LiveSDK上传到OneDrive

本文关键字:LiveSDK OneDrive 使用 RT Windows Phone 不能 | 更新日期: 2023-09-27 18:15:27

我试图将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(这可能与使用top 2方法相同)时,我经历了相同的结果。

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

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

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

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

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

不能从Windows Phone 8.1 RT使用LiveSDK上传到OneDrive

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