Subscribe to the RSS feed then follow me on twitter at @mrlacey (misc) and @wpug (WPDev news)

Sunday, July 21, 2013

Configuring your WP8 app to indicate that it wants or requires more memory.

A few weeks ago I created some nuget packages to make it easier to work with the WMAppManifestFile, so you don't have to manually edit it.

Since then I've realized that to indicate that you want an app to use more memory if available or to require that your app must have more memory to run (and therefore can't run on low memory devices) also requires manually editing the WMAppManifest.xml file.

So, as you may have guessed, I've built some nuget packages that can set this up for you.

To indicate that your app wants to use more memory, you can update the manifest to indicate this, search for "WMAppManfest-Extended-Memory" or use:
PM> Install-Package WMAM-FCEM

Alternatively, if you want to indicate that your app should only run on devices with higher memory levels, you can update the manifest to indicate this, search for "WMAppManfest-Higher-Memory" or use:
PM> Install-Package WMAM-RM300


As with my other packges which manipulate the WMAppManifest.xml file, the changes that are made aren't undone when you uninstall so you can (I recommend) uninstall the packages straight after you've installed it.
You can also find these packages by searching for "WMAppManifest" in the package manager.

Read more about memory limits on Windows Phone 8 at http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj681682(v=vs.105).aspx

If you use these packages or have any feedback, I'd love to hear it.






Are you a Windows Phone, Nokia-X (Android) or Asha developer? If so, you could be getting rewards for the apps you build and the success they achieve by joining the DVLUP program.

2 comments:

  1. Only if you had named them so they'd be easy to find :)

    ReplyDelete
  2. @invokeit

    As with the related packages I created previously, the intention was that these can all be found by searching for "WMAppManifest". The actual package names were just a shorthand.

    I'm not creating a product or a brand or something with a memorable name that I would expect people to manually enter at the command line.

    The aim is to avoid the need to remember anything special other than that there are packages to help with editing the file. I assumed (although apparently wrongly in your eyes) that a search for the name of file that was to be modified would be suitable. If you do want to memorize something simpler then "WMAM" (short for WMAppManifest) works too.

    Admitedly, a search for "memory" only returns these packages on the third page of results (in my check just now) but the results are based (at least in part) on the number of previous downloads and as new packages this is quite small.


    Of course, if you'd really rather use a longer package name, so you could type "Install-Package WindowsPhone8UseMoreMemoryIfAvailable" or "Install-Package WindowsPhone8AppOnlyWorksWithHigherMemoryDevices" then feel free to create such packages yourself (even if they just wrap a dependency on mine). I fell that having to remember somethign longer, like the above, defeats the aim of reducing what needs to be remembered, especially if it must be entered in a case sensitive way.

    If I'd created something that was awkward to remember and you had to go and look up each time then it would be hard to claim a benefit over looking up how to edit the file directly each time.

    ReplyDelete