The Fiio X7 is an android based DAP, it's recently received an update to Lollipop 5.1.1. The device can be rooted using Kingoroot / kingroot.
It has a default launcher called 'Launcher3' which I believe is the AOSP launcher and is also able to be set to what they call 'Pure Music Mode' where the launcher can be set to their Music application (apparently closes all background processes). This can be toggled in the quick settings pulled down from the top.
I am able to install a new launcher - Nova for instance, but cannot set it as default, when the option is selected within Nova, the default launcher immediately pops back up and Nova seems to be shut down (not in the recent apps list). This occurs with any other launcher.
Checking any Launcher within Apps the 'Launch by defaults' section states 'No defaults set' and the 'Clear Defaults' button is greyed out. Default launcher applications don't seem to work either.
So the launcher lives in /system/Launcher3/Launcher3.apk and I've managed to replace this with the Nova launcher apk after renaming it to Launcher3.apk via adb push. This causes the Launcher 3 to throw up errors as expected, but after rebooting the Nova launcher works fine as the default launcher. Even persists after shutting the device down / rebooting it etc.. at this point I thought I had solved the problem...
However leaving the device on for some time, something happens and the Nova launcher process seems to be killed. After this occurs, it goes into the 'Pure Music Mode' launcher, pressing the home button does nothing, and as this isn't an actual launcher means that no applications or anything can be launched. The only way to get things working properly again is to re-flash the firmware (it is a update.img) using Fiio's application leaving me stuck with the default horrid launcher....
It seems that somehow and for some reason Fiio have baked the launcher into the firmware making it impossible to change it's behaviour. I'm hoping someone here can shed some light on how to eradicate this.