Android的通知时,电话簿更新(内容观察员) [英] Android notify when phone book is updated(Content Observer)

查看:184
本文介绍了Android的通知时,电话簿更新(内容观察员)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我希望得到一个通知,我的电话,如果有在接触数据库(添加,删除).Right现在我使用ContentObserver得到notified.Following任何变化,我的code.Problem的是,我能无法知道哪些接触changed.Can任何人的帮助???

I want to get a notification on my phone if there is any change in the contact database(add,delete).Right now i am using ContentObserver to get notified.Following is my code.Problem is that i able not able to know which contact is changed.Can anyone help???

public class ContentObserverActivity extends Activity {
    Button registerbutton;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        registerbutton=(Button)findViewById(R.id.button1);
        registerbutton.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
            getContentResolver()
                .registerContentObserver(
                        ContactsContract.Contacts.CONTENT_URI, true,
                        new MyCOntentObserver());   
            }
        });
    }


    public class MyCOntentObserver extends ContentObserver{
        public MyCOntentObserver() {
            super(null);
        }
        @Override
        public void onChange(boolean selfChange) {
        super.onChange(selfChange);
            Log.e("","~~~~~~"+selfChange);
        }  

        @Override
        public boolean deliverSelfNotifications() {
            return true;
        }
    }
}

在此先感谢。

Thanks in advance.

推荐答案

观察不提供信息,这里面联系人添加/更新/删除。要了解这个保存的联系人在自己的数据库表,当观察者发送改变通知与系统中的联系人进行检查。

Observer does not provide the information that which contact is added/update/deleted. To get to know this save the contacts in your own DB table and when observer send the change notification check it with system's Contacts.

这篇关于Android的通知时,电话簿更新(内容观察员)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆