I am using open-gpstracker to track routes. After quite some time I have collected a large number of tracks that I like to export as GPX files. The application allows to do that, however, there is no export option for all tracks at once.

I am using a device without root access. Is there any way I could access the SQLite database of the application? I also thought of modifying the source code of the opensource application to my requirements, but I am afraid of losing my data when I install the customized version of the app on my device. Am I right, that this can be a problem?

Update: I came up with the idea that I could use the ContentProvider of the application, if there is one included and if it is public. I could write another application that uses the interface to access the database. Do you think this is possible? How can I see if there is a public ContentProvider?

1 Answer 1


Each app on Android stores its data on internal storage by default, below the /data/data/<package_name> directory. Due to the sandbox princip, except the app itself and root nobody has access to that if not explicitly defined otherwise by the developer (e.g. Skype currently has a serious security flaw giving everybody read/write access to all its data, including plain-text passwords). So no, you won't be able to get access to the database, which most likely is located in the /data/data/nl.sogeti.android.gpstracker/databases/ directory without having root access to your device.

As for your second question: You are assuming correctly. As you don't have access to the developers certificate (for good reasons), you cannot "update" the original app with your modified version. You would have to uninstall and then re-install -- or giving your modified version a different package name. In both cases, you won't have access to the original apps data.

  • You can backup the app data using TitaniumBackup and restore (only the app data) onto a differently signed app with the same package name though (root required).
    – ce4
    Sep 3, 2012 at 10:35
  • Good point -- I didn't consider that. Sure, that should do -- thanks for pointing it out!
    – Izzy
    Sep 3, 2012 at 10:49
  • @ce4 Interesting option. However, I do not have root access. How about my updated question regarding the ContentProvider?
    – JJD
    Sep 25, 2012 at 21:52
  • 1
    The full path of the database file should be /data/data/nl.sogeti.android.gpstracker/databases/GPSLOG.db. Source: 1
    – JJD
    Apr 29, 2013 at 13:06
  • 1
    There is a solution for debuggable apps. Another post here.
    – JJD
    Jul 21, 2014 at 9:50

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .