this post was submitted on 26 Nov 2023
23 points (96.0% liked)

Android

28035 readers
170 users here now

DROID DOES

Welcome to the droidymcdroidface-iest, Lemmyest (Lemmiest), test, bestest, phoniest, pluckiest, snarkiest, and spiciest Android community on Lemmy (Do not respond)! Here you can participate in amazing discussions and events relating to all things Android.

The rules for posting and commenting, besides the rules defined here for lemmy.world, are as follows:

Rules


1. All posts must be relevant to Android devices/operating system.


2. Posts cannot be illegal or NSFW material.


3. No spam, self promotion, or upvote farming. Sources engaging in these behavior will be added to the Blacklist.


4. Non-whitelisted bots will be banned.


5. Engage respectfully: Harassment, flamebaiting, bad faith engagement, or agenda posting will result in your posts being removed. Excessive violations will result in temporary or permanent ban, depending on severity.


6. Memes are not allowed to be posts, but are allowed in the comments.


7. Posts from clickbait sources are heavily discouraged. Please de-clickbait titles if it needs to be submitted.


8. Submission statements of any length composed of your own thoughts inside the post text field are mandatory for any microblog posts, and are optional but recommended for article/image/video posts.


Community Resources:


We are Android girls*,

In our Lemmy.world.

The back is plastic,

It's fantastic.

*Well, not just girls: people of all gender identities are welcomed here.


Our Partner Communities:

[email protected]


founded 1 year ago
MODERATORS
 

Motivation

So this is probably a strange request but I really want to do this. For some reason, when I restored the WhatsApp chats most of the photos there got to the private directory where it doesn't show on my android gallery. I don't know what happened but there is no official solution to get the photos back. So I thought why not do it myself.

What I already did

I rooted m phone (temporarily) to get access to the msgstore.db file so that I can change the paths of the media. I can do that easily with a sqlite query.

What I couldn't do

When I try to modify the actual database, it says that I cannot do it since the file got corrupted. I think there might be a checksum or something somewhere but I can't seem to find any information about it. Does anyone know how I can do this without tripping the integrity checker?

top 11 comments
sorted by: hot top controversial new old
[–] stifle867 8 points 1 year ago (1 children)

If the photos go to a private directory but you are now rooted you should be able to directly access that directory and copy the files out. This is assuming that they are stored as regular files in that directory instead of being solely in the sqlite db. Does that work?

[–] [email protected] -1 points 1 year ago (1 children)

I can but then the photos are gonna be duplicates which would take up a lot of space

[–] [email protected] 5 points 1 year ago* (last edited 1 year ago) (1 children)

[This comment has been deleted by an automated system]

[–] [email protected] 2 points 1 year ago (1 children)

That would have been a genius idea actually it would solve all of my problems. However, it seems like Android doesn't allow hard or soft links through SELinux. I tried doing it in termux in root mode but it told me "Function not implemented."

[–] [email protected] 2 points 1 year ago* (last edited 1 year ago) (1 children)

[This comment has been deleted by an automated system]

[–] [email protected] 2 points 1 year ago (1 children)

I tried it on termux and it says "permission denied", and I have access to write on both folders on termux

[–] [email protected] 2 points 1 year ago* (last edited 11 months ago) (1 children)

[This comment has been deleted by an automated system]

[–] [email protected] 2 points 1 year ago

I think it's Android itself. I can only do symlinks in the /data partition not /storage/emulated according to this. And I tried it and it seems to be true.

` ~ $ pwd

/data/data/com.termux/files/home

~ $ touch ok

~ $ ln ok ok.ok

ln: failed to create hard link 'ok.ok' => 'ok': Permission denied

~ $ ln ok -s ok.ok

~ $ ls

ok ok.ok

~ $ cd /storage/emulated/0

.../emulated/0 $ touch ok

.../emulated/0 $ ln ok -s ok.ok

ln: failed to create symbolic link 'ok.ok': Permission denied

`

[–] [email protected] 6 points 1 year ago (1 children)

Why don't you just move the photos back?

[–] [email protected] -1 points 1 year ago (1 children)

Then I can't see them in the chat since they're in a different location.

[–] [email protected] 5 points 1 year ago

WhatsApp expects to see your images in the images folder. Move the photos into that and they should be picked up. The folder should be

Android/media/com.whatsapp/WhatsApp/Media/WhatsApp Images/

The private folder is a subfolder of WhatsApp Images, so you should just need to move them up one level.