When using an Apple device and OTG, I almost never experience the Spark's (or my other DJI ACs) 'lost logs' or content corruption. Using an Android platform is much more problematic.
My M2P coupled with DJI's (Android) . SC is a tedious chore doing pre-flight checks, and is odious mid-flight. My M2P, with an SC, does exactly what you describe, until I perform a careful preflight task:
1. I ensure the SC has developer mode enabled.
2. I disable any and all DJI applications (They will reappear, after a reboot on the SC.)
3. I start Litchi, and ensure I am in Waypoint Mode. At the bottom of Litchi's mode menu (FPV, WP, Orbit, etc.)....there is an option to logout, and l do that religiously.
4. I then log right back in to Litchi, and compare my missions, using Goog Chrome, between my mission hub DB, and whatever phone or tablet device I use (connected to AC via OTG,if needed)...I only use Android when flying my M2P.
4. Once I have reviewed, compared, & verified all the AC settings between Litchi and Go4, I manually lift off, via the stick "down and in"....followed by left stick up...I never use auto take-off via Android....and rarely using iOS.
To be fair, now and again, the SC does seem miraculous when any quality footage arrives intact, and machine readable upon landing.
