android短信后台发送信息判断

来源:互联网 发布:win10 python开发工具 编辑:程序博客网 时间:2024/05/23 11:52
//发送和接收广播
    String SEND_SMS = "SEND_SMS_SUCESS";  

    String DELIVERED_SMS = "DELIVERED_SMS_SUCESS";


//短信发送方法

    private void sendSMS(String send_number,String send_message) {  
//获取短信管理器,是Android系统默认的短信管理器,可以通过它发送短信。
    SmsManager sms = SmsManager.getDefault();  

//需要监听的发送广播信息
    Intent sendIntent = new Intent(SEND_SMS);  
    PendingIntent sendPI = PendingIntent.getBroadcast(this, 0, sendIntent,  
        0);  
 //需要监听的接收广播信息
    Intent deliverIntent = new Intent(DELIVERED_SMS);  
    PendingIntent deliverPI = PendingIntent.getBroadcast(this, 0,  
        deliverIntent, 0);  
 
    //如果短信内容超过70个字符 将这条短信拆成多条短信发送出去  
    if (send_message.length() > 70) {  
        ArrayList<String> msgs = sms.divideMessage(send_message);  
        for (String msg : msgs) {  
        sms.sendTextMessage(send_number, null, msg, sendPI, deliverPI);  
        }  
    } else {  
        sms.sendTextMessage(send_number, null, send_message, sendPI, deliverPI);  
    }  
    }  

//自己发送信息是否成功

    private BroadcastReceiver sendMessage = new BroadcastReceiver() {   
    @Override  
    public void onReceive(Context context, Intent intent) {  
        switch (getResultCode()) {  
        case Activity.RESULT_OK:  

//发送成功

default:  

//发送失败

        break;  
        }  
    }  
    };  
      
     //对方接收信息是否成功
    private BroadcastReceiver receiver = new BroadcastReceiver() {  
 
    @Override  
    public void onReceive(Context context, Intent intent) {  
        //接收成功
    }  
    };  


//在onCreate中注册广播

registerReceiver(sendMessage, new IntentFilter(SEND_SMS));  

 registerReceiver(receiver, new IntentFilter(DELIVERED_SMS));  


0 0
原创粉丝点击