web-dev-qa-db-fra.com

React native - appeler le numéro de téléphone avec l'extension

J'essaie d'ouvrir le numéro de téléphone avec l'extension. La liaison fonctionne avec un seul numéro de téléphone

Essayé avec peu d'options

Linking.openURL('tel:XXXXXXXXX,XXX');

Linking.openURL('tel:'+ encodeURIComponent('XXXXXXXXX,XXX'));

Le numéroteur compose uniquement le numéro principal et n'inclut pas de poste

Je pourrais écrire un code natif et exposer la méthode, mais ce serait ma dernière option

16
Sudhu

Je sais qu'il est tard, mais vous pouvez essayer ce composant: react-native-communications .

Cela fonctionne bien à la fois sur iOS et Android.

Vous devez l'importer dans le fichier dont vous avez besoin:

import Communications from 'react-native-communications';

puis utilisez-le selon vos besoins:

<TouchableOpacity onPress={() => Communications.phonecall(phoneNumbers[0].number, true)}>
25
Mark

C'est ce que j'ai essayé,

callNumber = (url) =>{
   Linking.canOpenURL(url).then(supported => {
   if (!supported) {
    console.log('Can\'t handle url: ' + url);
   } else {
    return Linking.openURL(url);
   }
 }).catch(err => console.error('An error occurred', err));
}

Et le JSX,

<Text onPress={()=> this.callNumber(`tel:+91${user.number}`)}
       style = {[styles.value,{marginLeft : 5,textDecorationLine :'underline'}]}>{`+91 ${user.number}`}</Text>
</View>

Fonctionne bien pour moi. Vous pouvez trouver plus d'informations sur les liens ici, https://facebook.github.io/react-native/docs/linking.html

18
Code_Is_Law