某些操作

时间:2017-05-02 15:10:38

标签: android android-contentprovider android-contacts

我已经实现了自定义ContactsDirectoryProvider,当联系人或拨号程序应用程序使用 内容://com.android.contacts/data/phones/filter <形式的URI搜索联系人时,该工作正常/ EM>

但是当InCallUI或CallLog尝试检索联系人信息时 URI 内容:/ contacts / phone_lookup 我的提供商的查询方法未被调用。

请任何建议......

P.S。 我没有实现单独的同步提供程序,这可能是问题吗?

1 个答案:

答案 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权限)

然后,您可以使用输入的号码来匹配一个人并显示敬酒和/或通知