It is known that Android's SMS is stored as:
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
)
In a situation with dual-SIM phone, can it be expected that some of the parameters can be used to identify which SIM was used to send/receive SMS?
Its known that person == NULL
for outgoing SMS in normal case; it doesn't seems that my dual-sim MTK phone has any tendency to remember from which SIM a message was sent in conversation (that's how I replyleaked my work number to friends once...).
Also, I guess there's still only one SMS content folder (or else a severe compatibility problems will come), and ContentValues seemingly can't store much data too.
But, I still want to support both HTC's and MTK's dual sim solutions; what are most known ways to associate incoming/outgoing SMS with a SIM #? How to get sender # for outgoing SMS and get receive path number for incoming?
P.S. "Service center #" is known but rejected solution - I do own two SIMs from one operator in one phone..