/system/framework/telephony-common.jar
现在三棒把通讯相关的东西从frameworks.jar抽出来放到了这里,其实没多大变化。
参考了一篇两年前的文章:http://www.miui.com/thread-378600-1-1.html
受益匪浅!基本就是照着这个来的…
comandroidinternaltelephonycdmaCdmaSMSDispatcher.smali文件
1.找到所有 0x1004的地方,从const/16改成const,数值改成0xfeda
2.找到调用方法processCdmaWapPdu的上面几行,####中间的为添加的内容
move-object/from16 v0, p0
iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mWapPush:Lcom/android/internal/telephony/WapPushOverSms;
invoke-virtual/range {p1 .. p1}, Lcom/android/internal/telephony/SmsMessageBase;->getOriginatingAddress()Ljava/lang/String;
move-result-object v4
invoke-virtual/range {p1 .. p1}, Lcom/android/internal/telephony/SmsMessageBase;->getTimestampMillis()J
move-result-wide v5
invoke-virtual {v3, v4, v5, v6}, Lcom/android/internal/telephony/WapPushOverSms;->setWpaPushAddressTimeStamp(Ljava/lang/String;J)V
.line 344
invoke-virtual/range {v20 .. v20}, Lcom/android/internal/telephony/cdma/SmsMessage;->getUserData()[B
move-result-object v3
###########################
move-object/from16 v11, v3 #v20: userData
array-length v11, v11 #v11 userData.length
new-instance v12, Lcom/android/internal/util/BitwiseInputStream;
invoke-direct {v12, v3}, Lcom/android/internal/util/BitwiseInputStream;->([B)V # v12: bis
const/16 v8, 0x45
invoke-virtual {v12, v8}, Lcom/android/internal/util/BitwiseInputStream;->skip(I)V
mul-int/lit8 v11, v11, 0x8
add-int/lit8 v11, v11, -0x48 # userData.length*8 - 72
invoke-virtual {v12, v11}, Lcom/android/internal/util/BitwiseInputStream;->readByteArray(I)[B
move-result-object v3
###########################
move-object/from16 v0, v20
iget v4, v0, Lcom/android/internal/telephony/SmsMessageBase;->messageRef:I
invoke-virtual/range {v20 .. v20}, Lcom/android/internal/telephony/cdma/SmsMessage;->getOriginatingAddress()Ljava/lang/String;
move-result-object v5
move-object/from16 v0, p0
invoke-virtual {v0, v3, v4, v5}, Lcom/android/internal/telephony/cdma/CdmaSMSDispatcher;->processCdmaWapPdu([BILjava/lang/String;)I
move-result v3
3.用海卓APN什么的软件改彩信APN