为Android创建PDU

时间:2011-04-28 17:41:50

标签: android unit-testing sms pdu

我目前正在编写和申请,即发送/接收短信。

为了进行单元测试,我需要以编程方式创建PDU。解码非常简单:

Bundle bundle = intent.getExtras();
if (bundle != null) {
    /* Get all messages contained in the Intent*/
    Object[] pdusObj = (Object[]) bundle.get("pdus");
    for (int i = 0; i < pdusObj.length; i++) {
        SmsMessage msg = SmsMessage.createFromPdu((byte[])pdusObj[i]);
    }
}

有没有合适的方法以编程方式创建 PDU?

1 个答案:

答案 0 :(得分:9)

通常,PDU在代码中是硬编码的。与此类似:

String pdu = "07914151551512f2040B916105551511f100006060605130308A04D4F29C0E";
SmsMessage sms = SmsMessage.createFromPdu(HexDump.hexStringToByteArray(pdu));

Here's关于如何执行此操作的完整示例。

现在,你要问我“在哪里可以找到用于测试的PDU?”你生成它。例如,您可以使用this在线服务。

我希望这会有所帮助!!