I am building a UWP app which supports two languages (en and de). I have created both Resource.resw
files and and a testfile.xml
which is basically the datasource of my application. If I run the app directly from Visual Studio (DEBUG
or RELEASE
mode) it's working fine, but once I install it from the store or sideload it to the device via WinAppDeployCmd.exe
it does not load the resource from Resources.resw
This is my file structure inside the Strings directory:
I have the link to the testfile specified in the Resources.resw
file like this:
Once the app is launched I use a ResourceLoader
to retrieve the value of the Testfile
key to load the right (en or de) file.
var loader = new Windows.ApplicationModel.Resources.ResourceLoader();
var value = loader.GetString("Testfile");
var testfile = Path.Combine(Package.Current.InstalledLocation.Path + "/Strings/", value);
During the build process these warnings show up in the output window
MakePRI : warning 0xdef01051: No default or neutral resource given for 'Files/Project/Strings/testfile_de.xml'. The application may throw an exception for certain user configurations when retrieving the resources.
MakePRI : warning 0xdef00522: Resources found for language(s) 'en,de' but no resources found for default language(s): 'en-US'. Change the default language or qualify resources with the default language.
Do you have any idea why the resource is not loaded when the app is installed via the store or sideloaded?
Set
<DefaultLanguage>en</DefaultLanguage>
for every.csproj
in your solutionOpen the package manifest for your app, default setting is en-US. Change that to
en
!