这个问题更像是一个“可能”的问题。
在显示来电者的身份时,Android是否可以使用应用中的其他联系人列表?
因此,例如,如果一个人打电话并且他们的身份在应用联系人列表中,但不在内部设备联系人列表中,我想让在应用联系人列表中找到的ID显示在该呼叫者ID上来电。
任何见解都将不胜感激!
答案 0 :(得分:4)
我找到了我正在寻找的解决方案。我最后只是使用通知来显示正在呼叫的人。我希望这有助于其他人寻找一个好的解决方案!
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() {
}
}
答案 1 :(得分:3)
我认为广播接收器是可能的。这里有一些类似的问题Call block,Taking complete control of phone, is it possible和另一个名为Intent Intercept的开源应用。我给你打电话阻止链接,这样你就可以抓住号码,直接到你的应用程序并阻止普通拨号器