I am having severe problems getting an app working in Retail Mode on the Xbox One.
The app works fine in Dev Mode, I have uploaded to the store and it passes certification fine but when the app is then installed via the store onto a Retail Xbox One it refuses to run.
Firstly it was crashing whilst on the splash screen, no error message just returning back to the Xbox homes screen, Due to now being in Retail mode I cannot connect a debugger to the app. I've setup my own exception handler to send errors to my backend server and it was crashing with the exception:
Cannot create instance of type 'Microsoft.Advertising.WinRT.UI.AdControl'
It's using the latest Microsoft.Services.Store.SDK and therefore Microsoft.Advertising SDK for XAML. I've took out the AdControl from MainPage.xaml and now we have a UI come up on screen! Not ideal as the ads are needed for monetization.
Unfortunately that's not the end of the problems, during the app initialisation it copies files from the Data folder of the solution to localstorage, for some reason it's now hanging on the following:
StorageFile anjFile = await localCacheFolder.GetFileAsync(App.AbilitiesFileName);
What's so different running apps on the Xbox in Retail Mode compared to Dev Mode? The app also functions fine on mobile and desktop so I know there shouldn't be any problems. The only way to try and find out what's causing problems is to comment out lines, or put placeholders in the app to change a debug textbox on screen to see what part of code is running and rebuild and submit to the store again, wait for certification and then redownload from the store to the Xbox, a very slow and time consuming task and I'm now up to Submission 12 of an app I'm getting very frustrated with!
Update: Seems like the AdControl issue started around 9th Feb and is affecting several apps on Xbox One and is possibly due to a framework update to the libraries involved. Not sure why it isn't affecting Dev Mode as well.
Thanks a lot for reporting this issue out on the forum and helping us with investigations. The root cause of the issue has been identified and fix has been rolled out. The framework update will take a couple of days to reach most devices as and when any new app or updated ad-enabled app gets updated on the Xbox device.
Dev Mode only: The issue doesn't affect Dev mode and only Retail mode since Retail mode actually is the most secure and most strict environment and requires that all binaries involved are signed and certified. If anything is missing, Retail mode is the only one which will surface the issue in this fashion - not loading the libraries.
Fix and roll out process: You could reach out to the users who reported problems for your app and ask them to re-install your app. The other option that you (as a developer) have is to push an update to your app (only version change) and push it to your users. This will get the framework updated on the end user devices and speed up the fix roll out. Those developers who had taken off the ad control, please put it back and push the update for your apps.
Please feel free to reach out to us ([email protected]) in case of any issues or queries regarding this topic. Thanks for the patience and sorry for the inconvenience caused during this period.
-Vivek.