System.IO.IOException: Win32 IO returned 25?anyone

ok, i really have no idea on how to save myself now, plz help!
i got my save/load feature which use filestream to write/read file to/from drive.
everything working as expected both on my PC and device,
then i move onto add in all the ad networks and google play into my game.
and after that, i realize my save feature has broken now on my device, but still ok on my PC
i check in adb, and when the save happen, “System.IO.IOException: Win32 IO returned 25” was printed.

my save was fine before i added in those ads plugs, where there was no android manifest file in my Unity project.
but even when i have the manifest file in my project now, i sure have added in all the read write permission explictly in it

has this got anything to do with my android manifest and/or the jar file that is got imported in/created when adding in the ads plugs?

please help me out on this

just for the sake of record, i will update this post 1 last time, and it will be an answer to my own.

i hav completely over come this issue by simply change
from this:

Directory.CreateDirectory(Application.dataPath + "\\DotData")

to this:

Directory.CreateDirectory(Application.dataPath + "/DotData")

when with Directory.CreateDirectory(Application.dataPath + "\\DotData") , PC and Device can create dir no problem, as long as android.permission.WRITE_EXTERNAL_STORAGE is not asked.

and now with Directory.CreateDirectory(Application.dataPath + "/DotData") , both PC and device will create the same dir like before, but this one works OK, even when android.permission.WRITE_EXTERNAL_STORAGE is asked on device.

another little question comes to mind rightaway, why would anyone wanted to use "\\" rather than "/"? the reason why i used was i saw most of the example code when creating dir and/or file would use "\\". what do you say? when do you use "\\" and when for "/"

anyway, thx Unity, for giving me a place to finally answer to myself, great kudo to you

IO Error 25 probably means that you’re reached the end of the file. So you either try to read more data than there is, or for some reason you can’t write the file (maybe out of space?).

I guess it’s the reading case and it’s either because you didn’t serialize the data in a way it can be resored reliably or the data you want to read is in an outdated format. Since you said you changed / added stuff it’s most likely a version conflict between your save data and your current implementation.