As a consumer MeeGo device is soon to hit the market we have some exciting stuff to think about. Power management is an area that is of high interest with mobile device manufactures, as mobile devices tend to be on longer with some apps running in the background. A developer friend of mine made this observation regarding handsets and tablets compered to netbooks and laptops. He explained how he is seeing more and more people walking about with smart phones and tablets powered on and in hand. They have earphones jacked in most of the time, walking or communicating with others, all the while doing a task on the device. His point was, this is not a practice you see with netbooks and laptops.
With a fully multitasking capable device like a MeeGo tablet, this posses a double edge sword issue. While you can run multiple apps without having to shut apps down, it does mean that you might have many apps taking up CPU cycles, and using the battery unnecessarily.
In other words the OS advantage can cause unintended battery use; i.e. if you are gaming then switch to SMS or web browser that game could move to the background still running, still taking up CPU cycles and energy. A greener solution is to throttle the app so it doesn’t use the CPU until it switched to the foreground and needs it. Because of this OEMs are looking to throttle apps when they are not in the foreground, to cut down on unintended battery use.
However for background applications, we probably don’t want to do this. If I’m using a music player, rather than a game, and then switch to my web browser, unlike my game, I probably want my music to still play. If my music app is throttled when moved to the background, then the music could stutter or stop playing all together.
Because of this scenario, we are now allowing apps to be submitted with information on whether or not they are a background application. This will inform device manufactures not to throttle those kinds of apps, so they perform well when they are running in the background. For more information on background apps see our Power Managent FAQ article
We have two methods for developers to set their apps as background apps. For apps packaged via AppUp Encapsulator we will be capturing a background option as part of the AppUp Encapsulator packaging form. However for other apps, i.e. created in Qt Creator, we’d like all legitimate background apps to edit their .DESKTOP file to designate them as a background app. For more information on how to do this read our article on setting the desktop file entry
These two solutions will allow apps designated to run in the background, to do so without being throttled.
Also over the next few weeks we will be adding additional information and optional best practices for foreground apps that may be throttled. It will be the developers’ choice as to the steps to take to ensure the best experience for his or her app. Our aim is to provide you with the information on options needed to ensure a good app experience on mobile devices running AppUp. So, more to come.
In the meanwhile, consider if your app is a background app, and follow our instructions on designating your app properly. As always, feel free to drop us a line for any questions.
Source AppUp Developer Program