• Stars
    star
    390
  • Rank 110,242 (Top 3 %)
  • Language
    Java
  • License
    Apache License 2.0
  • Created over 10 years ago
  • Updated about 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Android library created to listen incoming and outgoing SMS's

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:

  • SMS address. MSISDN used to send/receive the SMS.
  • SMS date. SMS local creation date.
  • SMS content. Message sent in the SMS.
  • SMS type. One SMS can be received or sent. Review SmsType enum if need it.

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.

More Repositories

1

ButtonMenu

ButtonMenu is an Android library created to build user interfaces based on buttons. This library has been implemented using Model View ViewModel pattern combined with an Android custom view that extends LinearLayout.
Java
440
star
2

TUDelorean

TUDelorean helps you test your time-dependent Objetive-C code allowing you travel anywhere in time.
Objective-C
281
star
3

secrets-manager

A daemon to sync Vault secrets to Kubernetes secrets
Go
171
star
4

activity-detector

Simple js module to detect when the user is really using your page
JavaScript
137
star
5

TUScheduler

TUScheduler is a very simple iOS library that solves the problem of asynchronous testing in an elegant and robust way. Furthermore, TUScheduler allows you to decouple your code from the underlying concurrency API.
Objective-C
36
star
6

animated-circle-progress-view

Progress view that animates its state changes.
Java
35
star
7

VideoRecorderService

VideoRecorderService is a lightweight web-based service that offers a REST interface to easily manage the recording of screen videos.
Java
35
star
8

pouch

Tools to provision secrets using Vault with AppRole authentication method
Go
32
star
9

sdp-to-jingle-java

Java
27
star
10

ikusth

Threads dependency graph generator
Java
25
star
11

kube2lb

Dinamically configure load balancers to expose Kubernetes services
Go
22
star
12

TMAERecorder

AVAudioRecorder replacement which allows audio recording with real time sound filtering. Implemented using The Amazing Audio Engine.
Objective-C
20
star
13

hiphop-php

Source code transformer from PHP to C++
C++
18
star
14

programming-challenge-2

Solutions and writeups from participants of the Tuenti Programming Challenge 2
Java
17
star
15

android-deferred

Java
14
star
16

python-repoman

Repoman is a python library designed to automate repository operations in release processes.
Python
13
star
17

TMInstanceMethodSwizzler

Method swizzling library for Objetive-C
Objective-C
13
star
18

TMDebugConsole

TMDebugConsole is a simple in-app console to be used with Cocoa Lumberjack. It allows you to see your logs on the device, without needing to be paired with a debug session in XCode, using different colors for errors, warnings, and informative messages
Objective-C
9
star
19

ldap-expire-notify

ldap-expire-notify is a tool to notify your LDAP users when their password is about to expire. It supports several kind of notification channels.
Python
9
star
20

supernanny

Java
8
star
21

haproxy-docker-wrapper

Docker-friendly wrapper for haproxy
Go
7
star
22

pyflapjackevents

Pyflapjackevents is a small library that serializes Flapjack events for the Python language
Python
7
star
23

simtron

TypeScript
4
star
24

php-json-rpc

Tuenti's implementation of json rpc according to the json-rpc spec 2.0 excluding events and batches. It provides the implementation of the objects described in the implementation and a json-rpc client.
PHP
4
star
25

tuenti-star-validator

Submission validator and score calculator for #TuentiChallenge6's Tuenti Star challenge
OCaml
4
star
26

geoip

C
1
star
27

tuenti-php-sdk

Tuenti PHP SDK for Applications
PHP
1
star