How to detect Corrupt Flash Memory?
Are you sure the flash does not get corrupted because the number of maximum writes? 

To prevent this, you can keep count of the number of writes; if it reaches a maximum (or better, way before that time), show a warning/notification.

I assume you don't write to the same address(es) every time but using an algorithm to write evenly over the flash memory?