2010-08-12 8 views
11

Je souhaite transférer automatiquement tous les appels vers mon numéro vers le nouveau numéro prédéfini . Est-il possible de transférer l'appel entrant? Probablement, il est possible pour Froyo au moins. J'ai trouvé l'application appelée Easy Call Forwarding. http://www.appstorehq.com/easycallforwarding-android-189596/app Mais beaucoup de gens pensent que cela ne fonctionne pas réellement.Renvoi d'appel

Nous pouvons remarquer l'appel transféré par onCallForwardingIndicatorChanged() de PhoneStateListener mais Je n'ai aucune idée comment définir le mode de transfert.

+0

M. Bogus: avez-vous réussi à transférer un appel? Mr Bill_the_Lizard: J'espère que c'est possible, n'est-ce pas? –

Répondre

3

Ma solution:

Intent intent = new Intent(Intent.ACTION_CALL); 
String prefix = "#31#";   
prefix = Uri.encode(prefix); 
intent.setData(Uri.parse("tel:"+prefix+"123456")); 
startActivity(intent); 
8

j'ai exploré sur le net et a obtenu la réponse à ma question que la façon dont on peut transférer un appel d'un programme. Ajoutez ces lignes de code et on pourra y arriver.

String callForwardString = "**21*1234567890#";  
Intent intentCallForward = new Intent(Intent.ACTION_DIAL); // ACTION_CALL        
Uri uri2 = Uri.fromParts("tel", callForwardString, "#"); 
intentCallForward.setData(uri2);         
startActivity(intentCallForward); 

Ici 1234567890 représente le numéro de téléphone. Ajoutez le numéro de téléphone approprié comme vous le souhaitez ici. On peut appeler ## 21 # pour désactiver le service.

+0

Mais ce code ne fonctionne pas pour moi – Sathish

+0

Quelle erreur obtenez-vous? J'ai testé cela et ça marche pour moi. Aussi, cela fonctionne uniquement pour les nombres gsm. – ASH

+0

Intent.ACTION_DIAL vous amène à l'écran de numérotation et Intent.ACTION_CALL appelle le numéro mis dans setData() et compose donc directement le numéro ** 21 * votre_numéro #. Cela met automatiquement votre téléphone en mode de transfert d'appel à condition que "votre_numéro" soit correct. –