Adding to what @[deleted] said, there is Extirpater app (FLOSS), maintained by the DivestOS dev. It's available from their F-Droid repo, Github, etc - the usual - and while it doesn't wipe single files, it does do exactly what passer mentioned. It fills** up the free space and wipes over it with zeros or randoms. IIRC, the standard assortment of pseudo-random wipes are available: 2-pass with random, with zeros (this is the way, IMO), with XORshiftRNG, etc.
**BUT BEWARE: the nature of solid state media is as such that one can never truly fill the drive nor confidently "wipe" a single file. Your file may be indexed in an unreachable database and still be recoverable after free-space wipe. In the case of per-file wipes, SSD/SD media are difficult to trust there as the true "location" of said file(s) cannot be guaranteed.
tldr - While apps such as this might help wipe files (and wear down drives, in the process), you should factory reset if it's that important to you.