Wednesday, September 17, 2008

iPhone Background Location Service

Is great that the iPhone will get a push notification service but that does not solve another major benefit of having a background running apps. And that is allowing some services like Whrrl to know  your location all the time.

There is a way for Apple for provide this with little loss to battery life if it is made to work as smart as the push notification service. 
The iPhone should be able to send its location to a cloud database in a smart way only when needed and only when users have a potential application that requires that service.

 When users have a certain application installed that benefits from accurate location of the user even if he is not online, that service should be able to subscribe to a "location feed" coming from the iPhone to that cloud. Such feed will be closely tied to the accelerometer readings. Apple can make a research by recording the types of accelerometer data the iPhone produces, when carried in the pockets, in the car and so on. Based on that info iPhone will know if it is standing still, moving at walking speed or at a car speed. Consequently any updates to the iPhone location will only be made according to the area of certainty the user wants other people to know about them.
Say the user sets that area to 1 mile radius.
So if he stands still, no updates will be made after the initial on. If he moves at waling speed, updated will be made every 20min and if he moves with a car speed, updates can be made every 2 minutes as there is a charger at the car. So the iPhone can update this cloud database of its location smartly and other services can retrieve it from there. 
If that user wants to know is other people he knows are around him, he can subscribe to the push notification feed of that service. And if he receives a push notification message he is interested in, he can only then launch the location based application and update his location more accurately

This will provide the best of both worlds: functionality and battery life.  

There are also so many other sources of information besides the accelerometer that can tell the device if it is power-wise to update the location now. Cell tower signal strength and number, presence of a wifi hotspots can tell if the device is in a tunnel and GPS reception is week and lots of power will be lost to send any updates. Similarly, updates can also be send when the device passes near a cell tower or a wifi hotspot, so that minimal power is used.  The important thing is to rely heavily on passive sensor fusion and learn about the surrounding environment with minimal power loss. A concept Apple can borrow from the F-22 Raptor Electronic Stealth.

Users will find that their device retains the most important part of the functionality of their location based apps without having to run them.

No comments: