代码之家  ›  专栏  ›  技术社区  ›  Waza_Be

Android:以不可见的方式接收来自已定义号码的短信息[重复]

  •  0
  • Waza_Be  · 技术社区  · 14 年前

    可能重复:
    Can we delete an SMS in Android before it reaches the inbox?

    在我的Android应用程序中,它现在运行良好,我正在从一个用户向另一个用户发送自定义短信。

    一旦我检测到短信来自我的应用程序,我就用短信做我的事情,一切正常。

    但是现在,我不希望SMS应用程序检测到这条消息,因为它对用户来说是完全无用的。

    所以我想做的是: 一旦我收到它,我就会得到文本并避免系统获取它(或者至少停止此消息的通知)

    你知道怎么做吗?

    这是我的当前代码:

    (编辑:对不起,我不明白这是怎么回事!)

    public class SmsReceiver extends BroadcastReceiver {
    
    @Override
    
    public void onReceive(Context context, Intent intent) {
    
    // ---get the SMS message passed in---
    
    Bundle bundle = intent.getExtras();
    
    SmsMessage[] msgs = null;
    
    String str = "";
    
     if (bundle != null) {
    
    // ---retrieve the SMS message received---
    
    Object[] pdus = (Object[]) bundle.get("pdus");
    
    msgs = new SmsMessage[pdus.length];
    
    String number = "";
    
    String body = "";
    
    for (int i = 0; i < msgs.length; i++) {
        msgs[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
        number = msgs[i].getOriginatingAddress();
        body = msgs[i].getMessageBody().toString();
        str += "SMS from " + number;
        str += " :";
        str += body;
        str += "\n";
       }
    If(detectIfSmsComeFromMyApplication)
    // DELETE MESSAGE AND AVOID BROADCAST.
    // MAKE IT INVISIBLE TO USER
    

    }

    } }

    1 回复  |  直到 14 年前
        1
  •  2
  •   Community noseratio    7 年前