The Horror: User Lost All Songs

A day earlier this summer I woke up to a message containing these emojies:

Angry emojies

It turned out that a user had lost all Sputter song files. After discovering a bug the user had attempted to fix that bug by uninstalling and reinstalling the app.

Sputter was originally designed to save song files to the phones “external” storage, i.e SD-card or local file storage available to all apps. These files are persistent and will remain after the app is removed.

Then, about 3-4 months before Sputter was supposed to be released for the first time Google announced that apps would no longer have access to that storage area and instead would have to save files only to the app’s internal storage area. This means that when the app gets uninstalled all saved data vanishes with it. Several other apps, among them Minecraft, also has this problem.

The purpose of this change is to hinder apps from leaving a lot of mess behind on users’ phones. It is also a security measure, since access to files made with other apps will now be more restricted and formalized. For example, it prevents some random app you downloaded from accessing your pictures and EXIF data to find out where you went on vacation.

After each save in Sputter a Snackbar pops up at the bottom of the screen:

Save snackbar

If you press the “Warning” button a dialog with a further explanation appears:

Save warning dialog

“Export” opens a file selector window provided by the operating system. Exporting saves the song to a location outside the app’s private storage and will persist app uninstalls. However, it is quite clunky and users would probably have trouble relocating their songs if this method for saving and opening was used exclusively.

Android file selector

The “Export” option is hidden under “Save as…” in the file menu and is not something users necessarily are aware of. Also, it is far from certain anyone ever presses the “Warning” button after saving and reads the explanation.

After giving the issue a bit more thought and studying how other apps tackle this I have arrived at a couple of points which should be adressed:

I have begun sketching out some ideas, and have come up with this as a reworked file menu:

Reworked file menu

This way “Export song…” and “Backup” are way more visible and prominent options. It will also provide a better home for save, export and import of instrument files, which are kind of crammed in here and there at the moment.

For the backup export I am envisioning something like this, where one can select which files goes to the backup:

Backup file selector

I absolutely agree with the user who sent me the angry emojies, and I wish Google had come up with a better solution to the problem of file storage and security. Hopefully this revising of saving and backup functionality will prevent similar incidents in the future.

One more thing…

Lately I have been working on sample recording in Sputter. It has always been possible to import wave files, but now it will also be possible to record samples straight from the microphone or audio input.

This is not a highly requested feature, but I got some assistance in implementing it and I thought it would be a fun feature.

Sample recording

In the same go the waveform editor will also get a rework and improved design:

Redesigned wave editor

The new version with sample audio recording will probably be available in a few weeks.