Dynamic Memory Estimation Windows Phone 8.1

An update means improvements, bug-fixes & new features. Windows Phone 8.1 brought with itself hundreds of improvements .. some easily visible and some under the hood changes but really really important.

Let’s talk about some of those changes which you would probably not know unless you are a developer

App Memory Peformance

  • A Lumia 630 with WP8.1 on-board would work similarly to a Lumia 920 with WP8.0 despite just having 512MB RAM.
  • The above is possible with a new improvement in WP8.1 called ‘Dynamic Memory Estimation‘.
  • Apps in WP8.0 had predefined memory caps. The 512MB RAM device (eg. 520) would have 150MB reserved for Apps whereas a 2GB RAM device (eg. 1520) would have 450MB reserved for Apps.
  • This resulted in the annoying ‘Resuming …’ screen more often on the 512MB RAM devices as the app would take time to settle.
  • Well all that changes in WP8.1 as the Strict memory caps are now gone, the system not studies an app’s memory usage and adjusts the caps accordingly which means better app performance and less of those ‘Resuming …’ screens.
  • Devices with 512MB RAM devices after 8.1 will see lesser of those ‘loading’ screens whereas devices with 1GB RAM or more would mostly never experience them.

Dynamic Memory Estimation Windows Phone 8.1

  • It must be noted that every 8.1 App would fast resume by default (no loading screens etc etc) from the App Switcher and the back buttons would not close the apps anymore. In order to close the app you would need to go to the app switcher and close it by swiping it down or pressing the ‘X’ button. The above behavior would be specific to apps only designed for 8.1. The apps in the older format or designed for 8.0 would continue to behave in the same way unless they get updated.

Multitasking Improvements

  • Microsoft introduced a new tool in WP8.1 called ‘Trigger-based Execution‘ which means an App would only start working in background upon a trigger say push notification, geofence, Bluetooth LE device, schedule, or sensor (Eg. your run tracking app would only start working in background when you connect your fitness band).
  • Another new implementation is ‘Push to wake a task‘. With it in action, an app would start running in background even before the ‘Toast notification’ pops up which means the app in background will be ready with the new information even before the notification reaches you and thus lesser ‘Resuming’ screens.
  • In 8.1, Windows Phone now uses the same tool for notifications as tablet/computers which means the toast notification data can be shared directly between Windows & Windows Phone. WP8.1 now also shares common live tiles with Windows.

Apps Packaging in WP8.1

  • The new .APPX package in 8.1 (which was previously .XAP) is now much more segmented with separate packages for say Resolution or Languages, what this effectively means is that now when you download an App from store your phone (say Lumia 920) would only download packages related to 720p resolution and relevant language.
  • Also when updating an app in 8.1, the phone will only download the data that has changed & not the entire package again. This means that if in a 20MB app only say a 500kb has changed then only 500kb would be downloaded and not the entire 20MB. This would reduce download size & result in streamlining of updates.

Apps Packaging in Windows Phone 8.1

Installing Apps to SD Card

  • Now you can install Apps to SD Card in WP8.1. There are a few steps taken by Microsoft to prevent privacy as in if you swap your Micro-SD card filled with Apps to another device, they won’t work there. The Apps on SD Card are encrypted with a key specific to the device. The apps data stored on SD card will be isolated and not available to users. Note this ‘All apps in Windows Phone 8.1 can be installed to SD cards by default‘.
  • While this means that most of the apps can be installed to SD Card, developers can still opt out of the feature if they want to by a flag in their apps manifest.

New App model in Windows Phone 8.1

App Backup & Roaming

  • You can move data between Windows Phone & Windows apps if they are made in ‘Universal Apps’ model.
  • In WP8.1, the Start-screen data gets automatically backed up to OneDrive daily. Developers can also enable App data backup, which lets the App decide what data to store to OneDrive for restoration purpose. All this data being transferred to OneDrive will be small with each app having a quota of its own.

App Backup & Roaming in Windows Phone 8.1