ContentObserve --- 短信的监听

 

【1】创建contentOvserver 观察短信动态。

【2】通过 getContentResolver获取解析者。

【3】调用query 查询 通过游标获取短信内容。打印。

public class MainActivity extends Activity {



    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        //[1]注册内容观察者

        Uri uri = Uri.parse("content://sms/");

        getContentResolver().registerContentObserver(uri, true, new MyContentObserver(new Handler()));

        

    }

    //定义内容观察者

        private class MyContentObserver extends ContentObserver{

            public MyContentObserver(Handler handler) {

                super(handler);

            }

            //当我们观察的内容发生变化 这个方法就执行

            @Override

            public void onChange(boolean selfChange) {

                Uri uri = Uri.parse("content://sms/");

                Cursor cursor = getContentResolver().query(uri, new String[]{"address","body","date"}, null, null, null);

                cursor.moveToFirst();

                String address = cursor.getString(cursor.getColumnIndex("address"));

                String body = cursor.getString(1);

                System.out.println("address:"+address+"~~~"+body);

            }

            

        }

}



 

发布了785 篇原创文章 · 获赞 858 · 访问量 16万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 数字20 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览