ข้อความ SMS เก็บอยู่ที่ไหนในระบบไฟล์


56

ข้อความ SMS เก็บอยู่ที่ไหนในระบบไฟล์

ฉันใช้ ES File Explorer เพื่อเรียกดูไปรอบ ๆ แต่ดูเหมือนจะไม่พบสิ่งนี้ - มันอยู่ในโทรศัพท์หรือ SD และที่ไหน

ฉันมี HTC Wildfire แต่ฉันคิดว่ามันไม่ได้แตกต่างกันมากนักจากผู้ขายไปยังผู้จัดจำหน่าย (แม้ว่าฉันจะเป็นนักพัฒนา iOS ที่รู้จัก Android เล็กน้อย)

คำตอบ:


43

ดูที่นี่: https://stackoverflow.com/questions/4809874/how-to-access-the-sms-storage-on-android

สิ่งสำคัญคือ SMS / MMS อยู่ในฐานข้อมูลบนโทรศัพท์และคำตอบสำหรับคำถามนั้นมีลิงค์ไปยังบทช่วยสอนนี้

ตำแหน่งของฐานข้อมูลอาจแตกต่างกันไปตามโทรศัพท์ แต่คุณสามารถค้นหาด้วยคำสั่งนี้ผ่าน adb (คุณจำเป็นต้องรูทเพื่อค้นหาเพราะอยู่ในพื้นที่เก็บข้อมูลที่มีการป้องกัน):

find / -name "*mmssms*"

บนอุปกรณ์ของฉัน (Samsung Galaxy S) ฐานข้อมูลเหล่านี้ปรากฏขึ้น:

./dbdata/databases/com.android.providers.telephony/mmssms.db
./data/data/com.jb.gosms/databases/gommssms.db

อันแรกคือฐานข้อมูลเนทิฟและอันที่สองคือแอพ sms ที่ฉันใช้


คุณช่วยอธิบายได้ว่ามันถูกเก็บไว้อย่างไร ... ดูเหมือนว่า XML? ยังอยู่ที่ไหน - ฉันไม่ได้พูดจากมุมมองการเข้ารหัสเพราะฉันไม่รู้อะไรเลยเกี่ยวกับการพัฒนาระบบ Android
Alex Coplan

3
มันเป็นฐานข้อมูล sqlite คุณสามารถดูได้ด้วยโปรแกรมดู sqlite - คุณใช้ระบบปฏิบัติการรุ่นใด?
joweiser

และคุณต้องเป็นรูทเพื่อเข้าถึงฐานข้อมูล - จะเพิ่มเข้าไปในคำตอบข้างต้น
joweiser

ต่อไปนี้เป็นตัวแสดง sqlite ที่เป็นแพลตฟอร์มอิสระหากคุณต้องการดูไฟล์เหล่านั้น: http://sourceforge.net/projects/sqlitebrowser/
joweiser

2
@masterjo: เบราว์เซอร์ฐานข้อมูล SQLite ยังไม่ได้รับการพัฒนาตั้งแต่ปี 2009 และมันไม่สามารถแสดงอะไรจากไฟล์. db เมื่อฉันลองวันนี้ นี่คือเบราว์เซอร์ SQLite อีกตัวที่ใช้งานได้ - sqlitestudio.one.pl
Dan Dascalescu

10

นี่คือข้อมูลที่เป็นประโยชน์เช่นกัน

นี่คือเส้นทางสัมบูรณ์ไปยัง SMS และ MMS DB บนอุปกรณ์ Android ส่วนใหญ่:

/data/data/com.android.providers/telephony/databases/mmssms.db


/data/data/com.android.providers.telephony/databases/mmssms.dbนี้ที่จริงควรจะเปลี่ยนชื่อเป็น สังเกต. telephony
smac89

ใน kitkatdevice/data/data/com.android.providers.telephony/databases/m‌​mssms.db
JinSnow

9

โปรดทราบว่าตั้งแต่ Kitkat (Android 4.4 เปิดตัวเมื่อเดือนกันยายน 2556) เส้นทางเริ่มต้นเปลี่ยนจาก:

/data/data/com.android.providers/telephony/databases/mmssms.db

ไปยัง

/data/data/com.android.providers.telephony/databases/mmssms.db

อัปเดต: ดังที่กล่าวไว้ในความคิดเห็นเส้นทางหลังมีอยู่แล้วใน JB


การเปลี่ยนแปลงจะต้องได้รับการแนะนำวิธีก่อนที่จะเปิดตัว KitKat เนื่องจาก/data/data/com.android.providers.telephony/databases/mmssms.dbมีอยู่ใน JB ของฉัน
Firelord

JB เป็นรุ่นเดียวก่อนหน้า KK ดังนั้น"วิธีก่อน"อาจจะพูดเกินจริงเล็กน้อย ;-)
eyecatchUp

7

ดูเหมือนว่าจะย้ายไปอยู่data/User_DE/0/com.android.providers.telephony/databasesกับ Nougat

อย่างน้อยนี่คือที่ที่มันสามารถพบได้ใน Nexus 6 ของฉันหวังว่านี่จะช่วยได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.