【发布时间】:2016-11-12 06:30:09
【问题描述】:
我目前正在写作和申请,即发送/接收短信。
出于单元测试的目的,我需要以编程方式创建 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?
【问题讨论】:
-
我不清楚你为什么要对 PDU 进行单元测试,因为它是由 Android 处理的。你真的不想只测试你的逻辑而不是谷歌吗?
-
这不是谁的逻辑问题。即使环境(移动服务提供商或设备)不是,我也在测试我的应用程序是否正常工作。目前,我正在使用直截了当的方法进行测试,我想开始广播“android.provider.Telephony.SMS_RECEIVED”,并附上 Intent 和适当的捆绑包,以测试我的代码是否正常工作。
-
@ibo.ezhe 您是否成功地以编程方式创建了一个可以使用 createFromPDU() 方法解码的 PDU?我已经围绕这个问题跳舞了一个星期。我有同样的问题,有 50 个赏金 - stackoverflow.com/q/12335642
标签: android unit-testing sms pdu