That’s almost the approach I use. Except that in step 2 I use TexturePacker.
For example I have a folder “Zombie01” that has all Zombie01 frames: zomb01_move_00.png, zomb01_move_01.png,.. etc
TexturePacker will create a spritesheet and plist using the folder of PNGs.
I then place the Zombie01.png and Zombie01.plist in my resources folder and use the following:
The advantages are that it renders faster than non-batch and its easy to do.