public abstract class com.android.internal.telephony.SmsMessageBase
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.android.internal.telephony.SmsMessageBase
super_class: java.lang.Object
{
protected java.lang.String mScAddress;
descriptor: Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
protected com.android.internal.telephony.SmsAddress mOriginatingAddress;
descriptor: Lcom/android/internal/telephony/SmsAddress;
flags: (0x0004) ACC_PROTECTED
protected java.lang.String mMessageBody;
descriptor: Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
protected java.lang.String mPseudoSubject;
descriptor: Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
protected java.lang.String mEmailFrom;
descriptor: Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
protected java.lang.String mEmailBody;
descriptor: Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
protected boolean mIsEmail;
descriptor: Z
flags: (0x0004) ACC_PROTECTED
protected long mScTimeMillis;
descriptor: J
flags: (0x0004) ACC_PROTECTED
protected byte[] mPdu;
descriptor: [B
flags: (0x0004) ACC_PROTECTED
protected byte[] mUserData;
descriptor: [B
flags: (0x0004) ACC_PROTECTED
protected com.android.internal.telephony.SmsHeader mUserDataHeader;
descriptor: Lcom/android/internal/telephony/SmsHeader;
flags: (0x0004) ACC_PROTECTED
protected boolean mIsMwi;
descriptor: Z
flags: (0x0004) ACC_PROTECTED
protected boolean mMwiSense;
descriptor: Z
flags: (0x0004) ACC_PROTECTED
protected boolean mMwiDontStore;
descriptor: Z
flags: (0x0004) ACC_PROTECTED
protected int mStatusOnIcc;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected int mIndexOnIcc;
descriptor: I
flags: (0x0004) ACC_PROTECTED
public int mMessageRef;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_m1
putfield com.android.internal.telephony.SmsMessageBase.mStatusOnIcc:I
2: aload 0
iconst_m1
putfield com.android.internal.telephony.SmsMessageBase.mIndexOnIcc:I
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/android/internal/telephony/SmsMessageBase;
public java.lang.String getServiceCenterAddress();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mScAddress:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/internal/telephony/SmsMessageBase;
public java.lang.String getOriginatingAddress();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mOriginatingAddress:Lcom/android/internal/telephony/SmsAddress;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.android.internal.telephony.SmsMessageBase.mOriginatingAddress:Lcom/android/internal/telephony/SmsAddress;
invokevirtual com.android.internal.telephony.SmsAddress.getAddressString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/android/internal/telephony/SmsMessageBase;
public java.lang.String getDisplayOriginatingAddress();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mIsEmail:Z
ifeq 2
1: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mEmailFrom:Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.android.internal.telephony.SmsMessageBase.getOriginatingAddress:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/android/internal/telephony/SmsMessageBase;
public java.lang.String getMessageBody();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mMessageBody:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/internal/telephony/SmsMessageBase;
public abstract com.android.internal.telephony.SmsConstants$MessageClass getMessageClass();
descriptor: ()Lcom/android/internal/telephony/SmsConstants$MessageClass;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public java.lang.String getDisplayMessageBody();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mIsEmail:Z
ifeq 2
1: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mEmailBody:Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.android.internal.telephony.SmsMessageBase.getMessageBody:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/android/internal/telephony/SmsMessageBase;
public java.lang.String getPseudoSubject();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mPseudoSubject:Ljava/lang/String;
ifnonnull 1
ldc ""
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mPseudoSubject:Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/android/internal/telephony/SmsMessageBase;
public long getTimestampMillis();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mScTimeMillis:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/internal/telephony/SmsMessageBase;
public boolean isEmail();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mIsEmail:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/internal/telephony/SmsMessageBase;
public java.lang.String getEmailBody();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mEmailBody:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/internal/telephony/SmsMessageBase;
public java.lang.String getEmailFrom();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mEmailFrom:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/internal/telephony/SmsMessageBase;
public abstract int getProtocolIdentifier();
descriptor: ()I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract boolean isReplace();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract boolean isCphsMwiMessage();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract boolean isMWIClearMessage();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract boolean isMWISetMessage();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract boolean isMwiDontStore();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public byte[] getUserData();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mUserData:[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/internal/telephony/SmsMessageBase;
public com.android.internal.telephony.SmsHeader getUserDataHeader();
descriptor: ()Lcom/android/internal/telephony/SmsHeader;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mUserDataHeader:Lcom/android/internal/telephony/SmsHeader;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/internal/telephony/SmsMessageBase;
public byte[] getPdu();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mPdu:[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/internal/telephony/SmsMessageBase;
public abstract int getStatus();
descriptor: ()I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract boolean isStatusReportMessage();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract boolean isReplyPathPresent();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public int getStatusOnIcc();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mStatusOnIcc:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/internal/telephony/SmsMessageBase;
public int getIndexOnIcc();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mIndexOnIcc:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/internal/telephony/SmsMessageBase;
protected void parseMessageBody();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mOriginatingAddress:Lcom/android/internal/telephony/SmsAddress;
ifnull 2
aload 0
getfield com.android.internal.telephony.SmsMessageBase.mOriginatingAddress:Lcom/android/internal/telephony/SmsAddress;
invokevirtual com.android.internal.telephony.SmsAddress.couldBeEmailGateway:()Z
ifeq 2
1: aload 0
invokevirtual com.android.internal.telephony.SmsMessageBase.extractEmailAddressFromMessageBody:()V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/android/internal/telephony/SmsMessageBase;
protected void extractEmailAddressFromMessageBody();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.android.internal.telephony.SmsMessageBase.mMessageBody:Ljava/lang/String;
ldc "( /)|( )"
iconst_2
invokevirtual java.lang.String.split:(Ljava/lang/String;I)[Ljava/lang/String;
astore 1
start local 1 1: aload 1
arraylength
iconst_2
if_icmpge 2
return
2: StackMap locals: java.lang.String[]
StackMap stack:
aload 0
aload 1
iconst_0
aaload
putfield com.android.internal.telephony.SmsMessageBase.mEmailFrom:Ljava/lang/String;
3: aload 0
aload 1
iconst_1
aaload
putfield com.android.internal.telephony.SmsMessageBase.mEmailBody:Ljava/lang/String;
4: aload 0
aload 0
getfield com.android.internal.telephony.SmsMessageBase.mEmailFrom:Ljava/lang/String;
invokestatic android.provider.Telephony$Mms.isEmailAddress:(Ljava/lang/String;)Z
putfield com.android.internal.telephony.SmsMessageBase.mIsEmail:Z
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/android/internal/telephony/SmsMessageBase;
1 6 1 parts [Ljava/lang/String;
public static int findNextUnicodePosition(int, int, java.lang.CharSequence);
descriptor: (IILjava/lang/CharSequence;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iload 0
iload 1
iconst_2
idiv
iadd
aload 2
invokeinterface java.lang.CharSequence.length:()I
invokestatic java.lang.Math.min:(II)I
istore 3
start local 3 1: iload 3
aload 2
invokeinterface java.lang.CharSequence.length:()I
if_icmpge 20
2: invokestatic java.text.BreakIterator.getCharacterInstance:()Ljava/text/BreakIterator;
astore 4
start local 4 3: aload 4
aload 2
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
invokevirtual java.text.BreakIterator.setText:(Ljava/lang/String;)V
4: aload 4
iload 3
invokevirtual java.text.BreakIterator.isBoundary:(I)Z
ifne 20
5: aload 4
iload 3
invokevirtual java.text.BreakIterator.preceding:(I)I
istore 5
start local 5 6: goto 8
7: StackMap locals: int java.text.BreakIterator int
StackMap stack:
iinc 5 4
8: StackMap locals:
StackMap stack:
iload 5
iconst_4
iadd
iload 3
if_icmpgt 15
9: aload 2
iload 5
invokestatic java.lang.Character.codePointAt:(Ljava/lang/CharSequence;I)I
10: invokestatic android.text.Emoji.isRegionalIndicatorSymbol:(I)Z
11: ifeq 15
12: aload 2
iload 5
iconst_2
iadd
invokestatic java.lang.Character.codePointAt:(Ljava/lang/CharSequence;I)I
13: invokestatic android.text.Emoji.isRegionalIndicatorSymbol:(I)Z
14: ifne 7
15: StackMap locals:
StackMap stack:
iload 5
iload 0
if_icmple 18
16: iload 5
istore 3
17: goto 20
StackMap locals:
StackMap stack:
18: aload 2
iload 3
iconst_1
isub
invokeinterface java.lang.CharSequence.charAt:(I)C
invokestatic java.lang.Character.isHighSurrogate:(C)Z
ifeq 20
19: iinc 3 -1
end local 5 end local 4 20: StackMap locals:
StackMap stack:
iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 currentPosition I
0 21 1 byteLimit I
0 21 2 msgBody Ljava/lang/CharSequence;
1 21 3 nextPos I
3 20 4 breakIterator Ljava/text/BreakIterator;
6 20 5 breakPos I
MethodParameters:
Name Flags
currentPosition
byteLimit
msgBody
public static com.android.internal.telephony.GsmAlphabet$TextEncodingDetails calcUnicodeEncodingDetails(java.lang.CharSequence);
descriptor: (Ljava/lang/CharSequence;)Lcom/android/internal/telephony/GsmAlphabet$TextEncodingDetails;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=7, args_size=1
start local 0 0: new com.android.internal.telephony.GsmAlphabet$TextEncodingDetails
dup
invokespecial com.android.internal.telephony.GsmAlphabet$TextEncodingDetails.<init>:()V
astore 1
start local 1 1: aload 0
invokeinterface java.lang.CharSequence.length:()I
iconst_2
imul
istore 2
start local 2 2: aload 1
iconst_3
putfield com.android.internal.telephony.GsmAlphabet$TextEncodingDetails.codeUnitSize:I
3: aload 1
aload 0
invokeinterface java.lang.CharSequence.length:()I
putfield com.android.internal.telephony.GsmAlphabet$TextEncodingDetails.codeUnitCount:I
4: iload 2
sipush 140
if_icmple 24
5: sipush 134
istore 3
start local 3 6: invokestatic android.telephony.SmsMessage.hasEmsSupport:()Z
ifne 9
7: iload 2
bipush 9
iload 3
iconst_2
isub
imul
if_icmpgt 9
8: iinc 3 -2
9: StackMap locals: com.android.internal.telephony.GsmAlphabet$TextEncodingDetails int int
StackMap stack:
iconst_0
istore 4
start local 4 10: iconst_0
istore 5
start local 5 11: goto 21
12: StackMap locals: int int
StackMap stack:
iload 4
iload 3
13: aload 0
14: invokestatic com.android.internal.telephony.SmsMessageBase.findNextUnicodePosition:(IILjava/lang/CharSequence;)I
istore 6
start local 6 15: iload 6
aload 0
invokeinterface java.lang.CharSequence.length:()I
if_icmpne 19
16: aload 1
iload 4
iload 3
iconst_2
idiv
iadd
17: aload 0
invokeinterface java.lang.CharSequence.length:()I
isub
18: putfield com.android.internal.telephony.GsmAlphabet$TextEncodingDetails.codeUnitsRemaining:I
19: StackMap locals: int
StackMap stack:
iload 6
istore 4
20: iinc 5 1
end local 6 21: StackMap locals:
StackMap stack:
iload 4
aload 0
invokeinterface java.lang.CharSequence.length:()I
if_icmplt 12
22: aload 1
iload 5
putfield com.android.internal.telephony.GsmAlphabet$TextEncodingDetails.msgCount:I
end local 5 end local 4 end local 3 23: goto 26
24: StackMap locals:
StackMap stack:
aload 1
iconst_1
putfield com.android.internal.telephony.GsmAlphabet$TextEncodingDetails.msgCount:I
25: aload 1
sipush 140
iload 2
isub
iconst_2
idiv
putfield com.android.internal.telephony.GsmAlphabet$TextEncodingDetails.codeUnitsRemaining:I
26: StackMap locals:
StackMap stack:
aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 msgBody Ljava/lang/CharSequence;
1 27 1 ted Lcom/android/internal/telephony/GsmAlphabet$TextEncodingDetails;
2 27 2 octets I
6 23 3 maxUserDataBytesWithHeader I
10 23 4 pos I
11 23 5 msgCount I
15 21 6 nextPos I
MethodParameters:
Name Flags
msgBody
}
SourceFile: "SmsMessageBase.java"
NestMembers:
com.android.internal.telephony.SmsMessageBase$SubmitPduBase
InnerClasses:
public final Mms = android.provider.Telephony$Mms of android.provider.Telephony
public TextEncodingDetails = com.android.internal.telephony.GsmAlphabet$TextEncodingDetails of com.android.internal.telephony.GsmAlphabet
public final MessageClass = com.android.internal.telephony.SmsConstants$MessageClass of com.android.internal.telephony.SmsConstants
public abstract SubmitPduBase = com.android.internal.telephony.SmsMessageBase$SubmitPduBase of com.android.internal.telephony.SmsMessageBase