It has been
years since I used the tool, but we used to use
Retrolambda (
https://github.com/luontola/retrolambda) to backport Java 8 bytecode back to something we could use on Android. I have absolutely no clue how well it might work in your case, but it might be worth an experiment to see if it can re-write bytecode to run on Java 5. The big problem is that it translates
language features but not the APIs you call, so there might still be a hurdle or two to jump before the finish-line