My application basically backup the SMS and MMS to cloud server. I used below URI to retrieve data from database.
SMS- Uri uri = Uri.parse("content://sms/");
MMS-Uri uri = Uri.parse("content://mms/");
Few days back while testing my app i noticed some messages(SMS & MMS) are missing while retrieving from SQLite. After doing some research i found that those are RCS (Rich Communication Services) messages. Now my challenge is to read RCS messages(SMS & MMS). Is there any way to read RCS (Rich Communication Services) messages in Android? What URI i need to use for read RCS (Rich Communication Services) messages?
Thanks in advance.
EDIT: It seems like the API won’t make it after all. Work is still happening to it apparently: https://android-review.googlesource.com/q/RCS+(status:open+OR+status:merged). But it won’t be for third-party developers.
According to this (https://9to5google.com/2019/02/22/android-q-rcs-api-delay/), now there will be no developer-accessible API for RCS messages until Android R at the earliest.
There isn’t a way (short of some vendor-specific API) at the moment, but support for programatically interfacing with RCS is underway if the code commits are any indication of the direction Android is going… https://android-review.googlesource.com/c/platform/frameworks/base/+/849669
The relevant classes are still being implemented, but it looks like you’ll be relying on these (tentatively):
RcsParticipantRcsThreadRcs1To1Thread (extends RcsThread)RcsGroupThread (extends RcsThread)RcsMessageRcsIncomingMessage (extends RcsMessage)RcsOutgoingMessage (extends RcsMessage)RcsPartRcsFileTransferPart (extends RcsPart)RcsLocationPart (extends RcsPart)RcsMultiMediaPart (extends RcsPart)RcsTextPart (extends RcsPart)This code is telling:
class RcsThreadQueryHelper {
static final String ASCENDING = "ASCENDING";
static final String DESCENDING = "DESCENDING";
static final String THREAD_ID = "_id";
static final Uri THREADS_URI = Uri.parse("content://rcs/thread");
static final Uri PARTICIPANTS_URI = Uri.parse("content://rcs/participant");
static final String[] THREAD_PROJECTION = new String[]{THREAD_ID};
static String buildWhereClause(RcsThreadQueryParameters queryParameters) {
// TODO - implement
return null;
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With