当前位置: 首页 > 知识库问答 >
问题:

在一个广播接收器(Android)中接收和发送短信

锺离飞尘
2023-03-14

我正在尝试设置一个类来接收短信和发送状态。以下是我的清单如何查找此任务:

        <receiver android:name=".SmsListener" android:permission="android.permission.BROADCAST_SMS" android:exported="true">
            <intent-filter android:priority="5822">
                <action android:name="android.provider.Telephony.SMS_RECEIVED" />
                <action android:name="android.provider.Telephony.SMS_SENT" />
            </intent-filter>
        </receiver>

我收到了收到的消息,但没有收到发送的消息,我的清单声明有问题吗?

      PendingIntent _pendingIntent;
      Intent _intent = new Intent();
      _intent.setClass(ParkingOptionsActivity.this, SmsListener.class); // SmsListener extends BroadcastReceiver
      _intent.putExtra("test","test");
      _pendingIntent =  PendingIntent.getActivity(ParkingOptionsActivity.this, 0, _intent, 0);
      SmsManager sms = SmsManager.getDefault();
      sms.sendTextMessage(phoneNumber, null, "test message", _pendingIntent, null);

共有1个答案

董永宁
2023-03-14

您需要使用getBroadcast()来获取您的PendingIntent,而不是getActive(),因为您希望将广播发送到您的BroadcastRecencer,而不是启动活动

在当前代码中,您可以简单地更改这一行:

_pendingIntent = PendingIntent.getBroadcast(ParkingOptionsActivity.this, 0, _intent, 0);

此外,“android.provider.Telephony.SMS_SENT”操作当前不在SDK中,发送SMS时没有系统广播。你的应用程序并不真的需要这个

如果您确实计划将该操作用于其他操作——例如,在onAccess()中区分广播,接收来自其他应用程序的隐式广播,等等。-然后您可以考虑将其更改为使用android.provider.电话包名称以外的其他内容,以免在未来导致潜在的不必要行为或混淆。我想说,使用您自己应用程序的包名称是常态。

 类似资料:
  • 本文向大家介绍Android BroadcastReceiver接收收到短信的广播,包括了Android BroadcastReceiver接收收到短信的广播的使用技巧和注意事项,需要的朋友参考一下 一、知识介绍   1、broadcastReceiver是广播接受者,四大组件之一。   2、Android中内置了很多系统级别的广播,可以在应用程序中得到各种系统的状态信息。   3、使用场景:  

  • 问题内容: 有人可以解释和之间的确切区别吗? 在什么情况下我们必须使用每个Receiver类? 问题答案: 和之间只有一个区别。 当您收到内部广播方法时, 假设, BroadcastReceiver : 它 不保证 该 CPU将保持清醒 ,如果你启动一些长时间运行的进程。CPU可能会立即回到睡眠状态。 WakefulBroadcastReceiver : 这是 保证 该 CPU将保持清醒 ,直到你

  • 嗨,我试图捕捉短信内容和使用我的应用程序,所以我做了一个广播接收器与许可和清单,但当设备接收短信,我的代码不运行,这意味着广播接收器不发射。我也查了这里里里外外的很多文章,有一些: Android短信接收结果到主要活动短信接收不工作 我还尝试在活动onCreate()中动态注册接收器,但没有任何变化 有人知道问题出在哪里吗?它应该只是庆祝一个消息被累犯,这样我就可以继续工作,但接收器似乎甚至没有发

  • 本文向大家介绍详解Android短信的发送和广播接收实现短信的监听,包括了详解Android短信的发送和广播接收实现短信的监听的使用技巧和注意事项,需要的朋友参考一下 本文介绍了Android短信的发送和广播接收者实现短信的监听,要注意Android清单中权限的设置以及广播的注册监听实现,废话不多说,代码如下: 以下就是 Android清单的XML AndroidManifest.xml 发送短息

  • 本文向大家介绍Android接收和发送短信处理,包括了Android接收和发送短信处理的使用技巧和注意事项,需要的朋友参考一下 关于短信接收处理方面,当前已经有一些app做的比较好了,比如发给手机发验证码验证的问题,很多app在手机接收到验证码后,不需要输入,就直接可以跳过验证界面,这就是用到了对接收到的短信的处理。至于短信的发送,也没什么好说的了。在此也只是附上一个小实例。 效果图: MainA

  • 本文向大家介绍Android中的广播和广播接收器代码实例,包括了Android中的广播和广播接收器代码实例的使用技巧和注意事项,需要的朋友参考一下 BroadcastReceiver不仅可以接收系统广播,也可接收自定义的广播   1.定义一个广播接收器   2.发送广播,定义好action标志,用Intent发送 3.注册只接收指定action的广播接收器 4.取消该广播接收器