Android的内容观察者

有个很常见的需求就是当有新的短信来的时候,把内容显示在界面上。这里就要用到内容观察者。就是让你的程序监视短信,如果他内容发生变化的时候,你去获取。而短信那边做的情况就 是,当他自己的数据变化时,他告诉有个公共短信内存区,他说,我数据变化了!然后通过短信的内容提供者把短信的内容拿到公共内存区,你的程序再过去拿。这里有点简单的示例代码:

 

ContentResolver resolver = getContentResolver();
		Uri uri = Uri.parse("content://sms/");
		resolver.registerContentObserver(uri, true, new MyObserver(new Handler()));
		Cursor cursor = resolver.query(uri, new String[]{"address","date","type","body"}, null, null, null);
		cursor.moveToFirst();
		String address = cursor.getString(0);
		String body = cursor.getString(3);
		System.out.println(address+"---"+body);
		cursor.close();

 

Tagged: ,

Comments are closed.