Lorsque l’on démarre le client, on reçoit un écran comme:
Sur la barre de titre, vous avez le type de connexion (Wifi ou Mobile) et l'adresse IP locale de cet interface.
Dans le milieu de l'écran vous avez un bouton à bascule et juste en dessous la liste des serveurs de médias. Un clic sur le bouton à bascule donne la liste de tous les périphériques UPnP trouvés sur ce réseau. Si vous sélectionnez un autre appareil que sur un serveur de médias, vous pouvez lire son texte de présentation XML.
Lorsque des fichiers sont sélectionnés dans une liste, on peut les « jouer » si ils proviennent d’un serveur UPnP (testé avec UShare, Mediatomb, eXport-it, …) ou les prendre pour faire une copie locale si ils viennent d’un serveur eXport-it (protocol HTTP). On peut nettoyer l’écran de la liste des fichiers affichée avant de passer à une autre liste (à l’aide de l’icône « petite brosse »), mais ce n’est pas indispensable.
Les fichiers vidéos et audios, sont joués à l’aide du « media player » natif d’android. Il ne supporte que les formats 3gpp et mp4 pour les videos, et m4a et mp3 pour les fichiers audios. Les images (photos) sont affichées à l’aide d’une simple « webview ». Pour les videos, l’application passe automatiquement en mode « paysage ».
En ce qui concerne les livres, je n’ai jamais envisagé d’écrire une application pour ce faire. J’ai donc posé la question « comment faire » au support d’application spécialisée. Le support de qPDFViewer, m’a suggéré d’utiliser leur produit en l’appelant par une « View intent ». Cette action démarre l’application de lecture comme une tâche nouvelle, ce qui provoque à la fin de la séquence de lecture, une ré-initialisation complète du client eXport-it. L’utilisateur se retrouve donc, après lecture, avec la page affichant la liste des serveurs, et plus celle avec la liste des fichiers du serveur sélectionné.
Cette méthode a été essayée avec d’autres produits de lecture d’eBooks. Pour l’instant le client d’eXport-it, supporte qPDFViewer, Acrobat Reader et FBReader 2 beta avec son plugin PDF, pour a lecture de PDF. Pour la lecture des autres formats de livres, il n’y a pour l’instant que FBReader (2.0 beta), CoolReader, et ZoReader, qui sont supportés.
Pour lire des livres sur Internet
Pour lire les fichiers eBooks à distance, on peut utiliser une autre technique. Si on dispose d’un produit de lecture, supportant les catalogues « OPDS » (il y en a plusieurs), on peut démarrer ce produit puis pointer vers le catalogue de son serveur eXport-it, quelque chose comme //192.168.1.47:8192/opds, en ajoutant « /opds » à l’URL de ce serveur sur le réseau Wifi. Cette technique a été validée pour l’instant, avec Moon Reader, et FBReader. Elle devrait fonctionner avec plusieurs autres lecteurs.
By design, the eXport-it client works with only four categories of files: video, audio, images and eBooks. It is traduced, on UPnP, by only four containers for the items. The “normal” UPnP servers work totally differently, defining a very complex containers structure, based not only on the file type, but on directory names, name of the author or actor, year of publication… The same item appears very often multiple times…
When the eXport-it client accesses such a server, it must perform a complex acion for reading of the global containers structure, deleting all duplicate items, for presenting the simple lists in summary. This process uses heap memory intensively and can require a lot of time, with very poor performances.