getDatum method

Future<Datum> getDatum()
override

Subclasses should implement this method to collect a Datum.

Can return null if no data is available. Can return an ErrorDatum if an error occurs.

Implementation

Future<Datum> getDatum() async {
  List<SmsMessage> allSms = [];
  allSms
    ..addAll(await Telephony.instance.getInboxSms(
      columns: ALL_SMS_COLUMNS,
    ))
    ..addAll(await Telephony.instance.getSentSms(
      columns: ALL_SMS_COLUMNS,
    ));
  return TextMessageLogDatum()
    ..textMessageLog =
        allSms.map((sms) => TextMessage.fromSmsMessage(sms)).toList();
}