Post Reply

[Q] Android Developers, why are you treating my SD card like a garbage can?

8th February 2011, 11:57 PM   |  #1  
OP Junior Member
Flag Tampa
Thanks Meter: 3
 
19 posts
Join Date:Joined: Sep 2010
This has been bothering me for quite a while, so I conjured a little story to help sooth my frustration.

Lets say my Android device is the new tenant of a nicely formated loft, this loft being 16gb of square space. To commemorate this new exciting space my device throws a house party. Most of the Apps he invites are pretty well behaved, but some start spilling drinks, then puking on the carpet, then having an orgy, then bukkake-ing the root directory. After discovering such acts, the device politely requests the disruptive guests force quit and leave. "I need more space on my phone." the device replied as each questioned on their way out. To his disbelief, NONE of the Apps cleaned up their mess! Even worse it seems some of the classier Apps, though more organized seem to have been influenced too. Unfortunately the device is forced to live with it, as the police force stopped responding to calls in his neighborhood. One man tries, but it always returns to a mess.

I hope that entertained someone.
Last edited by OMGrant; 9th February 2011 at 12:08 AM.
9th February 2011, 01:57 AM   |  #2  
PhxkinMassacre's Avatar
Senior Member
Flag Lemont
Thanks Meter: 471
 
1,420 posts
Join Date:Joined: Dec 2010
More
i know exactly how you feel... there is at least 7 unused folders just wasting space on my phone. not to mention random mp3's hidden deep within my phone...
The Following User Says Thank You to PhxkinMassacre For This Useful Post: [ View ]
8th April 2011, 03:51 PM   |  #3  
Senior Member
Flag FL
Thanks Meter: 38
 
125 posts
Join Date:Joined: Aug 2010
More
Quote:
Originally Posted by PhxkinMassacre

i know exactly how you feel... there is at least 7 unused folders just wasting space on my phone. not to mention random mp3's hidden deep within my phone...

I hope you understand about the unused folders and NOT the bukkake-ing!!
9th April 2011, 10:15 AM   |  #4  
Junior Member
Thanks Meter: 0
 
3 posts
Join Date:Joined: Nov 2010
hello, nice story!

I won't say that I am even close to being a developer but I do develop some apps and the thing that I wan't to point out is that apps do not run when they are installed or uninstalled. It's not each application job to clear up the mess it may have created but package manager's which apparently leaves some files be just in case you would like to reinstall the app later(?)...

I would propose to look for a more efficient package manager or doorman/janitor for your loft
9th April 2011, 05:40 PM   |  #5  
Junior Member
Flag London
Thanks Meter: 3
 
16 posts
Join Date:Joined: Feb 2011
More
That's why I don't invite the guy whos only existence is to make farting noises!
11th April 2011, 12:03 AM   |  #6  
cordoni's Avatar
Member
Thanks Meter: 4
 
68 posts
Join Date:Joined: Mar 2011
More
Very good point. However, one thing I don't know is if uninstalling through the market cleans up the SD card better than using a third party mass uninstall app. Something you may want to experiment with.
23rd June 2011, 11:01 PM   |  #7  
OP Junior Member
Flag Tampa
Thanks Meter: 3
 
19 posts
Join Date:Joined: Sep 2010
Thumbs down Back at it again...
Here I am again, and I still don't flippin get it!

After reading some of your comments I realized my main point kind of got glazed over(no pun intended @Scudderb)

My big issue is that there's no hierarchy in place for this crap. In windows, program files are stored in the 'Program Files' directory. In Android (and I credit google and the developers for this sloppy BS) Apps are just throwing all their **** in with my stuff on the ROOT.

How is this acceptable. Seriously, HOW? And if its all cache files and/or temporary documents than WHY THE **** ISN'T ALL THIS CRAP BEING PUT INTO A TEMP/CACHE FOLDER.

I'm PISSED! Why does every app I install get to put their own folder on the ROOT WITH the FOLDERS and FILES that actually matter to me ex: like my music, pictures, movies, documents (OH and by the way, a lot of apps developers do a REALLY ****ty job with their NAMING CONVENTIONS so the folders being created may or may not even look related to the app that put it there!)

::end rant::

My apologies for the colorful language, folder structure and hierarchy are something I design as a web designer so when I see this crap going on in my phone like the inmates are running the asylum... I get angry.

Today I was cleaning up my SD card for the umteen'th time, and found that Foursquare was dumping its temp files directly onto the root of my directory. I blew my top and had to get it out of my system... so..

A MESSAGE TO ALL THE APPS PULLING THESE SHENANIGANS: GROW UP!
Last edited by OMGrant; 24th June 2011 at 08:18 PM.
24th June 2011, 01:46 AM   |  #8  
Junior Member
Thanks Meter: 2
 
7 posts
Join Date:Joined: Jun 2011
The problem here is that it's hard to do it right

For custom data, files are supposed to be saved into "/data/data/com.appname/blah" (that's from the top of my head, could differ slightly). That's the directory to use for data files, but there's one big issue with it: it's on the internal memory storage. We all know that internal memory on Android (without custom ROMs) is.. limited. That's probably why most devs are using SD for larger files.

There's also the "Android/data/com.package_name.blah/blah" directory on the SD card. This directory should be used by apps to store files into and is automatically deleted when the user removes the associated app (but only when you're running Froyo or greater).

The issue with this approach is that users (and developers too, when testing the app) will lose all their data when removing an old version of a specific app. Let's say there's a bug with the Market again and the app suddenly gets uninstalled. User will have to reinstall, result: data will be all gone. That's only one of the many doom scenarios.

I can't speak for other developers, but that's more or less the reason why I started to use a common directory outside of the preferred ones when I was doing apps. It's not a great situation, I fully agree. But would you rather have your data accidentally deleted?

If anyone knows a good way to get around this issue, I'd love to know more about it...
24th June 2011, 07:21 PM   |  #9  
OP Junior Member
Flag Tampa
Thanks Meter: 3
 
19 posts
Join Date:Joined: Sep 2010
Cool orly
Thanks for the reply @Stripeymilk

I can think of multiple solutions:

#1 Development community adopts a universal directory for files deemed 'User' or 'Save' data that should be stored for future use. (or Google creates this for developers)

#2 Development community adopts the practice of allowing users to pick the directory users want to store an apps data in. (prompt at app's first start)

#3 Store files/data in the cloud.

#4 Users dump trash in the lobbys/living-rooms of developer's and see how quickly they find a solution.

#5 USE THE "Android/data/com.package_name.blah/" FOLDER WHEN ALL YOU'RE REALLY DOING IS STORING CACHE/TEMP FILES!!!

BOTTOM LINE: Its not hard to do it right, Its just hard to get people to do it.
Last edited by OMGrant; 24th June 2011 at 10:38 PM.
The Following User Says Thank You to OMGrant For This Useful Post: [ View ]
24th June 2011, 10:24 PM   |  #10  
Junior Member
Thanks Meter: 2
 
7 posts
Join Date:Joined: Jun 2011
You make it sound so easy

1) I'm all for it, but Google needs to put its weight behind an approach like that because otherwise people will say "I like /Data better than /data or /Mydata or /MyData". It's a bit like coding conventions: everyone wants to be different.

2) Good for techy people, not so good for "normal" users. Could make it easier with a small "file manager", but that's too much work for indie devs. Could be a nice idea for a new open source project though.

3) Great idea, could actually work if the associated account would be created automatically (like in Cut the Rope for Android with Scoreloop), but:

- The backup functionality in Android for storing data in the cloud is available for API level 8 and greater, making it of not so much use when you're targeting API level 5 or 6 and greater. Could be fixed by using something like Google Storage combined with Jets3t instead, but that would be useless for apps written in C++, like many games are.

- Cloud storage isn't free. Developers can't pay for that as it would be too expensive. If every Android user would've gotten free cloud storage from Google it could be a nice alternative, but (yeah, there's always a but) most current users don't have that.

4) If you're prepared to send your trash by plane to another country, go for it!

5) Agreed. Useful for temp data.

The Following User Says Thank You to Stripeymilk For This Useful Post: [ View ]
Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes


Top Threads in Questions and Answers by ThreadRank