Jeff Layman wrote on Sun, 30 Jun 2024 21:44:44 +0100 :
I'm glad you're testing things out also as most people don't bother.
Thanks for all the effort you've put into this. I'm a lot clearer on
this aspect of Android now. Well, as much as unrooted phones allow! I
was hoping that someone with a rooted phone could give more info about
the "data" held by messages, as both of us are handicapped by having
unrootable phones.
In summary, I think the following appear to be empirically supported:
1. Any app, even a messaging app, can store anything it wants to store
anywhere you have access on your file system, if you give it the
permission to store files on your file system (which you normally do).
2. For my PulseSMS messaging app, there's a setting to automatically
save MMS media, and I can also longpress on MMS media to manually
save it - and the app itself doesn't say where it puts that media.
3. However, by using a file manager (usually I manage Android from
the Win10 file explorer), I can see that it stores that media in
/storage/emulated/0/Pictures/Pulse/.
Which, when connected to Windows 10, shows up as this location
My PC\Galaxy A32 5G\Internal storage\Pictures\Pulse\.
4. Completely outside of that media file storage, every app has its
own protected data directory, which MAM shows for PulseSMS is
Source Directory
/data/app/~~diAkyuABaIvYDNt14RQhvQ==/xyz.klinker.messenger-_qtJz92-15WOkeOf12eQaQ==
Data Directory
/data/user/0/xyz.klinker.messenger
Device-protected Data Directory
/data/user_de/0/xyz.klinker.messenger
But all of those are in protected areas as my Galaxy is unrootable.
5. I do not know what is in those directories; but I assume, based on
empirical tests, that "some" of the app-specific data (such as the
coloring assigned to chats) is stored in those sandboxed areas.
I have no idea where the default SMS messages are stored on Android.
But a search shows that it's likely in a single sqlite database per phone.\
I wonder how long it will be before the next Android puzzle turns up. :-)
Every day I learn something new about Android, but mostly because I
experiment a lot with it - as most of my knowledge is purely empirical.
For example, I wasn't expecting to accidentally find out that there is only
one "real" contacts database - but - the mere fact of the results when I
tested all the free adfree contacts apps indicated there is only one
fundamental contacts sqlite database on Android for each.
Every contact app accesses the same default contacts sqlite database.
<
https://www.quora.com/What-is-the-storage-location-of-contacts-saved-in-Android-phones>
Every messaging app appears to do the same for default sms/mms messages.
<
https://www.samsung-messages-backup.com/resources/where-are-texts-stored-on-android.html>
For example, in Android 7+, SMS messages are stored, by default, in:
[/data/user_de/0/com.android/providers.telephony/databases/mmssms.db]