Thursday, 8 March 2012

Windows Phone App Devs Can Now Target Low-End Devices | Technology News

Windows Phone developers can now start building applications for lower-end devices that run under the newly launched Tango platform release.

The new OS flavor was made official at the Mobile World Congress in Barcelona, where the first handsets to run under it went official (Nokia Lumia 610 and ZTE Orbit among them).

These devices pack lower hardware inside, including a reduced amount of RAM, but Microsoft claims that the experience they will be able to deliver will be similar to the one available via higher-end Windows Phone devices.

However, lower hardware capabilities involve limitations when it comes to running software, and Microsoft is offering some general guidelines for developers who would like to make sure their applications can run on these devices.

For example, they should ensure their applications feature fast startup times. “Minimizing code in App/Page constructors and keeping Launching/OnNavigatedTo activity minimal” are great ways of achieving that, Mike Battista explains in a blog post.

“Adding a splash screen can additionally improve startup time since this frame is drawn by the OS itself as part of the launch sequence. Furthermore, simplifying and removing unnecessary XAML from your pages will reduce the impact of XAML parsing which can prolong startup significantly,” he continues.

Moreover, he notes that apps designed for the new OS flavor should not eat more than 90MB of memory, which is a lot altogether for devices that pack only 256MB of RAM.

Developers should consider using memory profiler and memory-related API’s to profile the app’s memory usage. They should also make sure there are no memory leaks in their apps, as they might result in crashes.

Microsoft has freed up RAM for foreground processes in Windows Phone Tango by disabling generic background agents. Users can disable these agents for applications through the Settings control panel, thus freeing up even more memory.

“On 256MB devices, the app receives the same InvalidOperationException received in the maximum exceeded case above when trying to schedule a background agent (since the maximum number of supported background agents is 0),” Battista notes.

Applications that have been written to handle the maximum exceeded case will work on devices that feature 256MB of RAM unchanged.

“Make sure your apps handle this exception path and degrade gracefully when these features are unavailable. This will benefit your app experience both on today’s generation of devices as well as on new lower cost devices. The 256MB emulator introduced in the WPSDK 7.1.1 enables you to easily test this code path,” he also notes.

No comments:

Post a Comment