6
我正在尝试为我的WinRT实验设置一些特定于应用程序的项目(如API键)的配置文件。在Javascript WinRT应用程序中读取XML资源文件
到目前为止,我在项目的根目录中添加了一个“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文件的内容。
感谢您的建议,但这仅适用于文件在属性中标记为“内容”的情况。我将它标记为“资源”,因此它不再存在于磁盘上。 –