Found several answers here, but not one did not work for me. Where is the mistake?
public class MainActivity extends Activity { final String LOG_TAG = "myLog"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TelephonyManager TelephonyMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); TelephonyMgr.listen(new TeleListener(), PhoneStateListener.LISTEN_CALL_STATE); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu_main, menu); return true; } class TeleListener extends PhoneStateListener { public void onCallStateChanged(int state, String incomingNumber) { super.onCallStateChanged(state, incomingNumber); switch (state) { case TelephonyManager.CALL_STATE_IDLE: // CALL_STATE_IDLE; break; case TelephonyManager.CALL_STATE_OFFHOOK: // CALL_STATE_OFFHOOK; break; case TelephonyManager.CALL_STATE_RINGING: // CALL_STATE_RINGING Log.d(LOG_TAG,"CALL_STATE_RINGING " + incomingNumber); break; default: break; } } } }