Access to hidden folder/files from a computer

Hello FP Community,

I have been using OsmAnd for tracking and recently started to do some edits for OpenStreetMap using JOSM on my computer.

When I plug my FP2 (FPOpen 18.04.1) to my computer using the USB File transfers (USB debugging mode) I have access to the following folder:
"Computer\FP2\Internal storage\Android\data\net.osmand.plus\files\tracks\rec"
Although on the phone the folder used by OsmAnd are located in a hidden and different folder:
"data/user/0/net.osmand.plus/no_backup/tracks/rec"

Of course I could tell OsmAnd to change the Data storage folder from “Internal app memory” to “External storage 1” for example. Although I have not done that yet cause I don’t know how it is going to impact my current data (I don’t want to lose my edited maps and tracks…).

Here comes the more general question about the FP OOS system (my apologize if this is too naive) : is it possible to access the hidden folders from a computer through the USB ?
(I can imagine how risky it can be if these files are related to the FP system. But in the mean time why the storage folder of so many apps are not by defaults located in an folder accessible through USB.)

Hola, Manolo:

Those are two different folders:

  • The first one is stored in the internal storage available to the user, located in the userdata partition (mounted in /storage/emulated/0/ in the phone). You (i.e. the end user) can browse it with e.g. Amaze File Manager or just plugging in your phone to a computer.
  • The second one is the internal data of the app, only available to itself (because of the Android Security Model), located in the data partition (mounted in /data/user/0/ in the phone). You (i.e. the end user) can only browse this with root permissions, because it’s not available to be read freely. Apps save here confidential and sensitive information like your IM chat history, personal data like your bank account number, crypto tokens, etc.

There’s a naming issue here, IMO. The user-available storage in the phone is referenced generally as external storage from the phone (this cames from the pre-ICS Android, where your storage was an external microSD card), but other computers reference it as “internal” because that’s what it is. The confidential, restricted storage for apps is in the internal storage too, but in a way not accessible to the (regular) end user or other apps. OSMand calls it “internal app memory” and it’s a good descriptive name.

It’s a general question about Android. The answer is no, it isn’t possible without root permissions. However, FP Open cames pre-rooted, so you can access them via the command line (through ADB shell), but not mounting it normally as a flash memory (thumbdrive or pendrive). I don’t recommend tinkering so much with internal data, though. If you do, make sure you check twice each file has correct r/w permissions or OSMand could crash.

1 Like

Thank you Roboe for your detailed response.

So if I understand well:

I should not mess around with the hidden folders or “internal app memory”.

There are 2 storage type:
this "internal app memory"
and the “external storage”, external to the system storage but considered as internal to the phone by the computer when I USB plug the phone.

You recommend to have there the “Data storage” folder of OsmAnd. That way I will have access to it when the FP is connected to my computer.

More generally I wonder what is the purpose of the first folder I was mentioning
(i.e.: “Computer\FP2\Internal storage\Android\data\net.osmand.plus\files\tracks\rec”).

1 Like

AFAIK it is a cache folder for non-sensible cache (because any other app which has the permission to read from external storage could read it as well). IIRC this storage seems to be available per-app even when they do not have permissions to write on external storage.

Edit: yeah, a quick search on the Android documentation for developers confirms that: https://developer.android.com/reference/android/content/Context#getExternalCacheDir()

1 Like

I was hoping that I could export there some tracks to be able to access it from my computer but it is not the case.

Any idea how I can access OsmAnd recorded tracks from my computer ?

https://github.com/osmandapp/Osmand/issues/2988

“I circumvented the problem by registering an OSM account, enabling the contribution plugin in OsmAnd+ and “exported” all tracks to OSM, from where I can download them. Not nice, but seems to work.”

https://help.openstreetmap.org/questions/53218/how-to-export-track-created-with-osmand-to-my-pc

"First you have to save the track to your sd card, this is not automatically done. You can do this while you are recording by tapping on the “GPX” button and choosing “Save current GPX track” or by tapping the “Save” button of the trip recording notification. For saving the track after recording it go to plugins -> Trip recording -> Settings -> Save current GPX track. The same menu is also available via Settings -> Trip recording -> Save current GPX track.
The saved GPX track is then stored in your OsmAnd data folder."

3 Likes

Thank you very much for pointing those links.

In short, I changed the storage folder for OsmAnd to ‘External’ which is accessible through USB from a computer. To get my previous tracks and data in that folder (virgin of anything) I did give right to the apps to write there in order to be able to ‘share’ those tracks. Also had to reboot a few time and to change back and forth the storage folder to ensure everything was ok.

The best thing to do is to setup OsmAnd from the beginning to store everything in an ‘External’ folder. Then no worries to access it and no trouble to export.

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.