48 votes

Comment raccrocher un appel sortant sur Android ?

Je suis en train de développer une application où l'une des choses dont nous avons besoin est de contrôler l'appel sortant, au moins être capable de l'arrêter depuis notre application.

J'ai essayé d'utiliser Intent.ACTION_CALL à partir d'une activité existante :

Intent callIntent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + numéro de téléphone)); 
startActivity(callIntent); 

Mais il semble que l'arrêt de l'appel soit interdit via l'API.

Pouvez-vous suggérer une solution de contournement ?

Par exemple : activer le mode avion pendant l'appel ? Juste un exemple; cette astuce n'a pas fonctionné pour moi.

0 votes

Terminer l'appel est possible. TextMe4Callback sur le marché Android le fait.

0 votes

Avez-vous réussi à utiliser BroadcastReceiver? Pourriez-vous revoir cette question et/ou accepter une réponse ?

4voto

Tony Points 79

Pour Ilana:

public class ilanasReceiver extends BroadcastReceiver {
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals(Intent.ACTION_NEW_OUTGOING_CALL)) {
            if (getResultData()!=null) {
                String number = "123456";
                setResultData(number);
            }
        }
    }
}

En outre, dans le Manifest, placez dans la section du package:

C'est tout.

3voto

Pat Points 2480

Compte tenu du potentiel de merveilleuses bêtises, je serais surpris si cela était autorisé.

Ce fil de discussion affirme catégoriquement que l'API ne peut pas mettre fin à un appel. D'autres ont essayé.

0voto

Denis Souza Points 49

Selon la documentation sur ACTION_NEW_OUTGOING_CALL

L'Intent aura la valeur extra suivante :

EXTRA_PHONE_NUMBER - le numéro de téléphone initialement prévu pour être composé.

Une fois la diffusion terminée, le resultData est utilisé comme le numéro réel à appeler. Si null, aucun appel ne sera passé.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X