2017-03-17 2 views
1

J'essaie de définir l'option de renvoi d'appel dans mon application avec un délai. Comme je reçois l'appel, il affiche pendant 5 ou 10 secondes, Donc, je vois, si c'est de ma famille ou des amis, je peux prendre l'appel, ou sinon après le délai, Il devrait être automatiquement transmis au numéro de téléphone mobile .Android: Définir le renvoi d'appel après un délai

J'ai écrit la fonction ci-dessous pour avancer.

Aidez-moi à ajouter un délai de 5 sec ou 10 sec.

void fwdCalSetSecBtnFnc() 
{ 
    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.CALL_PHONE) == PackageManager.PERMISSION_GRANTED) 
    { 
     Intent calFwdIntentVar = new Intent(Intent.ACTION_CALL); 
     String mobNumVar = FwdMobNumTxt.getText().toString(); 
     String fwdMobNumVar = ("**21*" + mobNumVar + "#"); 
     calFwdIntentVar.setData(Uri.fromParts("tel", fwdMobNumVar, "#")); 
     calFwdIntentVar.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     startActivity(calFwdIntentVar); 
    } 
} 
+0

Pour le système d'utilisation de la temporisation ... Il fonctionnera .. –

+0

Aussi, vous pouvez utiliser un 'Handler' –

Répondre

0

Liens Code UUID:
http://www.theunwired.net/?item=how-to-diverting-voice-calls-by-using-ussd-codes>

Code UUID 21 renvoie tous les appels

Donc Détourner si aucune réponse, nous devons utiliser code UUID 61

Donc Remplacer:

String fwdMobNumVar = ("**21*" + mobNumVar + "#"); 

avec

=> Pour 5 Sec Délai:

String fwdMobNumVar = ("**61*" + mobNumVar + "*" + 5 + "#"); 

=> Pour 10 Sec Délai:

String fwdMobNumVar = ("**61*" + mobNumVar + "*" + 10 + "#");