Another update: Android SDK say: Every Android-compatible device supports a shared "external storage" that you can use to save files. This can be a removable storage media (such as an SD card) or an internal (non-removable) storage.
So basically calling *Environment.ExternalStorageDirectory* should return a valid path for either for *removable* or *internal* storage right? I'am quite sure about this because my Samsung G2 doesn't have a SD card and I'm getting reasonable values. :( So my first question: "Is StatFS working on JellyBean?" remains valid! On Sun, Sep 16, 2012 at 9:16 PM, Francesco Colombo < [email protected]> wrote: > Ok, I think I've discovered what's the problem is. My bad knowledge of > android :( > > Tests have been done on a device which has not a real SD card. I'm a bit > confused on how android defines spaces where apps can write into it (local > and external). > > I need to investigate more. Any help is appreciate on explaining which > options are available for an android app on "where I can write files" > > > On Sun, Sep 16, 2012 at 8:54 PM, Francesco Colombo < > [email protected]> wrote: > >> Further investigations denotes that >> using*Enviornment.ExternalStorageDirectory.Path >> *on jellybean return as folder */storage *in place of */mnt/sdcard. *Is >> it right? >> >> >> On Sat, Sep 15, 2012 at 6:23 PM, Francesco Colombo < >> [email protected]> wrote: >> >>> Hi, >>> >>> I'm developing an app which on the first run it will download a big file >>> from FTP. Before the download begin, the user is asked where to save the >>> file. One can use either local or external storage. >>> When the user select "external storage" the app will use as root the * >>> Application.Context.ExternalCacheDir.Path* variable. That is! In this >>> way all content written into this folder *will be deleted* once the app >>> is removed from the device. >>> >>> Here my code to get available storage size: >>> >>> *string *external_path = Path.Combine(* >>> Application.Context.ExternalCacheDir.Path*, "/mypath"); >>> * >>> * >>> *ulong *totalFreeSpace = 0; >>> *StatFs *stats = *new* Stats(external_path); >>> totalFreeSpace = (*ulong*)stats.AvailableBlocks * stats.BlocksSize; >>> >>> All this stuff is good on Android +2.2. I'm facing a >>> strange behavior ONLY on JellyBean. It seems that StatFs will return the >>> same available blocks value for either internal >>> (use*Application.Context.FilesDir.Path >>> *in place of *Application.Context.ExternalCacheDir* )or external path. >>> >>> Anyone can confirm this? Am I missing something? >>> >>> thanks >>> Francesco >>> >> >> >
_______________________________________________ Monodroid mailing list [email protected] UNSUBSCRIBE INFORMATION: http://lists.ximian.com/mailman/listinfo/monodroid
