无法访问 OneDrive 上的文件; HoloLens 运行时

Can't access file on OneDrive; HoloLens runtime

我开始使用 Microsoft HoloLens。

我对 C# 编程完全陌生。所以这可能是一个简单甚至愚蠢的问题,但我无法解释,也找不到任何相关信息。我使用 Unity 2018.4.21f1 Visual Studio 2019 和已经提到的 HoloLens。

期望的行为:

我想编写一个可以打开 FileExplorer 的应用程序,我可以从下拉菜单中 select OneDrive,选择一个 .obj 文件(让我们以 cube.obj 为例)和此文件在运行时得到处理和呈现。

当前行为:

我可以使用 FileOpenPicker select OneDrive 中的文件,但随后出现以下错误消息:

Exception thrown at 0x76C330D2 in APP.exe: Microsoft C++ exception: Il2CppExceptionWrapper at memory location 0x0210C090. DirectoryNotFoundException: Could not find a part of the path "C:\Data\Users\marcu\AppData\Local\Packages\microsoft.microsoftskydrive_8wekyb3d8bbwe\LocalState\OpenFile\cube.obj".

备注:

如果有人有类似的问题可以帮助我解决这个问题或者给我提示,我将不胜感激。

默认情况下,UWP 应用只能访问某些文件系统位置,例如 ApplicationDataPackage.InstalledLocation。遗憾的是,您无法通过路径直接访问OneDrive中的文件。

但是您可以将此文件从 OneDrive 复制到 ApplicationData.Current.LocalFolder by calling the method StorageFile.CopyAsync(). Because the LocalFolder 是您的应用程序可以自由存储数据并在安装应用程序时创建的文件夹,您可以通过字符串路径从 LocalFolder 访问此文件。