Android 使用“时如何检查交货报告”*“0”;方法?

Android 使用“时如何检查交货报告”*“0”;方法?,android,sms,broadcastreceiver,telephony,Android,Sms,Broadcastreceiver,Telephony,在我进一步解释之前,我想说这是一个模块,但我不相信我需要的信息依赖于任何暴露的知识 我正在编写一个方法,它只知道在类调用SMSReceiver extends BroadcastReceiver的onReceive方法之前运行哪个(感谢Xposed)。对于那些不熟悉Xposed的人来说,这只允许我在调用onReceive时将方法放在它之前,允许我检查发送给它的参数,更改参数,等等 但这只是背景,我真正需要的是弄清楚如何检查收到的邮件是否是送达报告 My network(giffgaff)允许通过

在我进一步解释之前,我想说这是一个模块,但我不相信我需要的信息依赖于任何暴露的知识

我正在编写一个方法,它只知道在类调用
SMSReceiver extends BroadcastReceiver
onReceive
方法之前运行哪个(感谢Xposed)。对于那些不熟悉Xposed的人来说,这只允许我在调用
onReceive
时将方法放在它之前,允许我检查发送给它的参数,更改参数,等等

但这只是背景,我真正需要的是弄清楚如何检查收到的邮件是否是送达报告

My network(giffgaff)允许通过在邮件前添加
*0#
的方式发送邮件报告,当其他手机收到邮件时,邮件会自动回复发送报告。例如,这会发生

发送方发送:
*0#测试

接收器看到:
测试

发件人看到:
邮件[number here]到[number here],在[date]的[time]发送,文本为:“Test”


我尝试使用
getResultCode()
检查收到的文本是否是交付报告,但这似乎不起作用。有什么建议吗?

从GiffGaff的可用信息中,我可以看出,您的送货报告是以普通短信的形式发送的,在这种情况下,除了内容之外,它与任何其他信息都没有区别。我怀疑始发地址是否有任何帮助,因为它很可能是一个服务中心号码,而不是目的地地址


所以,要想弄清楚这一点,唯一的办法就是解析消息,看看它是否符合您显示的模板,以及目的地号码是否一致。

我也在想,谢谢您的确认。严格来说,这与标准交付报告不同?如果说标准交付报告,是指通过SmsManager API提供的功能,那么是的,这有点不同。即使使用API,交付报告的状态和条件在提供者之间也存在很大差异。在你的情况下,GiffGaff只是通过向你发送一条普通的旧短信作为确认来处理它。非常有趣。接受你的回答,谢谢你的帮助。