The fabled "yellow flash" doesn't really show on my phone that well, I also keep the brightness down for battery reasons.
I dodge charge attacks by watching the defender and waiting for it's telltale pause and different animation that signals the charge move. If the text appears on time you can use that too. After you know it's coming watching the animation will tell you when to dodge, I've learned the common defender charge moves and can dodge at the right time. If it's new I spam dodge to see when it should have hit so I can dodge it the next time properly. I focus more on attacker health than killing the defender on time. Only Pokemon that would change this strategy for me are Blissey and possibly a high Snorlax.
Just focus on defender attacks instead of maxing DPS, time shouldn't be an issue in most every case if you counter pick correctly. Dodging properly is key to this game, whether you dodge every attack or just charge attacks.