2012-08-09 12 views
6

Diese Frage ist eher eine Frage "ist es möglich".Abfangen von Telefonanrufen zum Anzeigen von Kontakten Info

Ist es für Android möglich, eine andere Kontaktliste aus einer Anwendung zu verwenden, wenn die Identität eines eingehenden Anrufers angezeigt wird?

So, zum Beispiel, wenn eine Person anruft und ihre Identität ist in der apps Kontaktliste, aber nicht in der internen Geräte Kontaktliste, ich möchte die ID in der apps Kontaktliste finden Sie auf der Anrufer-ID von der eingehende Anruf.

Jeder Einblick würde geschätzt werden!

Antwort

3

Ich denke, dass es mit Broadcast-Empfänger möglich ist. Hier einige ähnliche Frage Call block, Taking complete control of phone, is it possible und eine andere Open-Source-App namens Intent Intercept. Ich gebe Ihnen Anruf blockieren Link, so dass Sie die Nummer, direkt zu Ihrer App und Blockieren normalen Dialer

+0

Danke für die Links! Ich habe sie benutzt, um eine nette, saubere Antwort zu bekommen, nach der ich gesucht habe. Ich werde es unten teilen! – TDev

+0

Wenn mein 2. Link richtig ist, können Sie die richtige Antwort überprüfen –

+0

Eigentlich mehr von der ersten verwendet, um zu tun, was ich brauchte, aber immer noch gilt. Vielen Dank! – TDev

4

Ich fand die Lösung, die ich suchte. Am Ende habe ich nur eine Benachrichtigung verwendet, um anzuzeigen, wer anruft. Ich hoffe, das hilft jemand anderem da draußen auf der Suche nach einer schönen Lösung!

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() { 

} 
} 
+0

Wie hat es Ihre ursprüngliche Frage gelöst? Über das Anzeigen von Kontaktinformationen von anderen Apps im Bildschirm für eingehende Anrufe? Von diesem Code aus können Sie den eingehenden Anruf abfangen, aber wie zeigen Sie Informationen auf dem Bildschirm an? – Zotyi

Verwandte Themen