我已经实现了自定义ContactsDirectoryProvider,当联系人或拨号程序应用程序使用 内容://com.android.contacts/data/phones/filter <形式的URI搜索联系人时,该工作正常/ EM>
但是当InCallUI或CallLog尝试检索联系人信息时 URI 内容:/ contacts / phone_lookup 我的提供商的查询方法未被调用。
请任何建议......
P.S。 我没有实现单独的同步提供程序,这可能是问题吗?
答案 0 :(得分:0)
我们正在使用的解决方法是使用BroadcastReceiver监听来电:
<receiver android:name=".domain.callerid.CallerIdBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>
</receiver>
然后在BroadcastReceiver的onReceive方法中,您可以获取传入号码:
intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER)
(这需要从Android Pie开始的READ_CALL_LOG权限)
然后,您可以使用输入的号码来匹配一个人并显示敬酒和/或通知