One of the original goals of our app was to allow for the import and export of data. The user would be able to export their workout history, equipment inventory, goal progress, etcetera. This functionality was originally assigned to another team member, but after several weeks, I decided to pitch in.
With the amount of time we had left for development, I decided to scrap the original plan for our export feature, which was to generate a csv file, and instead moved to use a binary file to save all of the app's data. I had already written a method to save all of the user's data to the application's shared preferences, so I simply repurposed the already existing code to instead save the data to an external file.
Once the data is exported, the user is free to migrate their data over to a new device or do whatever they want to do with it. In order to inport the data back into the app, I designed another function to parse through the binary file and convert it back into a usable object that is then saved to memory and used throughout the app like normal.