SmsMessage

public class SmsMessage
extends Object

java.lang.Object
   ↳ android.telephony.gsm.SmsMessage


This class was deprecated in API level 4.
Replaced by android.telephony.SmsMessage that supports both GSM and CDMA.

A Short Message Service message.

Summary

Nested classes

class SmsMessage.SubmitPdu

This class was deprecated in API level 4. Use android.telephony.SmsMessage. 

Constants

int ENCODING_16BIT

This constant is deprecated. Use android.telephony.SmsMessage.

int ENCODING_7BIT

This constant is deprecated. Use android.telephony.SmsMessage.

int ENCODING_8BIT

This constant is deprecated. Use android.telephony.SmsMessage.

int ENCODING_UNKNOWN

This constant is deprecated. Use android.telephony.SmsMessage.

int MAX_USER_DATA_BYTES

This constant is deprecated. Use android.telephony.SmsMessage.

int MAX_USER_DATA_SEPTETS

This constant is deprecated. Use android.telephony.SmsMessage.

int MAX_USER_DATA_SEPTETS_WITH_HEADER

This constant is deprecated. Use android.telephony.SmsMessage.

Public constructors

SmsMessage()

This constructor is deprecated. Use android.telephony.SmsMessage.

Public methods

static int[] calculateLength(CharSequence messageBody, boolean use7bitOnly)

This method was deprecated in API level 4. Use android.telephony.SmsMessage.

static int[] calculateLength(String messageBody, boolean use7bitOnly)

This method is deprecated. Use android.telephony.SmsMessage.

static SmsMessage createFromPdu(byte[] pdu)

This method is deprecated. Use android.telephony.SmsMessage.

String getDisplayMessageBody()

This method is deprecated. Use android.telephony.SmsMessage.

String getDisplayOriginatingAddress()

This method is deprecated. Use android.telephony.SmsMessage.

String getEmailBody()

This method is deprecated. Use android.telephony.SmsMessage.

String getEmailFrom()

This method is deprecated. Use android.telephony.SmsMessage.

int getIndexOnSim()

This method is deprecated. Use android.telephony.SmsMessage and getIndexOnIcc instead.

String getMessageBody()

This method is deprecated. Use android.telephony.SmsMessage.

SmsMessage.MessageClass getMessageClass()

This method is deprecated. Use android.telephony.SmsMessage.

String getOriginatingAddress()

This method is deprecated. Use android.telephony.SmsMessage.

byte[] getPdu()

This method is deprecated. Use android.telephony.SmsMessage.

int getProtocolIdentifier()

This method is deprecated. Use android.telephony.SmsMessage.

String getPseudoSubject()

This method is deprecated. Use android.telephony.SmsMessage.

String getServiceCenterAddress()

This method is deprecated. Use android.telephony.SmsMessage.

int getStatus()

This method is deprecated. Use android.telephony.SmsMessage.

int getStatusOnSim()

This method is deprecated. Use android.telephony.SmsMessage and getStatusOnIcc instead.

static SmsMessage.SubmitPdu getSubmitPdu(String scAddress, String destinationAddress, String message, boolean statusReportRequested)

This method is deprecated. Use android.telephony.SmsMessage.

static SmsMessage.SubmitPdu getSubmitPdu(String scAddress, String destinationAddress, short destinationPort, byte[] data, boolean statusReportRequested)

This method is deprecated. Use android.telephony.SmsMessage.

static int getTPLayerLengthForPDU(String pdu)

This method is deprecated. Use android.telephony.SmsMessage.

long getTimestampMillis()

This method is deprecated. Use android.telephony.SmsMessage.

byte[] getUserData()

This method is deprecated. Use android.telephony.SmsMessage.

boolean isCphsMwiMessage()

This method is deprecated. Use android.telephony.SmsMessage.

boolean isEmail()

This method is deprecated. Use android.telephony.SmsMessage.

boolean isMWIClearMessage()

This method is deprecated. Use android.telephony.SmsMessage.

boolean isMWISetMessage()

This method is deprecated. Use android.telephony.SmsMessage.

boolean isMwiDontStore()

This method is deprecated. Use android.telephony.SmsMessage.

boolean isReplace()

This method is deprecated. Use android.telephony.SmsMessage.

boolean isReplyPathPresent()

This method is deprecated. Use android.telephony.SmsMessage.

boolean isStatusReportMessage()

This method is deprecated. Use android.telephony.SmsMessage.

Inherited methods

Constants

ENCODING_16BIT

Added in API level 1
public static final int ENCODING_16BIT

This constant is deprecated.
Use android.telephony.SmsMessage.

16-bit encoding scheme (see TS 23.038)

Constant Value: 3 (0x00000003)

ENCODING_7BIT

Added in API level 1
public static final int ENCODING_7BIT

This constant is deprecated.
Use android.telephony.SmsMessage.

7-bit encoding scheme (see TS 23.038)

Constant Value: 1 (0x00000001)

ENCODING_8BIT

Added in API level 1
public static final int ENCODING_8BIT

This constant is deprecated.
Use android.telephony.SmsMessage.

8-bit encoding scheme (see TS 23.038)

Constant Value: 2 (0x00000002)

ENCODING_UNKNOWN

Added in API level 1
public static final int ENCODING_UNKNOWN

This constant is deprecated.
Use android.telephony.SmsMessage.

Unknown encoding scheme (see TS 23.038)

Constant Value: 0 (0x00000000)

MAX_USER_DATA_BYTES

Added in API level 1
public static final int MAX_USER_DATA_BYTES

This constant is deprecated.
Use android.telephony.SmsMessage.

The maximum number of payload bytes per message

Constant Value: 140 (0x0000008c)

MAX_USER_DATA_SEPTETS

Added in API level 1
public static final int MAX_USER_DATA_SEPTETS

This constant is deprecated.
Use android.telephony.SmsMessage.

The maximum number of payload septets per message

Constant Value: 160 (0x000000a0)

MAX_USER_DATA_SEPTETS_WITH_HEADER

Added in API level 1
public static final int MAX_USER_DATA_SEPTETS_WITH_HEADER

This constant is deprecated.
Use android.telephony.SmsMessage.

The maximum number of payload septets per message if a user data header is present. This assumes the header only contains the CONCATENATED_8_BIT_REFERENCE element.

Constant Value: 153 (0x00000099)

Public constructors

SmsMessage

Added in API level 1
public SmsMessage ()

This constructor is deprecated.
Use android.telephony.SmsMessage.

Public methods

calculateLength

Added in API level 3
Deprecated in API level 4
public static int[] calculateLength (CharSequence messageBody, 
                boolean use7bitOnly)

This method was deprecated in API level 4.
Use android.telephony.SmsMessage.

Calculates the number of SMS's required to encode the message body and the number of characters remaining until the next message, given the current encoding.

Parameters
messageBody CharSequence: the message to encode

use7bitOnly boolean: if true, characters that are not part of the GSM alphabet are counted as a single space char. If false, a messageBody containing non-GSM alphabet characters is calculated for 16-bit encoding.

Returns
int[] an int[4] with int[0] being the number of SMS's required, int[1] the number of code units used, and int[2] is the number of code units remaining until the next message. int[3] is the encoding type that should be used for the message.

calculateLength

Added in API level 1
public static int[] calculateLength (String messageBody, 
                boolean use7bitOnly)

This method is deprecated.
Use android.telephony.SmsMessage.

Calculates the number of SMS's required to encode the message body and the number of characters remaining until the next message, given the current encoding.

Parameters
messageBody String: the message to encode

use7bitOnly boolean: if true, characters that are not part of the GSM alphabet are counted as a single space char. If false, a messageBody containing non-GSM alphabet characters is calculated for 16-bit encoding.

Returns
int[] an int[4] with int[0] being the number of SMS's required, int[1] the number of code units used, and int[2] is the number of code units remaining until the next message. int[3] is the encoding type that should be used for the message.

createFromPdu

Added in API level 1
public static SmsMessage createFromPdu (byte[] pdu)

This method is deprecated.
Use android.telephony.SmsMessage.

Create an SmsMessage from a raw PDU.

Parameters
pdu byte

Returns
SmsMessage

getDisplayMessageBody

Added in API level 1
public String getDisplayMessageBody ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns the message body, or email message body if this message was from an email gateway. Returns null if message body unavailable.

Returns
String

getDisplayOriginatingAddress

Added in API level 1
public String getDisplayOriginatingAddress ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns the originating address, or email from address if this message was from an email gateway. Returns null if originating address unavailable.

Returns
String

getEmailBody

Added in API level 1
public String getEmailBody ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns
String if isEmail() is true, body of the email sent through the gateway. null otherwise

getEmailFrom

Added in API level 1
public String getEmailFrom ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns
String if isEmail() is true, email from address of email sent through the gateway. null otherwise

getIndexOnSim

Added in API level 1
public int getIndexOnSim ()

This method is deprecated.
Use android.telephony.SmsMessage and getIndexOnIcc instead.

Returns the record index of the message on the SIM (1-based index).

Returns
int the record index of the message on the SIM, or -1 if this SmsMessage was not created from a SIM SMS EF record.

getMessageBody

Added in API level 1
public String getMessageBody ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns the message body as a String, if it exists and is text based.

Returns
String message body is there is one, otherwise null

getMessageClass

Added in API level 1
public SmsMessage.MessageClass getMessageClass ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns the class of this message.

Returns
SmsMessage.MessageClass

getOriginatingAddress

Added in API level 1
public String getOriginatingAddress ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns the originating address (sender) of this SMS message in String form or null if unavailable

Returns
String

getPdu

Added in API level 1
public byte[] getPdu ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns the raw PDU for the message.

Returns
byte[] the raw PDU for the message.

getProtocolIdentifier

Added in API level 1
public int getProtocolIdentifier ()

This method is deprecated.
Use android.telephony.SmsMessage.

Get protocol identifier.

Returns
int

getPseudoSubject

Added in API level 1
public String getPseudoSubject ()

This method is deprecated.
Use android.telephony.SmsMessage.

Unofficial convention of a subject line enclosed in parens empty string if not present

Returns
String

getServiceCenterAddress

Added in API level 1
public String getServiceCenterAddress ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns the address of the SMS service center that relayed this message or null if there is none.

Returns
String

getStatus

Added in API level 1
public int getStatus ()

This method is deprecated.
Use android.telephony.SmsMessage.

GSM: For an SMS-STATUS-REPORT message, this returns the status field from the status report. This field indicates the status of a previously submitted SMS, if requested. See TS 23.040, 9.2.3.15 TP-Status for a description of values. CDMA: For not interfering with status codes from GSM, the value is shifted to the bits 31-16. The value is composed of an error class (bits 25-24) and a status code (bits 23-16). Possible codes are described in C.S0015-B, v2.0, 4.5.21.

Returns
int 0 indicates the previously sent message was received. See TS 23.040, 9.9.2.3.15 and C.S0015-B, v2.0, 4.5.21 for a description of other possible values.

getStatusOnSim

Added in API level 1
public int getStatusOnSim ()

This method is deprecated.
Use android.telephony.SmsMessage and getStatusOnIcc instead.

Returns the status of the message on the SIM (read, unread, sent, unsent).

Returns
int the status of the message on the SIM. These are: SmsManager.STATUS_ON_SIM_FREE SmsManager.STATUS_ON_SIM_READ SmsManager.STATUS_ON_SIM_UNREAD SmsManager.STATUS_ON_SIM_SEND SmsManager.STATUS_ON_SIM_UNSENT

getSubmitPdu

Added in API level 1
public static SmsMessage.SubmitPdu getSubmitPdu (String scAddress, 
                String destinationAddress, 
                String message, 
                boolean statusReportRequested)

This method is deprecated.
Use android.telephony.SmsMessage.

Get an SMS-SUBMIT PDU for a destination address and a message

Parameters
scAddress String: Service Centre address. Null means use default.

destinationAddress String

message String

statusReportRequested boolean

Returns
SmsMessage.SubmitPdu a SubmitPdu containing the encoded SC address, if applicable, and the encoded message. Returns null on encode error.

getSubmitPdu

Added in API level 1
public static SmsMessage.SubmitPdu getSubmitPdu (String scAddress, 
                String destinationAddress, 
                short destinationPort, 
                byte[] data, 
                boolean statusReportRequested)

This method is deprecated.
Use android.telephony.SmsMessage.

Get an SMS-SUBMIT PDU for a data message to a destination address & port

Parameters
scAddress String: Service Centre address. null == use default

destinationAddress String: the address of the destination for the message

destinationPort short: the port to deliver the message to at the destination

data byte: the dat for the message

statusReportRequested boolean

Returns
SmsMessage.SubmitPdu a SubmitPdu containing the encoded SC address, if applicable, and the encoded message. Returns null on encode error.

getTPLayerLengthForPDU

Added in API level 1
public static int getTPLayerLengthForPDU (String pdu)

This method is deprecated.
Use android.telephony.SmsMessage.

Get the TP-Layer-Length for the given SMS-SUBMIT PDU Basically, the length in bytes (not hex chars) less the SMSC header

Parameters
pdu String

Returns
int

getTimestampMillis

Added in API level 1
public long getTimestampMillis ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns the service centre timestamp in currentTimeMillis() format

Returns
long

getUserData

Added in API level 1
public byte[] getUserData ()

This method is deprecated.
Use android.telephony.SmsMessage.

returns the user data section minus the user data header if one was present.

Returns
byte[]

isCphsMwiMessage

Added in API level 1
public boolean isCphsMwiMessage ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns true for CPHS MWI toggle message.

Returns
boolean true if this is a CPHS MWI toggle message See CPHS 4.2 section B.4.2

isEmail

Added in API level 1
public boolean isEmail ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns true if message is an email.

Returns
boolean true if this message came through an email gateway and email sender / subject / parsed body are available

isMWIClearMessage

Added in API level 1
public boolean isMWIClearMessage ()

This method is deprecated.
Use android.telephony.SmsMessage.

returns true if this message is a CPHS voicemail / message waiting indicator (MWI) clear message

Returns
boolean

isMWISetMessage

Added in API level 1
public boolean isMWISetMessage ()

This method is deprecated.
Use android.telephony.SmsMessage.

returns true if this message is a CPHS voicemail / message waiting indicator (MWI) set message

Returns
boolean

isMwiDontStore

Added in API level 1
public boolean isMwiDontStore ()

This method is deprecated.
Use android.telephony.SmsMessage.

returns true if this message is a "Message Waiting Indication Group: Discard Message" notification and should not be stored.

Returns
boolean

isReplace

Added in API level 1
public boolean isReplace ()

This method is deprecated.
Use android.telephony.SmsMessage.

See TS 23.040 9.2.3.9 returns true if this is a "replace short message" SMS

Returns
boolean

isReplyPathPresent

Added in API level 1
public boolean isReplyPathPresent ()

This method is deprecated.
Use android.telephony.SmsMessage.

Returns true iff the TP-Reply-Path bit is set in this message.

Returns
boolean

isStatusReportMessage

Added in API level 1
public boolean isStatusReportMessage ()

This method is deprecated.
Use android.telephony.SmsMessage.

Return true iff the message is a SMS-STATUS-REPORT message.

Returns
boolean