Kde sú uložené SMS správy v Android telefóne
![]()
Jednoduchá odpoveď: v SQlite databáze v súbore /data/data/com.android.providers.telephony/databases/mmssms.db
A ako si SMS správy prečítam?
Spustíme ADB shell a prepneme sa na roota cez “su”:
Teraz otvoríme SQlite databázu a pozrieme si, aké tabuľky v nej máme:
# sqlite3 /data/data/com.android.providers.telephony/databases/mmssms.db
sqlite> .tables
addr pdu threads
android_metadata pending_msgs words
attachments rate words_content
canonical_addresses raw words_segdir
drm sms words_segments
part sr_pending
Prípadne si ešte pozrieme to, akú štruktúru má tabuľka sms :
sqlite> .schema sms
CREATE TABLE sms (
_id INTEGER PRIMARY KEY,
thread_id INTEGER,
address TEXT,
person INTEGER,
date INTEGER,
date_sent INTEGER DEFAULT 0,
protocol INTEGER,
read INTEGER DEFAULT 0,
status INTEGER DEFAULT -1,
type INTEGER,
reply_path_present INTEGER,
subject TEXT,
body TEXT,
service_center TEXT,
locked INTEGER DEFAULT 0,
error_code INTEGER DEFAULT 0,
seen INTEGER DEFAULT 0,
sub_id INTEGER DEFAULT 0
);
...
Z výpisu schémy tabuľky sms som odstránil výpis triggerov, ktoré majú za úlohu aktualizovať tabuľku threads. A keď si chcete rovno vypísať zoznam našich SMS správ:
A ešte na záver takýto pekný univerzálny command: