在我的应用程序
中,我使用SMS Manager
发送短信。要检查消息是否已发送,我正在使用 Toast
。
我想获取 SMS Delivery Report
而不是 Toast
。我正在尝试很多示例,但是,一个流程不显示交付报告,就像在我的代码中发送 SMS 时我的余额为 0当我的余额为 0 时,我想找到发送失败报告的短信。
代码:
String phoneNo = phno.getText().toString();
String smsBody = body.getText().toString();
//Selected Messages to report to 1909
{
try
{
SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(phoneNo, null, smsBody, null, null);
Toast.makeText(getApplicationContext(), "SMS Sent to: "+phoneNo,Toast.LENGTH_SHORT).show();
}
catch (Exception e)
{
//Error Occurred if No Messages Selected
Toast.makeText(getApplicationContext(),"SMS failed, please try again later!",Toast.LENGTH_SHORT).show();
e.printStackTrace();
}
}
}
最佳答案
试试这个链接,
SMS Delivery Report in Android
class deliverReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent arg1) {
switch (getResultCode()) {
case Activity.RESULT_OK:
Toast.makeText(getBaseContext(), sms_delivered,
Toast.LENGTH_SHORT).show();
break;
case Activity.RESULT_CANCELED:
Toast.makeText(getBaseContext(), sms_not_delivered,
Toast.LENGTH_SHORT).show();
break;
}
}
}
不要忘记在 list 中添加这些权限
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.WRITE_SMS" />
关于android - 如何获取已发送短信的送达报告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22140086/