Wow! I haven't logged into these forums in a LONG time. As far as the external SD goes, it's actually an Android thing. The way an app accesses the external SD card in apps is supposed to be consistent across all versions of Android to avoid reprogramming an app for each devices. (The methods are usually getExternalStorageDirectory () and/or getExternalStoragePublicDirectory() in the base os.Environment class, if you're a developer). Unfortunately, various manufactures have been implementing this function incorrectly (or at least misleading to developers) so that all apps that use these functions will store the files on the internal storage instead of your SD cards as expected. Really, the only way to go around this is to have reports come in, exactly like you guys are doing, for each device that behaves inappropriately, and place exceptions in the program's design for each device.
Unfortunately, these exceptions add complications to the program and introduces more bugs if your system is detected incorrectly (custom ROM users for example). For instance, in the Galaxy S line of phones, the location of the SD card on the file system is different based on the version of Android you have. For those using Android 2.1 on a Galaxy, for whatever reason, your location is /sdcard/sd while those on 2.2 the location is /sdcard/external_sd. By default, Android expects the functions mentioned above to point to /sdcard which is the internal storage for these phones.
So in short, it's not really Winamp's fault, it's the device manufacturer for changing Android's behavior for whatever reason. The only way around this is to continue telling the devs that the location of the external SD is different for your device. Dev's an easy solution for you is to just give people the option to specify where to sync the data. In terms of programming, this is trivial.
Unfortunately, these exceptions add complications to the program and introduces more bugs if your system is detected incorrectly (custom ROM users for example). For instance, in the Galaxy S line of phones, the location of the SD card on the file system is different based on the version of Android you have. For those using Android 2.1 on a Galaxy, for whatever reason, your location is /sdcard/sd while those on 2.2 the location is /sdcard/external_sd. By default, Android expects the functions mentioned above to point to /sdcard which is the internal storage for these phones.
So in short, it's not really Winamp's fault, it's the device manufacturer for changing Android's behavior for whatever reason. The only way around this is to continue telling the devs that the location of the external SD is different for your device. Dev's an easy solution for you is to just give people the option to specify where to sync the data. In terms of programming, this is trivial.
Comment