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?

  • @stifle867
    link
    English
    87 months ago

    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?

      • Skull giver
        link
        fedilink
        English
        5
        edit-2
        7 months ago

        [This comment has been deleted by an automated system]

        • @[email protected]OP
          link
          fedilink
          English
          27 months ago

          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.”

          • Skull giver
            link
            fedilink
            English
            2
            edit-2
            7 months ago

            [This comment has been deleted by an automated system]

            • @[email protected]OP
              link
              fedilink
              English
              27 months ago

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

              • Skull giver
                link
                fedilink
                English
                2
                edit-2
                7 months ago

                [This comment has been deleted by an automated system]

                • @[email protected]OP
                  link
                  fedilink
                  English
                  27 months 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

                  `