Hello bazzaro,
one way I think you could do this is by thinkering with u-boot. I do not know anything about android boot flow, but I currently have a dual boot setup with ubuntu 20.04 and arch on my device, if it is similar then maybe this can help you.
What you have to do is similar to what you’d do on a PC: you setup 3 partitions in your sd card, one for /boot, one for debian and another for android. The tricky part is separating what is needed to boot debian and android in 2 different folders under /boot, then telling u-boot where to look for what you want to boot. U-boot (the bootloader) reads the files boot.scr and uEnv.txt file in /boot. If you try to read them, you can somewhat see that boot.scr is executed and uEnv instead contains the variables that set what is booted after u-boot.
You will need a Linux VM or maybe you can use WSL2 but you will have to figure out how to pass-through the sd card to WSL.
If you check what is currently in your /boot partition, you will see quite a few files: boot.cmd, boot.scr, uEnv.txt are used by u-boot, extlinux can be used by u-boot (but it currently is not with radxa’s u-boot fork) the dtbs folder is somewhat “related” to Debian. Everything else should be related to debian. With some care, you can move everything debian related to a sub-folder, then you will have to do something similar for android, and then you’ll and up with a /boot partitiotion with u-boot files and /boot/debian and /boot/android directories.
By changing the uEnv.txt file then you are able to select what will be booted on the next reboot, the variables that you will change at least are rootuuid, initrdsize, kernelversion, initrdimg, kernelimg.
Maybe also fdtfile, overlays, depending on what you do with the dtbs directory.
It is quite a manual setup.
If you hook a serial adapter to the correct pins on the board you will get a console and it will help you a lot troubleshooting.
If you want to better understand what is u-boot doing at startup, read the sources: meson64.h and follow the header config_distro_bootcmd.h. It took me quite some time to figure it out because of all the #defines there. Official docs are here: https://u-boot.readthedocs.io/en/latest/develop/bootstd.html and https://u-boot.readthedocs.io/en/latest/develop/distro.html