These apps have support for huge amount of printers and allow printing over Wi-Fi, Bluetooth, and most importantly, USB.
It seems they might be based on some existing project, though. They all have very similar UI, and function the same.
Printer2Go and PrintHand don’t just have similar UI, but exactly the same UI.
I tried it. This too only works over network.