美文网首页
收到彩信一

收到彩信一

作者: 坠叶飘香 | 来源:发表于2019-05-26 15:53 被阅读0次
接收彩信1.png

1.processMessagePart

frameworks\opt\telephony\src\java\com\android\internal\telephony\InboundSmsHandler.java

private boolean processMessagePart(InboundSmsTracker tracker) {
  if (destPort == SmsHeader.PORT_WAP_PUSH) { //彩信通知
    // Build up the data stream
    ByteArrayOutputStream output = new ByteArrayOutputStream();
    for (byte[] pdu : pdus) {
      // 3GPP needs to extract the User Data from the PDU; 3GPP2 has already done this
      if (!tracker.is3gpp2()) {
        SmsMessage msg = SmsMessage.createFromPdu(pdu, SmsConstants.FORMAT_3GPP);
        if (msg != null) {
          pdu = msg.getUserData();
        } else {
          loge("processMessagePart: SmsMessage.createFromPdu returned null");
          return false;
        }
      }
      output.write(pdu, 0, pdu.length);
    }
    int result = mWapPush.dispatchWapPdu(output.toByteArray(), resultReceiver, this); //往应用层抛
    if (DBG) log("dispatchWapPdu() returned " + result);
    // result is Activity.RESULT_OK if an ordered broadcast was sent
    if (result == Activity.RESULT_OK) {
      return true;
    } else {
      deleteFromRawTable(tracker.getDeleteWhere(), tracker.getDeleteWhereArgs(), MARK_DELETED);
      return false;
    }
  }
}

2.dispatchWapPdu

frameworks\opt\telephony\src\java\com\android\internal\telephony\WapPushOverSms.java

public int dispatchWapPdu(byte[] pdu, BroadcastReceiver receiver, InboundSmsHandler handler) {
  Intent intent = new Intent(Intents.WAP_PUSH_DELIVER_ACTION);
  intent.setType(result.mimeType);
  intent.putExtra("transactionId", result.transactionId);
  intent.putExtra("pduType", result.pduType);
  intent.putExtra("header", result.header);
  intent.putExtra("data", result.intentData);
  intent.putExtra("contentTypeParameters", result.contentTypeParameters);
  SubscriptionManager.putPhoneIdAndSubIdExtra(intent, result.phoneId);

  handler.dispatchIntent(intent, getPermissionForType(result.mimeType),
                getAppOpsPermissionForIntent(result.mimeType), options, receiver,
                UserHandle.SYSTEM);
  return Activity.RESULT_OK;
}

3.dispatchIntent

frameworks\opt\telephony\src\java\com\android\internal\telephony\InboundSmsHandler.java

public void dispatchIntent(Intent intent, String permission, int appOp,
            Bundle opts, BroadcastReceiver resultReceiver, UserHandle user) {
  mContext.sendOrderedBroadcastAsUser(intent, user, permission, appOp, opts,
                    resultReceiver, getHandler(), Activity.RESULT_OK, null, null);
}

相关文章

  • 收到彩信一

    1.processMessagePart frameworks\opt\telephony\src\java\co...

  • 申请来的诈骗

    手机上收到一个彩信 WIFI过去,5G马上普及了 居然收到彩信了 ———— 打开,下载 彩信消失了 取而代之的是,...

  • 收到彩信二

    收到通知,返回通知确认 下载彩信 1.onReceive packages\apps\Mms\src\com\an...

  • 《一张彩信照片》

    有了微信后, 彩信几乎很少有人会用到, 我前几天就再次收到了彩信, 是来自一位快递小哥。 那天我没在家, 接到快递...

  • o2o

    的比较多的方式是购买者收到一条包含二维码的彩信,购买者可以凭借这条短彩信到服务网点经专业设备验证通过后,即可享受对...

  • 彩信

    彩信的英文名是MMS,它是MultimediaMessagingService的缩写,意为多媒体信息服务。最大的特...

  • 彩信

    下午六点多,意外地收到一则彩信,是一只黄色的蝴蝶,趴在做了防滑处理的“地板上”上。 那个电话号码似曾相识,却又想不...

  • 连环计

    朱山打开车门,在驾驶座位上刚坐好,手机突然收到一条短信。 他低头看了一下手机,发现收到的是一条彩信。他犹豫了一下,...

  • 视频短信、超级短信是什么?

    视频短信、超级短信是什么? 渠联智能超级彩信和超级短信都可以称之为大体量的彩信,普通的106彩信大约90kb左右,...

  • 视频彩信和彩信的区别

    视频彩信和彩信的区别 定义: 视频短信,是指集影、音、文于一体的短信业务,可以为移动、联通、电信手机用户发送“文案...

网友评论

      本文标题:收到彩信一

      本文链接:https://www.haomeiwen.com/subject/hwxftctx.html