首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SmsManager大获成功

SmsManager大获成功
EN

Stack Overflow用户
提问于 2011-05-06 16:31:40
回答 2查看 1.9K关注 0票数 1

我使用下面的代码来发送短信。但是当没有发送sms时,这似乎不会产生异常。例如,当没有足够的钱来发送它时,我仍然使用smsSucces();有人知道解决这个问题的方法来确定它已经发送了吗?

代码语言:javascript
复制
    private boolean composeSms(String telefoonnr, String boodschap) {
    if(telefoonnr.equals("") || boodschap.equals(""))   {
        smsFail();
        return false;
    }
    try {
    SmsManager sm =  SmsManager.getDefault();
    //PendingIntent pi = PendingIntent.getActivity(this, 0, new Intent(this, SmsActivity.class), 0);   
    sm.sendTextMessage(telefoonnr, null, boodschap, null, null);
    DataClass dc = (DataClass) getApplicationContext();
    dc.setBoolean(DataClass.ACTIVATED_SMS, true);
    dc.setString(DataClass.SMS_NUMBER, telefoonnr);
    Log.d("temp","sms send succesfully");
    smsSucces();
    return true;
    }
    catch (Exception e) {
        e.printStackTrace();
        smsFail();
        return false;
    }


}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-05-06 17:32:15

您好,您可以使用广播短信投递报告`

以下是此操作的代码

//短信下发待定意图

代码语言:javascript
复制
PendingIntent deliveredIntent = PendingIntent.getBroadcast(this, 0, new Intent(DELIVERED_ACTION), 0);

//短信发送接收方

代码语言:javascript
复制
registerReceiver(new BroadcastReceiver(){
@Override
public void onReceive(Context context, Intent intent) {
    Log.d(TAG, "SMS sent intent received.");
}
}, new IntentFilter(SENT_ACTION));

//短信下发接收方

代码语言:javascript
复制
registerReceiver(new BroadcastReceiver(){
@Override
public void onReceive(Context context, Intent intent) {
    Log.d(TAG, "SMS delivered intent received.");
}
}, new IntentFilter(DELIVERED_ACTION));
票数 1
EN

Stack Overflow用户

发布于 2011-05-06 17:32:31

老实说我也不确定。但是也许你可以在这里找到答案:http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/os/SmsMessagingDemo.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5908790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档