web-dev-qa-db-fra.com

Faire un appel téléphonique directement Xamarin.Forms

est-il possible de passer un appel directement sans ouvrir le numéroteur dans xamarin.forms?

 if (device.PhoneService != null) {
    Device.OpenUri(new Uri("tel:123123123"));
 }
13
Nima

Lorsque nous codons pour démarrer un appel vocal, nous devons être conscients de DependencyService dans Xamarin.Forms.

DependencyService dans Xamarin.Forms fournit un accès à la fonctionnalité native et à certaines implémentations spécifiques à la plate-forme des kits de développement logiciel iOS, Android et Windows Phone à partir de votre projet PCL ou partagé.

Pour lancer un appel vocal, certaines implémentations et autorisations sont spécifiques à la plate-forme.

  1. Voici la procédure pour implémenter l'appel vocal dans Xamarin.Forms. Créons une ContentPage avec une entrée et un bouton comme HomePage.cs.

http://csharpcorner.mindcrackerinc.netdna-cdn.com/UploadFile/e4bad6/code-to-start-call-in-xamarin-forms/Images/HomePage.jpg

  1. Créez une interface IPhoneCall.cs dans le code partagé indiquant les fonctionnalités que nous avons l'intention d'implémenter.

http://csharpcorner.mindcrackerinc.netdna-cdn.com/UploadFile/e4bad6/code-to-start-call-in-xamarin-forms/Images/IPhoneCall.jpg

  1. L'interface doit être implémentée dans chaque projet d'application spécifique à la plate-forme.

Implémentation d'Android: Avant d'implémenter l'interface dans Android, n'oubliez pas de définir des autorisations dans AndroidManifest.xml. Ces autorisations sont nécessaires pour appeler un appel vocal dans Android.

http://csharpcorner.mindcrackerinc.netdna-cdn.com/UploadFile/e4bad6/code-to-start-call-in-xamarin-forms/Images/Android%20implementation.jpg

Après avoir défini les autorisations, nous devons implémenter l'interface à l'aide d'une petite classe PhoneCall_Droid.cs.

http://csharpcorner.mindcrackerinc.netdna-cdn.com/UploadFile/e4bad6/code-to-start-call-in-xamarin-forms/Images/PhoneCall%20Droid.jpg

Exemple de référence pour l'implémentation iOS et Windows.

  1. Nous avions terminé la mise en place de l'interface et l'enregistrement de chaque plateforme spécifique. Nous pouvons maintenant écrire DependencyService pour obtenir une instance des interfaces.

http://csharpcorner.mindcrackerinc.netdna-cdn.com/UploadFile/e4bad6/code-to-start-call-in-xamarin-forms/Images/DependencyService.jpg


Exemple: http://www.c-sharpcorner.com/UploadFile/e4bad6/code-to-start-call-in-xamarin-forms


6
Vaikesh

Utilisez simplement le plug-in de messagerie pour le faire à partir de code partagé. Fonctionne très bien: https://github.com/cjlotz/Xamarin.Plugins

3
JamesMontemagno

Les appareils affichent toujours le numéroteur lorsque vous effectuez un appel téléphonique, de sorte que l'utilisateur puisse raccrocher, basculer sur un périphérique Bluetooth, mettre en sourdine, etc. - voilà comment lancer un numéroteur fonctionne sur un téléphone mobile. Sur iOS après la fin de l'appel, l'utilisateur sera toujours dans votre application, et la question ci-dessous explique comment ramener l'utilisateur sur votre application sur Android après la fin de l'appel:

Comment faire un appel téléphonique dans Android et revenir à mon activité lorsque l'appel est terminé?

0
SmartyP