1

We develop a web application where the user can enter data and based on that data he can generate a PDF file.

For convenience we wanted to build a save and load function so that the user can download a XML or JSON file with all the data, so the user can re-load the data to edit.

But very soon we realized that in IOS there is no way for the user to download files. Except the File is an image. To walk around this we had the idea to store our JSON information in the meta information of an image and let the user download the image. We have done some tests and as it seems it works quite well.

But my concern to this is the user experience. I think it is not very intuitive. If I see it from a users perspective, I would never guess that I had to load an image file, since the users don't see the information behind that image.

My questions are:

  • How should I handle files downloads in IOS?
  • Do you have suggestions to make the current approach more user-friendly?
  • A completely different approach is welcome as well. But please note that storing the information server side is not an option for this project and building a native app as well. So I want only a webpage.
4
  • 1
    I am wondering why you want to store it in an image, and not in a pdf file for example. The user can save the file in their ibooks, for example. I am also wondering why the user needs to see an xml or json file. Why can't they download another format? Commented Jun 21, 2017 at 10:09
  • I am not an IOS expert. But I didn't see a way to download general files from the web browser. I can only store them in my gallery.
    – Lars
    Commented Jun 21, 2017 at 10:11
  • Yes a PDF would work as well. But has the same issues with ux
    – Lars
    Commented Jun 21, 2017 at 10:12
  • I would not say that it creates the same issues with UX. Since it is an XML/JSON file, it is better saved as a document in iBooks. iPhone users expect that their data that are not images are saved in this application. iBooks is the native application provided by Apple Commented Jun 21, 2017 at 10:41

2 Answers 2

2

From a UX perspective, storing it as an image or in iBooks would be confusing. And users can delete iBooks, so it can't be guaranteed that they'll have it.

Here's a number of alternative solutions:

  • Cloud storage for apps such as Amazon S3
    • Stores data in the cloud.
    • Would allow users to save and load with a single button press.
    • Not free, but inexpensive.
    • No account required for users.
    • Cross-platform.
  • Browser Storage (more info)
    • Stores data on device.
    • No account required for users.
    • Limited to 5Mb.
    • Not cross-compatible, but could use in combination with the suggestions below.
  • Dropbox (more info)
    • Their API provides UX-friendly Saver and Chooser buttons.
    • Cross-compatible.
    • But user must have a Dropbox account.
  • CloudKit JS API (more info)
    • Will be supported on all iOS devices.
    • More UX friendly that the OPs method.
    • Requires a native app, though this is not required by the user.
15
  • it is a good solution, but please consider the fact that a user might not have Dropbox or might not have Dropbox installed in their iPhone Commented Jun 21, 2017 at 10:41
  • 1
    The user does not need Dropbox installed to use the functionality, though they will need an account. But this is why I mentioned CloudKit. The OP mentioned that they'll be making a native app anyway, and it'll work for all iOS users.
    – user101673
    Commented Jun 21, 2017 at 10:58
  • 1
    +1 nice idea for the cloudkit :) I understood from the question that they won't make a native app. @Lars could you clarify? Commented Jun 21, 2017 at 11:03
  • 1
    Ah my apologies, I believe I misread what he said regarding the app. He indeed is not making a native app.
    – user101673
    Commented Jun 21, 2017 at 11:06
  • 1
    I know i just wanted to confirm we are not building a native app as it was requested
    – Lars
    Commented Jun 21, 2017 at 11:52
0

My suggestion would be to keep it as simple as possible.

  • Save the file XML/JSON file as PDF. Users are more used to seeing this kind of data in PDF format
  • Give your user options: iBooks, Dropbox, Google Drive, File Manager, iFile. They can decide to open their file in any application that they have already on their phones.
  • I would include a native application - which all the iPhones have, except if the user has erased it - iBooks (https://support.apple.com/en-us/HT202075)
  • Be aware that not all iPhone users are actually familiar iBooks. Sometimes it depends on the way that the users use their phone. In this case, you might need to suggest them to save it in the iBooks and let them know how they can find it again.

iBooks

3
  • 1
    One issue with this is that users can delete iBooks, so it's not guaranteed to be installed on their device.
    – user101673
    Commented Jun 21, 2017 at 11:29
  • 1
    @JoelTebbett that is also true. Maybe the solution is somewhere between my answer and your answer. So, give your user options! Commented Jun 21, 2017 at 11:41
  • Save the file XML/JSON file as PDF. Do you mean as Meta-Data? How else can one store JSON/XML-Data-Structure in a PDF-File, so that it's still readable by a JSON/XML-Parser?
    – Ben
    Commented Jun 21, 2017 at 11:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.