这个问题更多的是“这是可能的”问题。拦截电话来显示联系人信息
在显示传入呼叫者的身份时,Android是否可以使用来自应用程序的不同联系人列表?
例如,如果一个人打电话,他们的身份是在应用程序联系人列表中,但不是在内部设备联系人列表中,我想让在应用程序联系人列表中找到的ID显示在呼叫者ID来电。
任何有识之士将不胜感激!
这个问题更多的是“这是可能的”问题。拦截电话来显示联系人信息
在显示传入呼叫者的身份时,Android是否可以使用来自应用程序的不同联系人列表?
例如,如果一个人打电话,他们的身份是在应用程序联系人列表中,但不是在内部设备联系人列表中,我想让在应用程序联系人列表中找到的ID显示在呼叫者ID来电。
任何有识之士将不胜感激!
我认为广播接收机是可能的。这里有一些类似的问题Call block,Taking complete control of phone, is it possible和另一个名为Intent Intercept的开源应用程序。我给你呼叫阻止链接,所以你可以赶上号码,直接到您的应用程序,并阻止普通拨号器
我找到了我正在寻找的解决方案。我最终只是使用通知来显示谁在打电话。我希望这可以帮助其他人寻找一个好的解决方案!
StateListener yourListener = new StateListener();
TelephonyManager yourmanager =(TelephonyManager)getSystemService(TELEPHONY_SERVICE);
yourmanager.listen(yourListener, PhoneStateListener.LISTEN_CALL_STATE);
class StateListener extends PhoneStateListener{
@Override
public void onCallStateChanged(int state, String incomingNumber) {
super.onCallStateChanged(state, incomingNumber);
switch(state){
case TelephonyManager.CALL_STATE_RINGING:
//do what you want with the incoming number here:
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
break;
case TelephonyManager.CALL_STATE_IDLE:
break;
}
};
public void onDestroy() {
}
}
它是如何解决您的原始问题?关于在来电屏幕上显示来自其他应用程序的联系信息?从这段代码中,好的,你可以接听来电,但你如何在屏幕上显示信息? – Zotyi 2014-12-11 16:46:59
感谢您的联系!我用它们来获得我期待的一个很好的干净回应。我会在下面分享它! – TDev 2012-08-10 12:28:29
如果我的第二个链接是正确的,所以你可以检查正确的答案 – 2012-08-10 13:55:40
实际上使用更多的第一个做我所需要的,但仍然适用。谢谢! – TDev 2012-08-10 17:55:52