我正在尝试为我的 WinRT 实验设置一些特定于应用程序的项目(例如 API 密钥)的配置文件。
到目前为止,我在项目的根目录中添加了一个“config.xml”文件,将其标记为属性中的资源……然后我就卡住了。
我能找到的每个示例似乎都处理 JSON 资源文件(它们在某种程度上与约定的本地化相关,并且似乎不适合一般配置内容?),从磁盘加载文件(由于资源被编译,这不起作用进入 .pri 文件),或使用 C#。
那么如何在我的 Javascript/HTML5 应用程序中进行这项工作呢?
我最近的尝试是这样的:
var uri = new Windows.Foundation.Uri('ms-resource:///config');
var xml = Windows.ApplicationModel.Resources.ResourceLoader
.getStringForReference(uri);
但这不起作用并引发以下异常:
0x80073b1f - JavaScript runtime error: ResourceMap Not Found.
我错过了什么?
我觉得我越来越近了:
var r = Windows.ApplicationModel.Resources.Core.ResourceManager
.current.mainResourceMap.lookup('Files/config.xml');
var candidates = r.resolveAll();
candidates[0].getValueAsFileAsync().done(readXml);
这会找到文件资源,但候选包含的只是文件的原始绝对路径,因此getValueAsFileAsync()
会抛出异常“系统找不到指定的文件”。(并且readXml
没有调用回调)。
所以我似乎仍然无法获得这个 XML 文件的内容。