Android中短信也是一种广播,当短信来时系统会发出广播。我们只要处理广播事件即可读取短信信息。

读取短信代码1:

public class SMSReceiver extends BroadcastReceiver{ public final static SmsMessage[] getMessagesFromIntent(Intent intent){ Bundle bundle= intent.getExtras(); Object messages[]=(Object[])bundle.get("pdus"); SmsMessage mSmsMessage[]= new SmsMessage[messages.length]; for(int i=0;i<messages.length;i++){ mSmsMessage[i]=SmsMessage.createFromPdu((byte[])messages[i]); } return mSmsMessage; } }

读取短信代码2:

/** * 获得短信 * @param intent * @return */    public final static SmsMessage[] getMessagesFromIntent(Intent intent) {            Object[] messages = (Object[]) intent.getSerializableExtra("pdus");            byte[][] pduObjs = new byte[messages.length][];            for (int i = 0; i < messages.length; i++) {                pduObjs[i] = (byte[]) messages[i];            }                        byte[][] pdus = new byte[pduObjs.length][];            int pduCount = pdus.length;            SmsMessage[] msgs = new SmsMessage[pduCount];                        for (int i = 0; i < pduCount; i++) {                pdus[i] = pduObjs[i];                msgs[i] = SmsMessage.createFromPdu(pdus[i]);            }                        return msgs;        } 


注意要在AndroidManifest.xml中声明其权限

<receiver android:name=".SMSReceiver" android:enabled="true"> <intent-filter> <action android:name="android.provider.Telephony.SMS_RECEIVED"/> </intent-filter> </receiver>

以上内容先暂记,待续。。。。

更多相关文章

  1. Android(安卓)动态注册广播
  2. Android的第三个应用---短信发送器
  3. Android(安卓)发送短信 和 打电话 具体事项
  4. 《Android》Lesson21-广播+SharedPreferences
  5. Android中彩信文件的读取
  6. android 飞行模式 注册广播后 三种状态监听
  7. Android(安卓)之 监控手机电量
  8. Android:短信发送器
  9. android读取plist文件

随机推荐

  1. Android 下使用 JSON 实现 HTTP 请求(自
  2. Android 中对JSON数据解析实例代码
  3. 相对布局的layout_alignLeft属性
  4. Android平台架构及特性
  5. 关于Android Studio中Run按钮是灰色的解
  6. 认识Android的UID(Unix user ID)与权限
  7. Android Recovery模式学习体会
  8. android之远程服务的调用
  9. 如何向Android的framework里添加新类 &&&
  10. Android中AsyncTask的使用与源码分析