locked
App Crashes with "Getting info from XYZ" when accessing settings pane. Limit of entries reached?

    Question

  • Hi,

    a user of my app reports that the app crashes when accessing the settings charm. The charm shows the text "Getting info from <AppName>". After A while the text changes to "Can't get settings for this app right now" and a little while later the app is terminated.

    After several thousand downloads from the Store this is the first time, that such a problem is reported. During the development of the app I came accross a similar problem: When I tried to add more than 7 setting entries in OnCommandsRequested() the app showed the same problem and crashed with an exception:

    The operation attempted to access data outside the valid range (Exception from HRESULT: 0x8000000B)
    
    Too many SettingsCommand items have been added to the Settings pane.
    at System.Runtime.InteropServices.WindowsRuntime.IVector`1.Append(T value)
    at System.Runtime.InteropServices.WindowsRuntime.VectorToCollectionAdapter.Add[T](T item)
    at Microsoft.Advertising.WinRT.UI.AdControl.onAdSettingsCommandsRequested(SettingsPane settingsPane, SettingsPaneCommandsRequestedEventArgs eventArgs)

    It seems that it is not allowed to add more than 7 entries to the settings pane and the app crashes because the Advertising SDK tries to add its privacy statement.

    After I discovered this limitation I removed one entry from the settings and the problem was solved.

    How is it possible that this problem shows up in the store version of the app although the number of entries has been reduced? How is it possible that (as far as I can tell) the problem only shows up at one device while it works without any problem on thousands of other devices?

    A theory:
    Could it be, that (for some reason) the system tries to add another entry to the settings on this devices and thus triggers the problem? What kind of entry could that be? Why is it not added on other devices?

    Thank you very much!

    Wednesday, June 4, 2014 11:54 AM

All replies

  • I'd recommend collecting your settings into a SettingsFlyout and adding fewer groups directly onto the SettingsPane. You are correct that there are limited settings slots available.

    That said, do you know what language the system you see the problem on is running? I suspect it's the automatically added Privacy setting that's new with the recent Update. That shouldn't duplicate an existing setting, but it's not always detecting that.

    Wednesday, June 4, 2014 2:31 PM
    Owner
  • Hi,

    the system is running in German, as well as our test devices and the devices of several thousand other users. If the system would add some language specific menu item the problem should show up on all/most/more devices with the same language, shouldn't it?

    Also this is a very bad behaviour of the system: Is there any documentation that describes the item limit? The system should warn the developer immediately if too many items have been added. If the limit is 7 items and there are only 7 items the developer did nothing wrong. The system should show some kind of warning or something link this instead of crashing the app when it adds more items.

    What number of items is save? 6 items? What happens if the systems tries to add 2 more items? 4 items? What happes if the system tries to add 4 more items...

    Thursday, June 5, 2014 6:15 AM
  • The documented guidelines are to add no more than four:

    Group similar or related options together under one entry point. Avoid adding more than four entry points to your Settings pane.

    The hard limit of 7 is documented at Adding app settings . System provided Permissions, Rate & review, and Privacy Policy settings do not count against these 7.

    Thursday, June 5, 2014 6:29 AM
    Owner
  • Thank you very much. I will try to shorten the list in a future version. Meanwhile I was able to send the user a test version which adds NO setting items at all. The result is the same: The app crashes whenever the user tries to access the settings pane.

    How can this be?

    EDIT:
    I just received a crash dump from the user. I tried to examine it with Visual Studio and WinDbg but have not been able to find out what causes the problem.

    I have uploaded the dump with the EXE, PBD and sym files to my OneDrive. Maybe someone else can find any information (I don't have a lot of experience in debugging dumps...)

    http://1drv.ms/1p9sdjR

    Thank you very much!

    • Edited by Agenor Thursday, June 5, 2014 12:33 PM Link to Dump added
    Thursday, June 5, 2014 8:26 AM
  • It looks like the error occurred when trying to call your CommandsRequested event hander, but the dump doesn't have more details beyond that it failed calling the delegate.

    --Rob

    Thursday, June 12, 2014 5:47 PM
    Owner