gpt4 book ai didi

android - 手动更新联系人的 ContentObserver

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:16:54 26 4
gpt4 key购买 nike

我已经从服务中注册了一个 ContentObserver 并且当电话中有更新(例如调用或联系人更新)时我得到了 onchange() 函数。但我希望仅在发生添加、更新或删除时调用 onchange() 函数。但我不希望来电或去电。那么有人可以告诉我可以在 contentObserver 中注册哪个 URI 吗?我的代码在这里

getContentResolver().registerContentObserver(ContactsContract.Contacts.CONTENT_URI, true,new Contact_change());

和 Contact_change.java 类类似

public class Contact_change extends ContentObserver{

public Contact_service() {
super(null);
}

@Override
public void onChange(boolean selfChange){
Log.i("contact_service","onchange");
Super.onChange(selfChange);
}

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

}

编辑:
我还有一个问题是,在停止服务后,如果我更改了联系方式,那么 onchange() 函数也会被调用。那么我该如何停止或取消注册 contentobserver

最佳答案

我使用了ContactsContract.Contacts.CONTENT_VCARD_URI,如前所述here .

你也可以像上面提到的那样设置一个 threshold_time here

效率更高一些。

关于android - 手动更新联系人的 ContentObserver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12244140/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com