相关疑难解决方法(0)

Android SMS Delivery Intent始终返回-1

我在Android上遇到了一个奇怪的问题.当我通过我的应用程序发送短信时,我想听取发送意图.这是我到目前为止所做的:

private void shootSMS(String number,long currentTime){
    SmsManager smsManager = SmsManager.getDefault();

    Intent sentIntent = new Intent(SentBroadcastReceiver.SENT_ACTION);
    Intent deliveredIntent = new Intent(DeliveredBroadcastReceiver.DELIVERED_ACTION);

    Bundle b = new Bundle();
    b.putString("num",number);
    b.putString("record_time",currentTime+"");

    sentIntent.putExtras(b);
    deliveredIntent.putExtras(b);


    PendingIntent sentPendingIntent = PendingIntent.getBroadcast(this,(int)currentTime,sentIntent,PendingIntent.FLAG_ONE_SHOT);
    PendingIntent deliveredPendingIntent = PendingIntent.getBroadcast(this,(int)currentTime,deliveredIntent,PendingIntent.FLAG_ONE_SHOT);
    smsManager.sendTextMessage(number,null,getString(R.string.app_name),sentPendingIntent,deliveredPendingIntent);

}
Run Code Online (Sandbox Code Playgroud)

现在的问题是,当onReceive()调用我的广播接收器的getResultCode()方法时,我调用该方法,它总是返回-1!即使手机关闭,也无法跟踪短信是否已发送!

我用GoSMSPro检查了号码并发送了一条失败的短信.有趣的是,当我把我的手机在飞行模式下,我得到的结果代码等于2这是SmsManager.RESULT_ERROR_RADIO_OFF

现在问题是这里有什么问题?

sms android-intent

9
推荐指数
1
解决办法
1994
查看次数

标签 统计

android-intent ×1

sms ×1