Backitude App: FAQ

Troubleshooting


Is there anything I need to do before launching Backitude?

Although permissions and activation will vary per device, I would strongly recommend doing two things before trying to run Backitude.


  • Sign into Latitude from a PC browser. (It is very important to sign in from a PC browser because the link is not accessible through an android device). This is required by some devices for authentication purposes, to "opt" your Google account user into Latitude.
  • Activate Google Latitude on your android device using the Maps or Latitude application. Simply sign-in to Latitude and your device will be activiated. This should obtain the required permissions your device will need to make location updates to Latitude.

How can I tell if Backitude is successfully updating my Google Latitude location?

To first test the application, you can Enable Backitude or click the Extras > Fire Update function to perform a one-time update.  Once the location polling period expires, there are a couple methods to verify your location has updated.


  • Once location polling has completed, watch for a quick "Latitude location updated!" message to appear at the bottom of your screen. (requires that "Display Update Message" is enabled in Backitude > Settings > Standard-Mode Settings)
  • Select Extras > View Last Update to observe the time and location values for the last update to Latitude.
  • Observe and refresh the Latitude website from a PC or alternate device as you run Backitude from your device.

Backitude is not updating, what can I do to confirm my device and Google account have the necessary permissions for Backitude to function properly?

Start fresh by trying the following steps to reset your Google Latitude permissions


  • From your android device, launch the Maps > Latitude application and Sign out. On the latest version, this is accomplished by going to Latitude > Menu > Location settings > Location reporting > Latitude location sharing > Sign out of Latitude
  • Next, go into Android > Settings > Applications > Manage Applications > Maps and click the "Clear data" button.
  • Similarly, uninstall the Backitude application by completing the following: Android > Settings > Applications > Manage Applications > Backitude, and click the "Uninstall" button.

Now, follow these steps from a PC browser to remove access (so that we can then add them back)

  • Visit www.google.com
  • Sign into Google using the account you are trying to configure for Backitude
  • Go to Google Account settings, or click the link in the next step
  • Under Security, select the link for "Authorizing applications & sites"
  • Revoke access to any applicable "Android Login Service" entry including those such as "Full Account Access" and "Google Latitude"

Everything is now successfully reset, so perform the following steps in order.


  • Sign into Latitude from a PC browser. (It is very important to sign in from a PC browser because the link is not accessible through an android device). This is required by some devices for authentication purposes, to "opt" your Google account user into Latitude.
  • Enable Google Latitude on your device using the Latitude app. If multiple accounts exist on your device, you may have to select the appropriate account by going to Maps > Menu > Settings > Switch Account. Then, or otherwise, sign-in to Latitude from your android device.
  • Finally, you can try to re-install Backitude and successfully update your location to Google Latitude.

Why else could Backitude not be updating my Latitude location?

Although Backitude is far from perfect, there are also some issues affecting a small percentage of users that are out of my control and preventing updates.  In any case, feel free to contact the developer to verify.


  • Sometimes updates are prevented unexpectedly because of the Backitude configuration. Verify your settings. Check out your accuracy requirements and minimum change in distance requirements, for example, to ensure the location values are not being omitted for any reason.
  • Network connectivity unavailable. This can be lost when there is no signal or, in some situations, when a phone call is in progress.
  • Location is unavailable. Device location detection is not enabled or not available at this time. An easy way to determine if your device can detect its location is to open Maps and identify your location on the map.
  • User Forbidden: The user has not opted into Latitude.  Permission problems could exist if the previously described steps are not executed correctly.
  • The manufacturer for the device may have tweaked the Android OS it is running.  Even though it is still considered compatible (Android 2.2+), these changes sometimes limit functionality or require additional permissions. I can try adding Android permissions if you think this applies to you, however you may have to wait until an OS update is available for your system.
  • Latitude service is unavailable at this time.  This can actually happen, although infrequent.  Try again later.
  • The developer screwed something up.  Feel free to email me.

General Settings


What does "Variable" mean for the Minimum Change in Distance option?

Setting the option value to "Variable" means that the minimum required change in distance to update Google Latitude will vary based on the accuracy of the new locations. The minimum change in distance for updating equals twice the value of the accuracy of the new location. This means that if your new location value has an accuracy of 4 meters, the minimum change in distance required is 8 meters. If you have a momentary drop of GPS signal, or loss of GPS signal altogether and your new current location value has an accuracy of 1000 meters, then a change in distance in order to use this new location is 2000 meters. The option is designed for users who may be in and out of GPS signal, and want to be more restrictive about uploading inaccurate values. When locations are based on triangulation and network locations, values may "bounce" around a little even though your device is not moving. A minimum change in distance filter, especially a "variable" one, helps to eliminate these (realistically, duplicate) updates.


What does selecting Fire Update do?

By clicking the Fire Update option, the application will perform a one-time location poll according to the time-out settings, and will update your Latitude location. It can be triggered while the normal service is enabled or while disabled. There is also a Fire widget to perform the same operation.


What is the Location Polling Timeout setting?

When polling for a location, especially while using the GPS, the device is consuming battery power. (This is essentially why Latitude omitted the use of GPS with their background updates)   In the event that a GPS signal is not easily acquired- ie, while indoors or amongst tall buildings or trees, the application has a timeout value to stop the location polling after this amount of time has passed.   Backitude will then use the most accurate location value detected before the timeout, unless the Accuracy Filter is enabled and the previous location is more accurate and falls within the bounds of the current value. In that case, the previous location value is repeated.


How do you define 'accurate location' in reference to the option for the Accuracy Filter option?

An acceptably accurate location is judged by the availability of the various location providers. If GPS is enabled, the application is striving for a value that is as accurate as the minimum GPS accuracy requirement as configured in the options. If GPS is not enabled, the application is striving for a location as accurate as the Wi-Fi minimum accuracy requirement.


What is the purpose of the Latitude Re-Sync Rate setting?

Re-Sync Rate uses your last detected location to update Latitude at an additional rate without polling for a new location.  Re-Sync updates will take place in addition to the normal updates from timers, steals..etc  This can be especially beneficial for a number of reasons.


  • For users who are also allowing the Google Latitude application to detect their location, the Re-Sync timer allows for your last detected Backitude location to be sent to Google Latitude more frequently than the actual Backitude location polling takes place. Having this capability allows the user to select a slower Location Polling rate to preserve battery-power, but send the value more frequently to Latitude in an attempt to prevent the value from being overwritten by Latitude detection.  If too much time passes in between updates from Backitude, the Latitude application itself will overwrite your location with its own detected value (which is generally much less accurate and uncontrollable).  Re-Sync Rate helps keep your Backitude location visible in the Latitude system without putting a huge strain on your battery.*
  • Re-Sync Rate can be used to prevent your location from going "stale".  Latitude lists friends with their "location last updated" and after an extended amount of time can be categorized as "stale".  The Re-Sync feature can still be utilized to give your location more recent update values.  Your location can always appear current, without having to drain the battery polling for locations every minute.  Set your Location Polling timer to whatever you desire, and use Re-Sync Rate to always appear fresh!
  • Re-Sync Rate can also be used to bypass the Backitude's Minimum Distance filter.  Consider the scenario where you poll at a 5-minute interval with a required change in distance of at least 100 meters to update Latitude. If you haven't changed locations all day using this configuration, your Latitude will grow "stale" because the updates are not sent to Google. However, using the Re-Sync Rate of 1 hour, you can bypass the minimum distance requirement and at least update your Latitude every hour so your friends know where you are, but you're Google Location history will not become bloated with repeat values.

*If power consumption is an issue, it is recommended that you turn off the location detection within the Google Latitude app. This will give you complete control of your location updates via Backitude and allow you to completely manage battery consumption and location updating. Go into Maps > Latitude > Menu > Location settings > Background location reporting > Set your location. Manually select an arbitrary location on the map, which will then be overwritten and updated by Backitude from this point forward. It is important NOT to select the option for "Do not update your location" because this will hide your location from all of your Latitude friends. Disabling Latitude location detection may also alleviate the need to use Backitude's Re-Sync Rate. Turn Re-Sync Rate to "None" and save even more battery power.


What are "Steals" in reference to location updates?

The concept of "stealing" locations came about to more accurately and frequently update Latitude without the additional consumption of battery power attributed to GPS polling. When another application (such as Google Navigation, Google Maps, or even a web browser) is active and already polling your location, Backitude will "steal" this value and use it to update your Google Latitude. When a qualifying value is acquired, Backitude also restarts your updating time interval and prevents the location detection service from having to waste battery life on unnecessary location polling that is already occurring.


Can someone use Push Updates feature to force an update on my device even though they do not have Backitude or even have an Android smartphone?

Yes, if enabled, triggering an update via SMS can come from anyone as long as the same message text is sent and it is delivered as an SMS (the method will not work for MMS). The SMS can even be sent from email, if appropriately addressed and sent as an SMS using the following addresses:

  • AT&T - cellnumber@txt.att.net
  • Verizon - cellnumber@vtext.com
  • T-Mobile - cellnumber@tmomail.net
  • Sprint PCS - cellnumber@messaging.sprintpcs.com
  • Virgin Mobile - cellnumber@vmobl.com
  • US Cellular - cellnumber@email.uscc.net
  • Nextel - cellnumber@messaging.nextel.com
  • Boost - cellnumber@myboostmobile.com
  • Alltel - cellnumber@message.alltel.com

How can I disable the status bar notification that displays everytime Backitude polls a location?

This is surprisingly one of the most frequently asked questions.  The status bar notifications can be configured in the Status Bar Icon setting found under Additional Settings to never display or only display under certain conditions.


Is there a limit on the number of offline location values that can be stored for future sync, or an expiration when these values will be deleted automatically?

No. There is no application limit on the number of offline storage records that are allowed to be saved. The actual limit will really depend on available storage on your device, but should never be an issue considering the size of each location record is minimal.  Offline records do not expire and will never be automatically deleted.


Advanced Settings


How can I prevent Backitude from using the GPS entirely but still update my Google Latitude location?

The primary attraction of Backitude is the controlled and timed use of GPS in the background to update Google Latitude locations. For those who are not typically within reach of GPS satellites but still want to take advantage of Backitude's control and battery efficiency, can disable GPS use altogether within the application. Under Advanced Settings > Set Priority, the location providers can to restricted to completely disregard GPS by selecting "Wi-Fi only" or "Wi-Fi with Tower Triangulation backup".  Under one of these configurations, GPS will not be activated by the application even if Stand-alone GPS use is enabled for the Android device.


Is there a way to disable GPS use when Wi-Fi location discovery is available?

Under Advanced Settings > Set Priority, the location providers can be prioritized or omitted as desired.  Use any of the "Wi-Fi"-first* options to omit or stop GPS polling when Wi-Fi locations are discovered.

*It is recommended to prioritize Wi-Fi as the highest provider in general because typically if Wi-Fi locations are available, the device is indoors where it will not be able to acquire a GPS fix anyways. This will prevent the device from needlessly polling the GPS to the extent of the timeout value.  Also, when outdoors and the Wi-Fi location is not available, the GPS will still continue to poll as normal.


My device does not always have the best GPS reception or access to Wi-Fi networks, however I do not want my location to fallback on inaccurate cell tower location triangulation methods. Can I prevent the use of cell tower location triangulation values?

Under Advanced Settings > Set Priority, the location providers can be prioritized or omitted as desired.  Use any of the options that do not include "Tower triangulation" and location detection will be forced to conform to the requirements set in the GPS and Wi-Fi minimum requirements settings in order to update with a new location.


Will this application keep my system awake?

No, this application will not keep your system awake nor drain any unnecessary battery power. When sleeping, Backitude does have the ability to wake the system to perform the location update. Waking the system is required in order function properly during this time. However, there are options under Advanced Settings to turn this off if desired. The downside is obviously that your device will not update your location when sleeping.


Tips and Suggestions


How can the concept of a "steals-only" mode be acheived? (meaning that Backitude will never poll my location, but will still update Latitude when a location value is available)

A "steals-only" mode can be achieved by selecting "None" for the Standard-Mode Settings > Time Interval Options and enabling Steals.  However, it means that the Backitude location polling will not run at a timed interval, and will simply wait until it acquires "stolen" locations with which to update Latitude.


How can the concept of a "docked-only" mode be achieved (meaning only run location polling when my device is plugged in and charging the battery)?

A "docked-only" mode can be achieved in essence by checking Docked-Mode Settings > Docked-Mode Enabled, and also selecting "None" from the Standard-Mode Settings > Time Interval Options.   By doing so, Backitude will only poll GPS when the device is docked, but also "steal" locations at any point if that function is enabled as well.


What are some tips for minimizing Backitude's power usage?

GPS polling is a battery-intensive function.  This is why Google Latitude purposefully omitted GPS use from their background location detection.  For those who downloaded Backitude and want the functionality regardless, there are some tricks to make the most out of your battery life. Try any combination of the following to meet your needs:


  • Turn off Latitude's location detection*
  • Select a longer, less frequent, Time Interval for polling your locations. The GPS will run less and less battery power will be consumed.
  • Select a shorter Location Polling Timeout so when polling your location, it will run the GPS a shorter length of time if a fix cannot be acquired.
  • Try disabling Location Steals so the application isn't constantly listening for locations.
  • Use the Android Power Control widget, or similar, to disable the GPS when indoors.  All apps, not just Backitude, will be more efficient if it is not wasting power trying to detect a GPS location it will never be able to acquire
  • Try the configuration concept referred to as "docked-only" mode as mentioned above.
  • Disable wake locks under Backitude Advanced Settings. This will prevent your device from waking up from sleep mode to perform location updates. The downside is obviously that your device will not update your location when sleeping.

*If power consumption is an issue, it is recommended that you turn off the location detection within the Google Latitude app.  This will give you complete control of your location updates via Backitude and allow you to completely manage battery consumption and location updating.  Go into Maps > Latitude > Menu > Location settings > Background location reporting > Set your location.   Manually select an arbitrary location on the map, which will then be overwritten and updated by Backitude from this point forward.   It is important NOT to select the option for "Do not update your location" because this will hide your location from all of your Latitude friends.  Disabling Latitude location detection may also alleviate the need to use Backitude's Re-Sync Rate. Turn Re-Sync Rate to "None" and save even more battery power.


Contact


Where can I ask additional questions about the application?

The first place to ask or look for further assistance is the online forum, where I can quickly respond or others can in my absence. Also, the answer you seek might have already been answered searching through the existing posts, available here: http://forum.xda-developers.com/showthread.php?t=1599791.


Where can I report bugs or submit feature requests?

All bugs and feature requests can be reported to backitude@gmail.com