When starting the client you get a screen like here below:
On the title bar, you have the connection type (Wifi or Mobile) and the local IP address of this network interface. In the middle of the screen you have a toggle button and just below the list of the media servers. A click on the toggle button gives the list of all UPnP devices found on this network. If you select an other device than a media server, you can read its XML presentation text.
Selecting a server in the list, must give a second panel (if the server is distributing data) like in the image.
On this screen you can go back to the initial server list clicking on the small “house” on the right top corner.
In the middle of the screen are the lists of files exported by the server. You can select all files in a list selecting the checkbox near the list name, then
clicking on the list (same method to deselect all).
You can select and unselect files with the associated checkbox. To click on the filename gives the same result because on smartphones the checkbox is small.
When files are selected in a list, you can play these files pushing on the button, or you can get a local copy with another button.
You can also "clean" the screen of all the names, before going to another list or not.
The video and audio files are played with android media player. It supports only 3gpp, webm and mp4 videos, and m4a, ogg and mp3 audio files. The images are shown through a webview.
Videos are shown on full screen landscape mode only, without button. You have to click on the screen to get the control buttons (pause, stop, ..),
and again to remove the buttons. Images are also displayed full screen mode without button, with a delay of 3 seconds. You can pause the show just clicking
in the middle of the image, then going backward clicking on the left and to the next image on the right. A long click of more than a second stops the show.
About the eBooks, I didn’t write an application, but the qPDFViewer support suggested to use
their product for reading PDF files starting it as a View intent. This action requires to start it as a “new” task, thus after viewing the document,
the eXport-it client is automatically re-initialized by android.
I tested this method with other products, and currently, the eXport-it client has the support for
qPDFViewer, Acrobat Reader and
FBReader with its PDF plugin for reading .pdf. For reading other eBook types, only FBReader
, CoolReader, and ZoReader,
are supported.
I plan to continue testing with other eBook readers able to read “on-line” from an URL. The eXport-it client can support maximum 4 PDF readers and 4 eBook readers installed concurrently (if more only the 4 first are displayed), a dialog window is shown before starting a sequence of eBooks reading, for selecting the viewers if more than one is installed.
Reading eBooks over Wifi or Internet
Another method for reading eBooks consists in using a reader supporting OPDS catalogs (like Moon Reader,
FBReader, etc…) and to point to the URL of the eXport-it server adding “/opds” after the port number, something like //192.168.1.47:8192/opds.
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.