I have successfully downgraded an app just now. I have the old apk file, but when I try to install the apk, it won't install, because it's an older version (
logcat tells me this).
I have to uninstall the app and then install the old version. This will lose all the app data, but fortunately I have that backed up too. I ssh into my phone and manually replace the configuration file because the app doesn't provide a way to export / import configurations. This step requires root access. I have the backups because I have root access, too.
I followed Firelord's suggestions, but it succeeded a little different:
adb install -d -r xxx.apk
The two switches should be used together (
-d for downgrading, and
-r for replacing the existing one; so
-d would mean to downgrade a non-existent app...). They can't be subtracted to
-dr like GNU tools.
I'm using Android 6.0.1.