DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions spécifiques Mobile / Fonctions URI
  • Gestion du type MIME
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Charge en arrière-plan le contenu d'une ressource (image, texte, etc.) identifiée par son URI dans une variable de type buffer.
Exemple
AndroidWidget Android
// Ouvre la fenêtre système pour la sélection d'une image
UriRessource est une URI = URISélecteur(uriImage)
SI PAS ErreurDétectée ALORS
// Chargement de la ressource
URIVersBuffer(UriRessource, ProcChargement)
PROCÉDURE INTERNE ProcChargement(bResultat, buffer)
SI bResultat ALORS
// Enregistrement de l'image dans la base de données
HAttacheMémo(Client, Photo, buffer)
HModifie(Client)
FIN
FIN
FIN
AndroidWidget Android
// Chargement d'une ressource avec conversion
 
// Ouvre la fenêtre système pour la sélection d'une ressource
UriRessource est une URI = URISélecteur()
SI PAS ErreurDétectée ALORS
// Affiche le nom de la ressource sélectionnée
Info(URIRécupèreInfo(UriRessource, uriInfoNom))
FIN
 
UriRessource est une URI = URISélecteur()
SI PAS ErreurDétectée ALORS
// Récupère le type MIME dans lequel la ressource peut être convertie
sTypeMIME est une chaîne = URIRécupèreInfo(UriRessource, uriInfoTypeConversion)
SI sTypeMIME <> "" ALORS
// S'il y a plusieurs types MIME possibles
SI ChaîneOccurrence(sTypeMIME, TAB) > 1 ALORS
// Demander à l'utilisateur de choisir le type à utiliser
...
FIN
// Charge la ressource dans un buffer
URIVersBuffer(UriRessource, ProcFinChargementRessources, sTypeMIME)
PROCÉDURE INTERNE ProcFinChargementRessources(bResultat, buffer, sFormat)
SI bResultat ALORS
ToastAffiche("Fin du chargement")
FIN
FIN
FIN
FIN
Syntaxe
URIVersBuffer(<URI> , <Procédure WLangage> [, <Type MIME>])
<URI> : Variable de type URI ou chaîne de caractères
Ressource à charger. Cette ressource peut correspondre :
  • au nom d'une variable de type URI.
    Rappel : la fonction URISélecteur permet de sélectionner une ressource et d'obtenir son URI.
  • à une chaîne de caractères.
<Procédure WLangage> : Nom de procédure
Nom de la procédure WLangage (également nommée "callback") appelée à la fin du chargement du buffer. Cette procédure est de la forme :
PROCEDURE <Nom de la procédure>(<Résultat>, <Buffer>, <Format)
où :
  • <Résultat> est un booléen :
    • Vrai si le chargement du buffer a été effectué,
    • Faux dans le cas contraire. Pour récupérer le détail de l'erreur, utilisez la fonction ErreurInfo avant tout autre appel à une fonction WLangage (ce qui réinitialiserait l'erreur).
  • <Buffer> est une variable de type Buffer initialisée avec le contenu de la ressource.
  • <Format> est une chaîne de caractères représentant le type MIME et l'extension de fichier correspondant au format dans lequel la ressource a été chargée (peut être différent du format d'origine si une conversion a été effectuée). Cette chaîne est de la forme :
    <Type MIME> + TAB + <Extension>
    Exemple : "application/pdf + TAB + .pdf"
<Type MIME> : Chaîne de caractères optionnelle
Type MIME correspondant au format dans lequel la ressource doit être chargée (voir Notes).
Si ce paramètre n'est pas précisé ou vaut chaîne vide (""), la ressource sera chargée dans son format d'origine si possible ou bien elle sera préalablement convertie dans un format par défaut.
Rappel : Le format utilisé pour le chargement de la ressource est passé en paramètre de la procédure appelée en fin de chargement.
Remarques

Gestion du type MIME

Lorsque la ressource à charger ne provient pas du système de fichier de l'appareil, le fournisseur de contenu (Content Provider) qui gère la ressource peut avoir besoin de convertir cette ressource.
C'est en général le cas si aucune application de l'appareil ne sait gérer le format d'origine de la ressource.
Il est possible de préciser le format de conversion de la ressource en renseignant le paramètre <Type MIME>.
Pour connaître le type MIME dans lequel une ressource peut être convertie, utilisez la fonction URIRécupèreInfo avec la constante uriInfoTypeConversion. Si cette fonction renvoie une chaîne vide (""), la ressource ne peut pas être enregistrée. Dans ce cas, il ne faut pas appeler la fonction URIVersBuffer sur cette ressource car elle échouera.
Exemple : un fichier Microsoft Word (.doc ou .docx) est sélectionné avec la fonction URISélecteur. Ce fichier se trouve sur Google Drive et aucune application sur l'appareil ne sait gérer ce type de document. Lors de l'enregistrement de cette ressource le fournisseur de contenu convertira automatiquement cette ressource au format PDF. Dans ce cas, la fonction URIRécupèreInfo utilisée avec la constante uriInfoTypeConversion renverra la chaîne "application/pdf + TAB + .pdf".
Composante : wd290android.aar
Version minimum requise
  • Version 24
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale