Bien le bonjour !
Petit résumé de la situation :
J'ai développé une application WPF qui gère une base de données MySQL, ainsi que d'une application C# Android dans laquelle j'affiche les informations contenue dans cette dernière.
Actuellement j'effectue un export depuis la bdd de l'ordinateur vers des fichiers CSV, je les copies sur le smartphone, puis j'effectue un import dans la bdd SQLite.
Cette opération de copie de fichiers n'est pas évident pour tous les utilisateurs et je souhaiterai supprimer cette étape.
Cependant, les smartphones sont reconnu comme "Périphérique multimédia" utilisant le transfère MTP, et n'ont donc pas de lettre de lecteur (tel une clé USB).
N'étant absolument pas familiarisé avec le MTP, j'ai tout de même réussi, au bout de nombreuses heures de recherches, à récupérer l'ID du PDA ainsi que quelques autres infos. Mais impossible d’effectuer la copie !
Au cours de mes recherches je suis donc tombé sur cette appli : https://github.com/geersch/WPD (Part_5)
résultant du tutoriel : How to use the Windows Portable Devices (WDP) API in C# - http://www.cgeers.com
que j'ai suivi et qui permet de transférer vers un Kindle, mais pas vers Android qui n'a pas de lettre de lecteur.
La fonction utilisé dans le main qui permet de copier vers un lecteur avec une lettre :
kindle.TransferContentToDevice(@"d:\temp\Kindle_Users_Guide.azw", @"g:\documents");
Et dont la signature est tel quel :
public void TransferContentToDevice(string fileName, string parentObjectId)
Je crois comprendre qu'il faut lui indiquer un ID de dossier, mais comment connaître l'ID du dossier sur le PDA ?
Peut-être que je fait fausse route et qu'il y a une méthode plus simple pour utiliser le transfère MTP ?
Peut-on transférer directement dans la bdd SQLite d'android, sans passer par un transfère de fichiers ?
J'espère que vous pourrez m'éclairer un peu car je suis perdu !!
Merci d'avance, dans l'attente de votre infinie sagesse !
Partager