diff --git a/telephony/java/com/android/internal/telephony/cdma/CdmaSMSDispatcher.java b/telephony/java/com/android/internal/telephony/cdma/CdmaSMSDispatcher.java index aee45bffa3e8c..ed93aea189887 100644 --- a/telephony/java/com/android/internal/telephony/cdma/CdmaSMSDispatcher.java +++ b/telephony/java/com/android/internal/telephony/cdma/CdmaSMSDispatcher.java @@ -167,7 +167,8 @@ final class CdmaSMSDispatcher extends SMSDispatcher { // not yet been handled and also do not correspond to the two // kinds that are processed below. if ((SmsEnvelope.TELESERVICE_WMT != teleService) && - (SmsEnvelope.TELESERVICE_WEMT != teleService)) { + (SmsEnvelope.TELESERVICE_WEMT != teleService) && + (SmsEnvelope.MESSAGE_TYPE_BROADCAST != sms.getMessageType())) { return Intents.RESULT_SMS_UNSUPPORTED; } diff --git a/telephony/java/com/android/internal/telephony/cdma/SmsMessage.java b/telephony/java/com/android/internal/telephony/cdma/SmsMessage.java index 3e491d1442dcf..403b7a1d16d3e 100755 --- a/telephony/java/com/android/internal/telephony/cdma/SmsMessage.java +++ b/telephony/java/com/android/internal/telephony/cdma/SmsMessage.java @@ -458,10 +458,21 @@ public class SmsMessage extends SmsMessageBase { * {@link com.android.internal.telephony.cdma.sms.SmsEnvelope#TELESERVICE_VMN}, * {@link com.android.internal.telephony.cdma.sms.SmsEnvelope#TELESERVICE_WAP} */ - public int getTeleService() { + /* package */ int getTeleService() { return mEnvelope.teleService; } + /** + * Returns the message type of the message. + * @return the message type: + * {@link com.android.internal.telephony.cdma.sms.SmsEnvelope#MESSAGE_TYPE_POINT_TO_POINT}, + * {@link com.android.internal.telephony.cdma.sms.SmsEnvelope#MESSAGE_TYPE_BROADCAST}, + * {@link com.android.internal.telephony.cdma.sms.SmsEnvelope#MESSAGE_TYPE_ACKNOWLEDGE}, + */ + /* package */ int getMessageType() { + return mEnvelope.messageType; + } + /** * Decodes pdu to an empty SMS object. * In the CDMA case the pdu is just an internal byte stream representation