Android 如何检查您是否可以从其他应用程序通过viber向联系人发送消息

Android 如何检查您是否可以从其他应用程序通过viber向联系人发送消息,android,android-contacts,Android,Android Contacts,您可以通过viber拨打任何电话作为“外呼” 我认为,使用意向查询管理器,我可以检查已注册“ACTION\u SEND”意向的列出的应用程序,然后我可以找到此集合与另一集合的交集,即给定联系人的帐户集合(使用ContactsContract获取)。认为这会给我提供与联系人联系的应用程序/方式 然而,事实并非如此,因为viber将自己注册为手机中所有号码的ContactContract。它也有发送属性,所以我的方法给出了一个假阳性,因为viber是通过Messeng与联系人联系的一种方式,即使他们

您可以通过viber拨打任何电话作为“外呼”

我认为,使用意向查询管理器,我可以检查已注册“ACTION\u SEND”意向的列出的应用程序,然后我可以找到此集合与另一集合的交集,即给定联系人的帐户集合(使用ContactsContract获取)。认为这会给我提供与联系人联系的应用程序/方式

然而,事实并非如此,因为viber将自己注册为手机中所有号码的ContactContract。它也有发送属性,所以我的方法给出了一个假阳性,因为viber是通过Messeng与联系人联系的一种方式,即使他们没有安装它

问:我如何检查联系人是否可以通过显式方法联系,即通过viber通过Messeng联系