Import all your SMS texts and plain-text iMessages into your Android device, with full support for any language.
Don’t need all messages by every person that ever contacted you? Just select the contacts whose messages you want, and all others will be ignored.
Want to start over, but keep all messages that you already had on your phone? The “Remove Messages” feature will only remove those messages that were imported by iSMS2droid.
No need to explore the complex filesystem structure of Android, just put the database onto your phone and let iSMS2droid discover it automatically.
Some people still use their phone for making calls, so import your call log to check if you are one of these persons!
Can’t find your databases? The app doesn’t do what it should? Get in touch and you’ll get support directly from the developer, not some 3rd-party help desk.
You should switch your iPhone to Flight Mode or take out the SIM card before creating the backup, otherwise you may receive messages after you created the backup, and those won’t be included in the backup file then.
Connect your iPhone to your computer, start iTunes and make an unencrypted backup by selecting your iPhone and clicking the Back Up Now button
Detailed instructions can be found on Apple’s support pages.
Go to the folder that contains your iTunes backups. Depending on the operating system you are using, this folder will be located at the following paths:
OS X:~/Library/Application Support/MobileSync/Backup/
Inside that folder should be one or more folders with random names. Find the one that does not have a timestamp (-YearMonthDay-HourMinuteSecond) at the end.
This is the folder of the backup you created in step 1.
Locate the file 3d0d7e5fb2ce288813306e4d4636395e047a3d28 in the folder 3d for your messages, and the file 5a4935c78a5255723f707230a451d79c540d2741 in the folder 5a for your call logs
Copy the file(s) you want to import to your Android phone. You can use whatever transfer method you like, preferably USB, but Dropbox, Email, etc. will also work.
The app works with any filename, so you may want to rename the message database file to something like sms.db, and the call log to calls.db to make it easier to identify them. The renaming is completely optional, though.
If you use the original filename(s) or one of the ones suggested above, the app will find the files automatically and not prompt you to select the manually.
This is not a hard requirements, but if you have lots of messages (>50,000), i recommend that you connect your phone to a charger, as the process may take a while and use quite a bit of your battery charge. Better safe (and charged) than sorry (and having to start over)
I would also recommend just letting your phone do its thing while the import is running. The import should continue in the background if you absolutely have use your phone for something, but the general rule of thumb is: the less resources are used for other apps, the faster the import will finish.
If you have a new Android device and didn’t install any apps that could potentially interfere with iSMSdroid (other SMS apps like e.g. Textra), you can skip to step 5.
If you are not using the default Messaging app, theoretically everything should work just fine – but i can’t promise anything. If it does not, and you are getting any errors or weird behaviour (other than those cases covered in the FAQ), you may want to switch back to the stock Messaging app, or even completely remove any 3rd party messaging apps.
Please continue with installing the app on your phone.
Please be aware that i can’t provide any support for this process, beyond converting your message database into a format that can be read by SMS Backup & Restore. #YOYO
After opening the app, tap on the Import Messages Button. If this is the first time you use the app, Android will ask you to grant iSMS2droid certain permissions and also to switch your default messaging application to iSMS2droid. This is required to be able to write to Android’s messaging database. After the import has finished you will be asked to switch back to your previous messaging application, so there’s nothing you have to change by yourself.
If you haven’t copied the file(s) to a folder where the app expects them, or if you have used a filename the app doesn’t recognized, you will now see a file selection dialog that allows you to navigate to the location of the database file(s).
When you select the message database file, the app will ask you to either import all messages or select conversations by contact. If you select the later, it will show you the names of the contacts (if you have added them to your phone’s addressbook), otherwise it will show you only the contacts’ phone numbers. If you plan on using this selective import, i highly recommend adding/syncing all your contacts to your phone before using iSMS2droid, so that you can clearly see whose messages you are importing.
If you chose to import all messages, the app will now start the import process, otherwise it will load a list of conversations and allow you to pick the conversations you’d like to import.
You can continue using your phone while your messages are being imported, but please be aware that using other apps may decrease the performance of iSMS2droid, resulting in a longer import time. Or cause it to completely fail. You never know. I would recommend just letting the app do its thing in the foreground and not using the phone for anything else.
Once the import has finished, you’ll be asked to switch your messaging application back to the one that was previously the default, and then you’re done!
If you successfully converted your SMS and/or iMessages and feel like thanking me, consider sending a donation via PayPal by using the button below, or by using the Donate button inside the app.
If you want just your messages, you only need to copy one single file, which can be found in your iTunes backup folder (see above), and that is the file
3d0d7e5fb2ce288813306e4d4636395e047a3d28 in the folder 3d
If you want your call log, you need to copy the file 5a4935c78a5255723f707230a451d79c540d2741 from the folder 54. (For older iOS versions it’s called 2b2b0084a1bc3a5ac8c27afdf14afb42c61a19ca.
If your backup folder does not contain the backup file of the message database, you haven’t received or sent any messages since the last time you created a backup.
Please check the older backup folders, starting with the one that has the most recent timestamp at the end, and search for the file in those.
If you don’t have any other backup folders, and are absolutely sure that the file you are looking for is nowhere to be found (e.g. if you deleted those older backups), you can just send a new messages to someone (or call someone, if you need for the call log database),
and then create a new backup, which should then contain the file you need to copy.
If you are using an older version of iOS, the call logs file is called 2b2b0084a1bc3a5ac8c27afdf14afb42c61a19ca.
This is a very strange issue, but luckily it’s easy to fix: Just rename the database file(s) to something other than the original/suggested filenames, like MyMessagesFile.
This prevents the app from finding the file automatically, so it will then ask you to select it manually – after which everything should work as expected.
In over 5 years of supporting this app, there hasn’t been a single support request for this error message where the reason wasn’t either a encrypted backup, or a completely wrong
file. Please double-check the encryption setting for your backups in iTunes, and/or do a search for the exact filename in your backup folder.
No, the app only supports the plain text body of both SMS/MMS and iMessages. For a detailed explanation, please have a look at the next question.
Android does not support group messages, so all messages from a group chats you had on your iPhone are imported like direct conversations with the respective sender/recipient.
If you receive a SMS message or plain-text iMessage, your iPhone takes the text body and saves it (together with some metadata) into its message database. This also happens when
you receive a MMS message (or iMessage with attachments), but when saving the text body and metadata into the message database, it also downloads the attachments and saves them into
a specific folder on your iPhones filesystem, and then puts the path to those attachments into a separate table in the message database.
This means we now have the text body and the information about its attachments in the database – but we don’t have the attachment files themselves. When you create a backup of your
iPhone, those attachments get also backed up to your computer, but each one as a separate files with a cryptic filename that is based on the path of the file on your phone.
It would theoretically be possible to also import the attachments, but that would require you to copy your whole iTunes backup folder to your Android phone, as it is impossible to
predict which files from your backup are message attachments until iSMS2droid actually opens the message database and starts importing.
I am thinking about making it a two-step process: first step scans the database for attachments and generates a list of additional files you would need to copy, and the second step
would be the actual import of the messages including attachments – after you copied the additional files.
Unfortunately i’m not in possesion of an iPhone anymore, so i can’t really fully develop this feature, as it would require extensive testing with real backups.
My testing has shown that a good estimate for the import speed is 50 messages per second, at least on a recent (<=2 years) device. This means you should be able to import 100.000 messages in 30-45 minutes. Please keep in mind that any other activity during the import will greatly affect this number, especially any apps that use lots of memory or access the storage. Any security apps or anti-virus scanners should also be disabled during the import, as they will most likely try to inspect every single message, which will slow down the process considerably.
If you are using a Samsung device: Samsung has fiddled with their version of Android, causing it to crash when just reading the count of messages. Newer (2017) Samsung devices seem to be working fine again, so if it’s working for you, just ignore the warning.
While the app has some functionality to detect encrypted files and warn the user about this accordingly, some device manufacturers like to mess with Android too much, which causes the encryption detection to fail, resulting in an app crash.
So if the app crashes for you, the first thing you should do is triple-check that you have definitely disabled backup encryption, and that the file you want to import is from a backup that was created after you disabled the encryption.
If you are either using Samsung device with a not-so-recent Android version, or don’t use a Samsung device but the app crashes anyways, please use the Online Converter.
Your messages are most likely not really missing, you just don’t see them – yet. The import process writes those messages to a database, and the Android messaging app then reads them
from this database to display them. The bigger the database, the longer it takes for the messaging app to load them, and that’s why Android does something called “indexing the database”.
You don’t need to know the technical details, but it’s a process that is ran for each new message, and it takes a while. Once the messages are indexed, the messaging app can show them
with nearly no delay. If you are receiving or sending messages, this indexing happens in the fraction of a second, you shouldn’t notice it at all. But as we are writing hundreds, thousands,
or for some users even hundredths of thousand messages to the database, this indexing takes substantially longer, and the messaging app will only show those messages that have already
been indexed – and that looks like there are messages missing, even if they are in the database.
If it’s been more than a couple of minutes (or an hour, if you imported a lot of messages) since the import, and you still don’t see all messages, you can try to reboot your phone and
then check the messaging app once it has started up again. If you see at least some new messages then, give it some more time to do the indexing, don’t just reboot it again right away.
Let your phone work through the database, the less you use your phone do during this process, the faster they will show up.
If all fails, you can check if deleting the Messages (not iSMS2droid) app data helps. To do this, either:
– go to Settings -> Apps and Notifications -> Messages (or SMS/MMS), or
– long-tap your Messages launcher icon -> App-Details
then tap on “Storage” and select “Clear data”. This should not delete any of the messages, but only make it completely rebuild the database. Before doing this, you should really have followed the previous instructions and already created a backup of your existing messages, so i’m not gonna mention the importance of doing that again.
Please see the above question, “The app crashes when i select the database file!”.
If you are using a FairPhone: disable PrivacyImpact
iSMS2droid requires at least Android “Lollipop” 5.0, which was released in 2014. If your device is running an Android version older than that, iSMS2droid will simply not work,
and there’s nothing that can be done about it, except updating your device to Android “Lollipop” 5.0 or higher. You shouldn’t be buying a device with such an old Android version
anyways, as the incompatibility of iSMS2droid will be the least of your worries.
If for whatever reason you absolutely must import your messages on such an old device, please use the Online Converter.
The app’s name is a concatenation of the phrase iPhone SMS to Android (Converter, formerly)
Apple has decided that the Call Log should only be backed up to iCloud when you are using unecrypted local backups.
It will still be created locally when you do encrypted backups, but those are not usable with iSMS2droid.
That means effectively you won’t be able to import your Call Log if you are using iOS 13 (or newer).
You can find more information here.
I will try to provide support for this app as much as i can, but there are a couple of things you should know:
If you leave a negative review on Google Play before contacting me, you waive your privilege to get support from me.
If you contact me with a problem that was already answered in the FAQ or the instructions, you most likely won’t receive any further response than the default that points you to said FAQ or instructions.
If you contact me through any other means than the provided support address, your will most likely not get a response.
If you come across as if i owe you something or as if you’re entitled to support, i will most likely ignore you. This i a free app, and getting personal support should be considered a privilege, not a right.
If you have a very exotic problem, i may ask you to provide me with your message database file. Everybody is a phone is a snowflake, and some problems can’t be reproduced without having the data that causes them.
Please include the app version (shown on the main screen), the device name and the Android version you are using, otherwise it will be more difficult to provide any support.