Our applications need double buffering semantics e.g. when drawing a line in one paint operation the line should still be there the next time around (no wipe, use same buffer). This works very well for us with SurfaceView, lock etc.
However those cannot be hardware accelerated and we feel we might be missing out on some performance on some Android devices.
When running on iOS we use OpenGL and retained backing mode which prevents the OS from wiping the display on every redraw. I was hoping Android has something similar that will prevent an invalidate call from wiping the elements previously drawn on the screen but I could find no such option other than creating a Bitmap.
Drawing to a Bitmap would also be an option (that's what we do today), but then how do we leverage the hardware acceleration here?