As was mentioned in the comments, Flash memory in mobile phones acts very similarly to SSDs, and therefore securely deleting a file is mostly impossible.
Quick summary: Flash memory can only be overwritten finite amount of times before it dies. To prevent parts of memory that are used often from dying, flash memory uses wear leveling.
That means when you delete a file, it only marks the space as free to be used for writing later, but it does not overwrite the file, as that would increase the wear unnecessarily. When you want to write data, it chooses a sector marked free that had the least amount of writes. It spreads the writes out in this way. This however means, that if you try to securely delete a file by let's say writing zeroes to it, the zeroes may be written to entirely different part of the memory (with less writes) and the file may remain.
Overwriting the whole flash memory also is not an option, as these memories have additional space reserved for leveling. So if you have 16GB memory, it may in reality be something like 20GB, the 4GB being in reserve to use for leveling when the memory is nearly full. More details here.