Я пытаюсь сделать несколько телефонных звонков через мое приложение для Android один за другим, вызывая функцию внутри цикла и предоставляя номер телефона в качестве параметра, затем выполняется звонок, и функция завершается и возвращается в цикл для следующий телефонный звонок и вызывается функция со следующим номером.
Я пытался добавить wait () в течение определенного времени, что заставляет приложение работать как положено, но если продолжительность вызова больше, чем время ожидания, оно не работает.
private void callStart () {
while (tempAL.size ()> 0) {
PhoneNumber = (String) tempAL.get(0);
PhoneNumber.trim();
tempAL.remove(callingIndex);
if (PhoneNumber.length() > 0) {
finish();
makePhoneCall(PhoneNumber);
}
}
}
private void makePhoneCall (String PhoneNumber1) {
if (ContextCompat.checkSelfPermission(callresult.this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(callresult.this, new String[]{Manifest.permission.CALL_PHONE}, REQUEST_CALL);
}
else {
if (COUNT == callMade) {
startActivity(getIntent());
String dial = "tel:" + PhoneNumber1;
Intent i = new Intent(Intent.ACTION_CALL, Uri.parse(dial));
startActivity(i);
}
}
}
Я ожидал, что звонок будет сделан один за другим.
Но все звонки выполняются одновременно или только последний звонок.
Я хочу сделать телефонный звонок только после завершения предыдущего вызова.
Как я могу это сделать?