zoukankan      html  css  js  c++  java
  • android手机短信获取

    关于Android中对短信的一些相关操。我看到一个文章下面我就从标题中的三个方面来对Android系统中的短信操作进行一个简单地学习。

    短信发送:

    由于Android中对短信发送方法的优良封装,之后对发送短信的开发就显得异常的简单了。

    public static void sendMessage(Context context, String content, String phoneNumber) {
            SmsManager sms = SmsManager.getDefault();
            PendingIntent pi = PendingIntent.getBroadcast(context, 0, new Intent(), 0);
            sms.sendTextMessage(phoneNumber, null, content, pi, null);
      }

    别忘了还有权限问题:

    短信接收:

    对于短信息的接收相对来说会复杂一些。而复杂的原因大家也应该比较容易理解——接收是不可控制的。也就是说我们的手机根本不知道什么时候会有一条短 信息过来。由于过于被动,用广播接收者。我们注册一个广播接收者,然后让这个广播接收者时 时刻刻地去监听短信息是否到达的这一事件。就这样,被动触发事件完美地解决了。下面让我们来看看这个过程:

    public void onReceive(Context context, Intent intent) {
            if (intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED")) {
                Bundle bundle = intent.getExtras();
                Object messages[] = (Object[]) bundle.get("pdus");
                SmsMessage smsMessage[] = new SmsMessage[messages.length];
                for (int n = 0; n < messages.length; n++) {
                    smsMessage[n] = SmsMessage.createFromPdu((byte[]) messages[n]);
                }
                showToast(context, "短信内容: " + smsMessage[0].getMessageBody());
            }
        }

    添加权限:

    以及在manifest中进行一个静态注册:

    短信拦截:

    在能够接收短信的基础上做一个短信拦截倒是简单了许多。因为能够接收,所以我只要成为第一个接收的人,并把接收到的短信不再向下传播,这就完成了短信息的拦截了。

    提高优先权(1000一般最大):

    阻断传播:

  • 相关阅读:
    uva558 Wormholes SPFA 求是否存在负环
    管理经验(一)——怎样当好一个管理者
    41. 百度面试题:字符串的排列(字符串)
    24L01/SI24R1调试笔记
    中英文对照 —— 学术概念
    matlab 稀疏矩阵(sparse matrix)
    matlab 稀疏矩阵(sparse matrix)
    matlab 可变参数与默认参数设置
    matlab 可变参数与默认参数设置
    卷积、卷积矩阵(Convolution matrix)与核(Kernel)
  • 原文地址:https://www.cnblogs.com/zyanrong/p/5672808.html
Copyright © 2011-2022 走看看