Guest patzek Posted August 19, 2009 Report Posted August 19, 2009 (edited) This was just a quick and very dirty solution and its nothing for people who dont know what they are doing... but here is my way: First of all you still need root access to your Android device to get the SMS Database file located in /data/data/com.android.providers.telephony/databases The file is called mmssms.db and it is a sqlite database. Make a copy of this file to your computer. Then export your Windows Mobile SMS with this Tool: http://wince.nasenbaeren.net/smsimport/SmsImport.exe This will create a single XML file of all your SMS Folders. Take this file also to your Computer. Then, use my little programm attached here and open the xml file. But first change the Foldernames for the SMS folders. For me (German Windows Mobile Device) this was Posteingang for the Inbox and Gesendete Objekte for the Outbox. Take a look at the XML file there you find the foldernames. Now open up your xml file and let the programm read them. When you do it right then the Datagrid will show up your imported SMS Messages. Check, them. Edit them. Do what ever you want :D And at least select your Android SMS Databasefile and write your SMS Messages to the Database. Existing Messages in the Database will not be killed. And the last step copy back your mmssms.db file to your android device (check permissions and owner radio.radio 660) and restart your device. This has worked for me (Importet 600 SMS without errors) but dont know if this will work with other users databasefiles and sms messages. I'm not responsable for damages or dataloss. Use it at your own risk. 2009-08-19: Alpha 2 ReleaseCorrected Date Field for non German LanguagesSupport for non Hero Databasefiles (Tested Android 1.1 and 1.5 Standard Roms)2009-09-03: Alpha 4 Release [*]Corrected Problem with Database Export Android.SMSImporter.0.4.rar Edited September 3, 2009 by patzek
Guest SKORPiO1975 Posted August 20, 2009 Report Posted August 20, 2009 I still get the error with your newer release. It is: Column recipient_address does not belong to table Table. [OK] This is my xml file. Is there anything wrong with it? I used the program you pointed out to transfer from my titan wimo6. <?xml version="1.0" encoding="UTF-8"?> <SMSExport> <store name="SMS"> <folder name="Deleted Items"></folder> <folder name="Drafts"></folder> <folder name="Inbox"><message date="07/12/2008 12:16:34" sender="+1234567890" recipient="+9876543210">message text goes here</message></folder> <folder name="Outbox"></folder> <folder name="Sent Items"></folder> </store> </SMSExport> and this is what it generates. I used a test with only one sms message and still get the TABLE error. If you could please post your xml file, I could edit mine to match the format. Your program reads all smses from XML file.. all columns ie: date, time, from, to, and message match fine. thank you, Regards, Bart.
Guest patzek Posted August 20, 2009 Report Posted August 20, 2009 The Column "recipient_address" is Part from the Messagedatabase not from the XML File. So there is an error with your mmssms.db File. Have you selected the right one? Do you have a Hero? What kind of modification have you made to your telephone? Firmware Version? You can also check your mmssms.db File with an SQLLite Explorer (there exists an Plugin for Firefox). The Column is Part of the Threadtable. Maybe you can take a look at this.
Guest AndroidTim Posted August 20, 2009 Report Posted August 20, 2009 Sorry for the doublepost :D In what way can you get to the android sms-database? Using Astro or Linda doesn't work. I succeeded exporting the Windows Mobile xml-file, but I just can't find a way to get to /data/data/com.android.providers.telephony/databases What programm do I need to get to the sms database file on my Android phone? Yes, my phone is rooted.
Guest patzek Posted August 20, 2009 Report Posted August 20, 2009 i used the adb command from the sdk to copy the file to the sdcard and then the normal usb-transfer to get it on my pc.
Guest AndroidTim Posted August 20, 2009 Report Posted August 20, 2009 I used some adb commands like: adb pull mmssms.db /data/data/com.android.providers.telephony/databases /sdcard can't get the job done... I'm no developer, I tried to extract this detail from the guide. I got as for as the above line... I feel stupid. It would be very very usefull if you could write a little howto on pulling and pushing the database file. In the style they did for rooting. You bet, you'd help a lot of people if you did this. :D
Guest patzek Posted August 20, 2009 Report Posted August 20, 2009 use this commands: adb shell su cd /data/data/com.android.providers.telephony/databases cat mmssms.db > /sdcard/mmssms.db exit exit now you have the database on your sdcard and can be transfered with normal usb transfer to write it back from the sdcard do: adb shell su cd /data/data/com.android.providers.telephony/databases mv mmssms.db mmssms.db.old cat /sdcard/mmssms.db > ./mmssms.db chown radio.radio mmssms.db chmod 660 mmssms.db exit exit hope this helps
Guest AndroidTim Posted August 20, 2009 Report Posted August 20, 2009 So! That's something completely different as I did... Thank you for your reply. The routine hangs during copy... After: cat mmssms.db > /sdcard/mmssms.db The system comes back with "cannot create /sdcard/mmssms.db: read only file system" Do you have a solution? I seems I have to chmod something first?
Guest patzek Posted August 20, 2009 Report Posted August 20, 2009 why should the sdcard mounted as read-only can you post the output of mount? adb shell su mount
Guest AndroidTim Posted August 20, 2009 Report Posted August 20, 2009 Here are the result of mount: mount rootfs / rootfs ro 0 0 tmpfs /dev tmpfs rw,mode=755 0 0 devpts /dev/pts devpts rw,mode=600 0 0 proc /proc proc rw 0 0 sysfs /sys sysfs rw 0 0 tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0 /dev/block/mtdblock3 /system yaffs2 ro 0 0 /dev/block/mtdblock5 /data yaffs2 rw,nosuid,nodev 0 0 /dev/block/mtdblock4 /cahce yaffs2 rw,nosuid,nodev 0 0 All hocus pocus to me...
Guest patzek Posted August 20, 2009 Report Posted August 20, 2009 there is no sdcard mounted, so there are two reasons possible... 1. no sdcard inserted 2. hero is attached to pc with usb transfer enabled because then the sdcard is unmounted, so first disable the usb mode, then you can copy the file to the sdcard and after this you can reenable the usb transfer mode
Guest AndroidTim Posted August 20, 2009 Report Posted August 20, 2009 You're right; my device was still usb connected. It all worked right now. All my sms messages are now transported from my windows mobile device to my HTC Hero! Thankyou Patzek :D
Guest SKORPiO1975 Posted August 22, 2009 Report Posted August 22, 2009 The Column "recipient_address" is Part from the Messagedatabase not from the XML File. So there is an error with your mmssms.db File. Have you selected the right one? Do you have a Hero? What kind of modification have you made to your telephone? Firmware Version? You can also check your mmssms.db File with an SQLLite Explorer (there exists an Plugin for Firefox). The Column is Part of the Threadtable. Maybe you can take a look at this. Thanks for this info. I have a Tmobile G1 Firmware 1.5 Baseband ver 62.33.20.08H_1.22.14.11 Kernel Version 2.6.27.00393-g6607056 san@sandroid #1 Build CRC1 Flashed w tmobile patched bin with root access. No other nods except previous downgrade to get root and now.. the rc1 :D When I look at the .db file I see Tables(13) / threads (not thread) and recipient_ids... I will attach a screen grab... thanks again for all help.
Guest patzek Posted August 24, 2009 Report Posted August 24, 2009 The Messagedatabase from the Standard 1.5 Android Build looks a little bit different than the Hero one. I try to add support for this kind of Database on afternoon.
Guest giankap Posted August 24, 2009 Report Posted August 24, 2009 The Messagedatabase from the Standard 1.5 Android Build looks a little bit different than the Hero one. I try to add support for this kind of Database on afternoon. Hallo patzek, with the new version of your software I can now see messages from my Magic in data grid :D When i try to write to the db, i get this message: Cannot perform '=' operation on System.String and System.Int32 any idea? thank you
Guest patzek Posted August 24, 2009 Report Posted August 24, 2009 Hallo patzek, with the new version of your software I can now see messages from my Magic in data grid :D When i try to write to the db, i get this message: Cannot perform '=' operation on System.String and System.Int32 any idea? thank you I've added some more Debug Informations to the new build. Maybe you can post the errormessage here.
Guest giankap Posted August 25, 2009 Report Posted August 25, 2009 I've added some more Debug Informations to the new build. Maybe you can post the errormessage here. I try tu put the image here. In any case there is an attachment with the errormessage. thank youNew_Text_Document__3_.doc
Guest SKORPiO1975 Posted August 26, 2009 Report Posted August 26, 2009 (edited) The Messagedatabase from the Standard 1.5 Android Build looks a little bit different than the Hero one. I try to add support for this kind of Database on afternoon. WOW patzek, I must admit :D you kick some serious a** ;) everything transferred fine and no errors. so your program works with G1 now :angry: Although I have another lame question. Is it possible to merge transferred database into one thread? What I have is my SMSes going back and forth with one person on my xml file. Android creates those threads between You and another person. When I transferred the .db it created "My" thread based on my phone number where only my SMSes are, and added other person's SMSes to existing thread that i had in my android phone. Now I have 2 threads, one "Me" with only my SMSes and "Other Person" thread which was merged. I was looking for a way to move "My" SMSes to another thread, but I don't think it is possible. Are there any managing tools for SMS database in android? Thanks again for your time. You really have quick solutions for everything here ;) Regards, Bart. ps: what does "Messagetype" column do in your program? Edited August 26, 2009 by SKORPiO1975
Guest patzek Posted September 3, 2009 Report Posted September 3, 2009 I try tu put the image here. In any case there is an attachment with the errormessage. thank you New Release. Try it with this one.
Guest patzek Posted September 3, 2009 Report Posted September 3, 2009 (edited) WOW patzek, I must admit :D you kick some serious a** ;) everything transferred fine and no errors. so your program works with G1 now :angry: Although I have another lame question. Is it possible to merge transferred database into one thread? What I have is my SMSes going back and forth with one person on my xml file. Android creates those threads between You and another person. When I transferred the .db it created "My" thread based on my phone number where only my SMSes are, and added other person's SMSes to existing thread that i had in my android phone. Now I have 2 threads, one "Me" with only my SMSes and "Other Person" thread which was merged. I was looking for a way to move "My" SMSes to another thread, but I don't think it is possible. Are there any managing tools for SMS database in android? Thanks again for your time. You really have quick solutions for everything here ;) Regards, Bart. ps: what does "Messagetype" column do in your program? Normaly my SMSImporter also link SMS Messages together like Android does this. I check this by comparing the Phonenumber from Sender/Receiver with the existing ones and when i find the right one then the message get attached to the existinig thread. The only reason that i can think what happens on your side that all of your Messages get an own thread is that the Numbers in your Messages are looking other then the Numbers in the Messages of the other Person (Country Code maybe??? ) Messagetype = 1 = Received Message Messagetype = 2 = Sended Message Edited September 3, 2009 by patzek
Guest RemoteSojourner Posted September 3, 2009 Report Posted September 3, 2009 Hi, Based on your solution and couple of other softwares I finally managed to import over 900 sms from my Nokia N95 and I think this will work with all other Nokia phone. I will post the full details of how I did it soon. Thanks for your amazing program :D
Guest giankap Posted September 3, 2009 Report Posted September 3, 2009 New Release. Try it with this one. Now it's working!! i successed to write mmssms.db. i'm uploding the db to the phone and see the result. many thanks, and excuse me for the private message, i did not see your last post...
Guest RemoteSojourner Posted September 3, 2009 Report Posted September 3, 2009 Here is the tutorial http://vinodmishra.com/2009/09/how-to-impo...ndroid-devices/
Guest giankap Posted September 4, 2009 Report Posted September 4, 2009 Now it's working!! i successed to write mmssms.db. i'm uploding the db to the phone and see the result. many thanks, and excuse me for the private message, i did not see your last post... excuse me, is there any body who have some suggestion for deleting duplicate items in the sms xml file exported from windows? Opening the xml with excel, an working with access, I manged to obtain an excel file in which I do not have duplicates, but i can't export this file back in an xml format. can anybody help me? thank you
Guest patzek Posted September 5, 2009 Report Posted September 5, 2009 excuse me, is there any body who have some suggestion for deleting duplicate items in the sms xml file exported from windows? Opening the xml with excel, an working with access, I manged to obtain an excel file in which I do not have duplicates, but i can't export this file back in an xml format. can anybody help me? thank you you can edit, delete or insert sms messages with my smsimporter. when you read in the xml file you can full edit all sms messages. Sorting is also possible by clicking on the columnheaders...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now