* `saveFile` used to return always `YES`, now it returns whether or not the save has been saved.
* `generateFilePath` didn’t do any check about the path. Now it creates the in the app directory. If for some reason it fails, it throws an Exception.
* `saveFile` can handle png extension and path issues. A bug on a `nil` fileSize has been fixed.
previously Android implementation worked differently and to the returned
absolute path a 'file:' is prepended.
This different behaviour may causes issues/bugs when handling the response from an
unified code base point of view and also the returned uri on the Android native code
is not generated properly using native functions to do so.
This patch fixes this incoherence, but also extends the returned value to add:
absolute path, file name, file size and the uri.
Refactored Android code to make it easier to read and more robust to
case sensitive file names.