如何动态修改调用者名称



是否有一种方法如何动态修改出现在屏幕上的名字,当有人打电话?

例如,我的联系人列表中有一个号码是"123456789",名字是"Bill Gates"。现在,当号码"123456789"呼叫我时,我希望将屏幕上显示的对应名称更改为"Test"。

我有一个广播接收器,用来监听来电。收到特定号码(123456789)的呼叫后,我将联系人姓名更改为相应的值(Test)。

联系人姓名更改为"Test",但在通话过程中屏幕上显示的姓名不变。

有没有类似观察者模式的东西,一旦联系人被更新,所有的接收者都会得到通知?

我尝试了contentResolver.notifyChange(URI_CONTACTS, null, true),但是不工作

提前感谢您的建议

是否有一种方法如何动态修改出现在屏幕上的名字,当有人打电话?

不,至少没有适合你的场景的通用方法。手机应用程序必须自己检查来电者姓名的变化。正如你的测试所显示的,这并不适用于你正在使用的手机应用程序。

有没有类似观察者模式的东西,一旦联系人被更新,所有的接收者都会得到通知?

不过,手机应用程序必须将自己注册为观察者。

最新更新