Есть ли способ запустить приложение сразу после отклонения вызова?Как запустить приложение сразу после отклонения вызова?
Я попытался найти решения, но не нашел их.
Спасибо заранее ...
Есть ли способ запустить приложение сразу после отклонения вызова?Как запустить приложение сразу после отклонения вызова?
Я попытался найти решения, но не нашел их.
Спасибо заранее ...
используют PhoneStateListener, чтобы при завершении вызова. вам, скорее всего, придется активировать действия слушателя, чтобы дождаться начала вызова (дождитесь, пока он снова изменится с PHONE_STATE_OFFHOOK на PHONE_STATE_IDLE), а затем напишите некоторый код, чтобы вернуть ваше приложение в состояние IDLE.
Возможно, вам потребуется запустить прослушиватель в службе, чтобы он оставался включенным, и приложение перезагружается. пример кода:
EndCallListener callListener = new EndCallListener();
TelephonyManager mTM = (TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE);
mTM.listen(callListener, PhoneStateListener.LISTEN_CALL_STATE);
определение СЛУШАТЕЛЬ:
private class EndCallListener extends PhoneStateListener {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
if(TelephonyManager.CALL_STATE_RINGING == state) {
Log.i(LOG_TAG, "RINGING, number: " + incomingNumber);
}
if(TelephonyManager.CALL_STATE_OFFHOOK == state) {
//wait for phone to go offhook (probably set a boolean flag) so you know your app initiated the call.
Log.i(LOG_TAG, "OFFHOOK");
}
if(TelephonyManager.CALL_STATE_IDLE == state) {
//when this state occurs, and your flag is set, restart your app
Log.i(LOG_TAG, "IDLE");
}
}
}
использование Broadcast Слушатель, и слушать для входящего вызова. Найдите google для BroadcastListener, что-то вроде этого: «android java перехватить вызов». SO - это место, где можно помочь с уже существующим кодом, а не заниматься исследованиями или предоставить готовый код. –