Надо получить номер входящего звонка, и при получении номер перейти на следующий activity.
Вам нужно в манифесте сделать BroadCast receiver:
<receiver android:name=".ServiceReceiver" >
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>
</receiver>
Добавьте класс который будет обрабатывать входящие звонки и в нем можете прописать переход на след. активити:
public class ServiceReceiver extends BroadcastReceiver {
@Override
public void onReceive(final Context context, Intent intent) {
TelephonyManager telephony = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
telephony.listen(new PhoneStateListener(){
@Override
public void onCallStateChanged(int state, String incomingNumber) {
super.onCallStateChanged(state, incomingNumber);
System.out.println("incomingNumber : "+incomingNumber);
// здесь вы можете сделать переход на другое активити
}
},PhoneStateListener.LISTEN_CALL_STATE);
}
}
так же перед тем как перейти на другое активити, вы можете добавить проверку полученного номера на валидность, пустоту строки и тд. Вот первоисточник. Удачи :)
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
У меня есть HashMap конвертированный в ByteArray на JavaКак мне ByteArray на питоне конвертировать в map на python и обратно?
После сборки проекта mvn запускаДеплой на Jboss
Всем приветЕсть стандартный стек Java, SpringBoot-2
Я пишу бота и у меня возник вопрос: нужно ли создавать отдельный поток для чтения/записи данных, чтобы не мешать другим процессам в боте?