Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants FMX Delphi Discussion :

Déplacer un fichier de mon application dans un autre répertoire


Sujet :

Composants FMX Delphi

  1. #1
    Membre régulier
    Déplacer un fichier de mon application dans un autre répertoire
    Bonjour,

    Sur un Smartphone Android vous avez un répertoire ou on peut lister les dossiers t-elle que,
    les Documents, Download, Music, Pictures, DCIM, Notifications, etc ...

    Donc j'aimerais bien que mon fichier Mysound.mp3 que se trouve dans le répertoire de mon application,
    le transférer dans le répertoire "Internal storage" \Notifications\Mysound.mp3

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    var
    src,dst : string ;
    begin
     
    src := TPath.Combine(TPath.GetDocumentsPath, Mysound.mp3);
    dst := TPath.Combine(TPath. ???? , 'Notifications') + PathDelim + 'Mysound.mp3' ;
     
    Tfile.Move(src, dst);


    Je ne sais pas quelle path utiliser.

    Je vous remercie pour l'aide.

  2. #2
    Rédacteur/Modérateur

    GetSharedAlarmsPath ? Mais ça les mettra plutôt avec les musiques, je n'ai pas sur mon Androïd de répertoire Notifications donc c'est certainement un répertoire "exotique" dépendant du modèle de téléphone
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  3. #3
    Membre émérite

  4. #4
    Membre émérite
    Peut être
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
     
    TPath.GetDocumentsPath + PathDelim + 'soundsample.mp3';

    ou
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
     
    '/sdcard/'

    mais cela dépend du téléphone

  5. #5
    Rédacteur/Modérateur

    Merci Thierry pour le lien, je cherchais cette feuille "résumé" depuis longtemps
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  6. #6
    Membre émérite
    Citation Envoyé par SergioMaster Voir le message
    Merci Thierry pour le lien, je cherchais cette feuille "résumé" depuis longtemps
    j'ai tellement passé de temps à comprendre quel path prendre selon les plateformes le jour ou j'ai trouvé le lien je l'ai mis en favoris.
    Je pense que ça serait bien de le mettre dans la FAQ DVP, non ?

  7. #7
    Rédacteur/Modérateur

    Citation Envoyé par Thierry Laborde Voir le message

    Je pense que ça serait bien de le mettre dans la FAQ DVP
    Oui, pas bête du tout la suggestion (un bémol, je ne sais pas qui va valider la FAQ maintenant que suite à des problèmes internes il n'y a plus de responsable de forum , non je ne suis pas intéressé par le poste)
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  8. #8
    Membre régulier
    Merci pour les informations.

    Si je mets "TPath.GetSharedAlarmsPath" je reçois une erreur "permission denied".

    J'ai aussi bien coché les permissions "Read/Write external storage" a TRUE
    mais le message d'erreur persiste.

    Maintenant je ne sais pas comment de permettre le déplacement le fichier 'Mysound.mp3' dans ce répertoire.

  9. #9
    Membre émérite
    Attention qu'avec les nouvelles versions d'Android le système des permissions a changé. Ils recommandent maintenant de définir les permissions à l’exécution.
    Un article intéressant là-dessus de Brian Long :

    http://blog.blong.com/2018/11/rad-studio-103-rio-supports-android.html

###raw>template_hook.ano_emploi###