iMessage doesn't keep your whole message history on-device. You can scroll back and it will fetch a bit more each time, but that's it.
Is there anyway to pull back to the beginning of time into the local database? I'd like to retrieve some specific old messages from a friend who has passed away. If I could get them out I could search (I know what I am looking for) but it would involve an unfeasible amount of "pull to fetch more"
They might mean attachments too, which I count as whole message history.
Messages seems to be somewhat random about keeping/removing attachments from your devices regardless of how much storage you have free or whether you have 'Optimise Storage' off.
*note this is specifically when using Messages with iCloud
I previously kept copies of this SQLite database on hand when backing up my phone (it stores to a specific folder every time), but since encrypted backups were introduced a few iOS versions ago, I found it too much of a hassle.
If OP wants to find this file, a good search term is "3d0d7e5fb2ce288813306e4d4636395e047a3d28" which apparently is a sum of the string "HomeDomain-Library/SMS/sms.db".
One thing I miss from Android was the simplicity of getting data in and out of the phone. I could just dump everything to CSV and be done with it.
> iMessage doesn't keep your whole message history on-device
Unless you’ve changed the “message history” setting, yes, it does keep all history on-device. It’s just incredibly frustrating to access any of it because Messages.app is awful at history.
Wouldn't the tool we are commenting on solve your problem nicely or what are you missing? Have you checked out the sqlite database where they are all stored? Does the iMessage search not work for this use case?
I've been tinkering with this recently and there are conversations where the last content in the sqlite database is a month and a half old. Oddly in some cases there used to be newer content in there that had since disappeared.
If you are talking about data missing from the `text` column, for some reason it disappears after you read a message. The content is stored in a binary blob in a different column, which I parse like this: https://github.com/ReagentX/imessage-exporter/blob/c73bc4d66...
If you don't sync imessage to iCloud, I thought it quite literally only stored on device in that case, besides when it in transit to be delivered. Referencing this official apple article, messages that are waiting to be delivered to devices can sit in the message queue for up to 30 days. https://support.apple.com/guide/security/how-imessage-sends-...
The image on the readme that talks about what the product does is a really nice way to do that - and in fact it's better than talking about what the product does because it's an example of an actual export - thanks for making this and for having a great readme
I've been using TouchCopy for years, it supports encrypted backups as well. Not as nice as an open source tool, but it does work and it seems to get all the messages, attachments, everything. It does cost a little money, but it's been the only reliable thing that continues to work.
This doesn't return all messages unfortunately, and the way the algorithm works, it will return a few results at a time, forcing you to re-pull for more results. I wanted all the messages I had received from my dad, and it was impossible to do this way.
Oddly this doesn't always give results for me, for things I KNOW are in my messages. All my iMessage history is on-device (I don't use and will never use iCloud backup). Pretty disappointing :\
Yeah I don’t use iCloud either, but that method always worked for me, where it does fail for you?! What’s the scenario where it doesn’t return what you were looking for?
Oh it's just like some arbitrary limitation, like the search function only goes so far back, or something. No clue, I haven't narrowed down the exact factors that determine whether my search will get a result or not
It's downright criminal that apple doesn't provide tools to backup and archive imessages. I have like 40gb of messages on my phone that I do not want to delete, but I don't need them on my phone.
There's tools like Wondershare transfer. It's not free but does a surprisingly good job of converting between android and iOS. Somehow they figured out the secret sauce of Apple's backups and charge only $40 or so for the privilege (no affiliation btw). For me, it was worth it
I know I should just look this up myself to confirm, but are these not backed up to icloud? It's not that expensive, and if you don't want to pay the apple tax for services you don't buy apple hardware...
iMessage... why they refuse to permit users to file, tag, archive, print & share messages is a mystery to me. More and more of my clients want to communicate via text message.
Hey can this merge two iMessage databases? I have one from an old machine and TimeMachine biffed something, so now I have two copies I'd like to combine.
But iMessages are already stored in iCloud and will be available on your computer or any new phone when you log into iCloud again if enabled. Wouldn't that already solve that use case?
iMessage doesn't keep your whole message history on-device. You can scroll back and it will fetch a bit more each time, but that's it.
Is there anyway to pull back to the beginning of time into the local database? I'd like to retrieve some specific old messages from a friend who has passed away. If I could get them out I could search (I know what I am looking for) but it would involve an unfeasible amount of "pull to fetch more"