SMS Radar Build Status Maven Central Android Arsenal

Read incoming and outgoing text messages using an Android application across different Android SDK versions it's not trivial. If yo don't want to appear as SMS application and your application has to read incoming and outgoing SMSs this is your library.

This Android library offers you two main classes to use to start listening text messages. SMS Radar is implemented in top of an Android service. To start / stop listening text messages use SmsRadar.initializeSmsRadarService(context, listener) with a Context instance and a SmsListener implementation.

Each time the device owner receives one SMS the SmsListener used to initialize SmsRadarService service will be notified in on onSmsSent(Sms sms) or onSmsReceived(Sms sms) methods.

The SMS information provided on SmsListener methods is:

This library works on Android 2.X or higher versions.

Download

Download the project, compile it using mvn clean install import smsradar-1.0.4.jar into your project.

Or declare it into your pom.xml

<dependency>
    <groupId>com.tuenti.smsradar</groupId>
    <artifactId>library</artifactId>
    <version>1.0.4</version>
</dependency>

Or into your build.gradle

dependencies{
    compile 'com.tuenti.smsradar:library:1.0.4'
}

Usage

Declare permissions to read SMS content provider in your AndroidManifest:


<uses-permission android:name="android.permission.READ_SMS"/>

Declare SmsRadar service in your AndroidManifest:


<service
        android:name=".SmsRadarService"
        android:exported="false"
        android:label="@string/app_name"/>

To use SMS Radar library you only have to initialize SmsRadar using a Context instance and one SmsListener:


SmsRadar.initializeSmsRadarService(context, new SmsListener() {
            @Override
            public void onSmsSent(Sms sms) {
                showSmsToast(sms);
            }

            @Override
            public void onSmsReceived(Sms sms) {
                showSmsToast(sms);
            }
        });

You can stop the SMS observer like in this sample:


SmsRadar.stopSmsRadarService(context);

Credits & Contact

SmsRadar was created by Android team at Tuenti Technologies S.L.. You can follow Tuenti engineering team on Twitter @tuentieng.

License

SmsRadar is available under the Apache License, Version 2.0. See LICENSE.txt file for more info.