To access a string resource from within a resource file, the docs use this example:
<string id="menu_item_1_label">Item 1</string>
<menu id="MainMenu">
<menu-item id="item_1" label="@Strings.menu_item_1_label" />
</menu>
And this other example also from the docs (indicating it works whether quoted or unquoted):
<settings>
<setting propertyKey="@Properties.appVersion" title="@Strings.AppVersionTitle">
<settingConfig type="alphaNumeric" readonly="true" />
</setting>
<setting propertyKey="@Properties.myString" title="@Strings.MyStringTitle" prompt="@Strings.MyStringPrompt">
<settingConfig type="list">
<listEntry value="0">@Strings.HelloWorld</listEntry>
<listEntry value="1">@Strings.Ackbar</listEntry>
<listEntry value="2">@Strings.Garmin</listEntry>
</settingConfig>
</setting>
<setting propertyKey="@Properties.myNumber" title="@Strings.MyNumberTitle" prompt="@Strings.MyNumberPrompt">
<settingConfig type="numeric" errorMessage="@Strings.MyNumberError" />
</setting>
<setting propertyKey="@Properties.screenSleep" title="@Strings.ScreenSleepTitle">
<settingConfig type="boolean" />
</setting>
<setting propertyKey="@Properties.username" title="@Strings.UsernameTitle">
<settingConfig type="alphaNumeric" required="true" />
</setting>
</settings>In some places it doesn't work though, eg:
<resources>
<properties>
<property id="pushupTitle_prop" type="string">@Strings.pushupTitle</property>
</properties>
</resources>
In this case, "@Strings.pushupTitle" gets passed through as a string literal without resolving to the value of "pushupTitle" from the resource file (ie I get "@Strings.pushupTitle" displayed on the screen).
I saw the same behaviour in a <jsonData> block.
So it seems that string resources are not parsed/converted everywhere they occur in a resource file (at least not in <properties>, <jsonData>, but anywhere else?)..
What are the rules regarding where they will/won't be parsed, is it documented somwhere?
Thanks for any help