Savin Files internal or external Storage - Java for Android App Development

hi
i'm a total beginner in Android developing but i have a few experience with java.
i'm learning android developing at the moment with the Tutorials of developer.android and im writing my new App now.
i got a main activity now with a button "Gallery" and a gallery activity.
Now i want to make a Gallery inside the ativity for the first. Just to understand a little bit how to create gallerys.
at the moment i am at the Saving Files part, and i read that there are two file Storage areas. internal and external Storage
so i dont know whitch one is the better one for my app because i have a Galaxy Nexus and it just got a internal Storage
but i read that.
Internal storage is best when you want to be sure that neither the user nor other apps can access your files.
so i dont know which one to use and the other thing is, that the android.widged.gallery file is outdated so how do i create
gallerys for android 4+
thx
and i'm sorry for my bad english^^

Related

[Q] Internal memory full??

If you know the answer please reply, instead of telling me this was asked before. I've already tried searching.
I use the Latest Darkstone Build(Froyostone sense 3.2) with Energy rom(WM), sometime a week ago I got this anoying message that my memory is full... Since then I can't download/install new apps, and I also can't move to SD Card wich also anoyes me... I already know why I can't move to SD and I know many apps use up a lot of cache and that's not my problem. What I realy can't seem to understand is why Android tells me my memory is full while the truth is... I've got more than 60% unused memory left in WM. Now it can't be possible that I have 2 different internal memories. My guess is that Android doesn't know my real amount of memory, so there must be a way to make my memory space larger...
Is there a way to do this? Or is Android just limited to an random amount of memory for my HD2.
Isn't there anyone who knows something about this?
Your HD2 internal memory (NAND) is where WM resides and has nothing to do with Android (yet). You probably filled your data.img that acts as internal memory on all Android builds. Go and uninstall some program.
Or just resize the data.img. There's a thread in the dev section how to do this.
I had this issue a few weeks ago, I'd been downloading some mp3's through the browser and it had filled my internal memory. Check your downloads (in browser, hit the menu button > more > downloads and if this has lots of things in it, delete them if you don't need them anymore.
JanssoN said:
Or just resize the data.img. There's a thread in the dev section how to do this.
Click to expand...
Click to collapse
Considering what he wrote I thought it would have been easier for him to just uninstall some programs than to mess around with the data.img.

Android Memory Management

Hey guys,
Recent iOS convert and still figuring out a lot about my atrix and android in general.
Would someone be willing to give me a rundown on how media and apps are stored?
Specifically, where are Market and non market apps stored on the atrix? Can I control the download location through settings?
The same for music and video? I've been dragging and dropping media to intetnal storage but it appears on my 8 gig SD?
Same goes for beyondpod. Can't figure out the storage path.
A little confused.
Thanks for the help. This is a heck of a community!
Sent from my MB860 using XDA App
joelszs said:
Hey guys,
Recent iOS convert and still figuring out a lot about my atrix and android in general.
Would someone be willing to give me a rundown on how media and apps are stored?
Specifically, where are Market and non market apps stored on the atrix? Can I control the download location through settings?
The same for music and video? I've been dragging and dropping media to intetnal storage but it appears on my 8 gig SD?
Same goes for beyondpod. Can't figure out the storage path.
A little confused.
Thanks for the help. This is a heck of a community!
Sent from my MB860 using XDA App
Click to expand...
Click to collapse
First, the "sdcard" is your internal storage. An actual sdcard will be referred to as external or sdcardext, or something like that. You can place music and pics pretty much on either one and the music player and gallery will find it. As for apps, you can download them and most will end up in non-accessible internal memory but you can go to Settings>Applications>Manage Applications and select the app and you might or might not have a choice to move to "Phone" or "media Area". The media area will be the external card.
Live is correct, you can put anything on either SD or ExtSD and it will be found. As for the apps they download to /system/apps in the Internal phone storage, unless you do the above and move them to the SD card. To be honest though you've got a ton of storage on the internal phone storage for apps so unless you have like 500+ apps it won't be an issue. As far as how the internal SD is organized basically the Internal phone storage and internal SD are the same thing, the internal phone storage is just partitioned off to be used for the OS and app storage and you see the remainder as usable SD internal storage.
Thanks for the information guys, much appreciated.

Folder structure

I am trying to understand the folder structure on the TF.
I have a 16GB micros SD card and I want all data type files to be saved there e.g. photos, downloads, music etc.
There is a folder at the top level called /SDCARD and I had assumed that this was the MicroSD card and all this sort of data is being stored in sub folder from there.
I have now realised that the MicroSD card is actually accessed from /Removable/MicroSD and that the TF has not stored anything on it. I have just moved my music and video to there.
Can I move all the other SDCARD subfolders to /Removable/MicroSD and then delete the SDCARD folder?
I can't see the point of having a folder called SDCARD it is very misleading.
Thanks for any help.
This is your internal storage. I'm not sure why it is displayed this way, maybe that will become standard in Gingerbread?
You cannot 'delete' the SDCARD folder. It is a mount point for the remainder of your internal storage (16GB or 32GB)
As bizarre as it seems when compared to a phone, this actually makes more sense. My Droid X has 6.5GB of the 8GB internal memory put aside for the /data partition. Despite having the phone for a full year and having a ton of apps installed, /data still has 5GB free. That's 5GB of storage I do not have access to, so it's effectively wasted.
On the ASUS (and others HC tabs?) that space exists as a virtual device /dev/fuse and is mounted as /mnt/sdcard. A symbolic link exists /sdcard which points to the mount point. The net result is, you have the majority of free space on the internal memory available to you. If you didn't, there'd be no incentive to buy the 32GB version over the 16GB version.
It is called /sdcard to maintain the illusion within the OS. This space, like it or not, is your primary storage. It makes your actual sdcard more of a transient storage location, great for just music, movies, etc., that you do not necessarily want to keep on the device long term. This is a great advantage as you can keep multiple sdcards with different content and not worry about messing up the core OS storage needs.
Be aware that the OS and apps expect to find certain data in /sdcard and moving the folders to your 'external' card will only force these apps and processes to recreate the folders in /sdcard. Also some apps will have lost some of their data and may not operate as expected or will act as when they were first installed (games will redownload supporting data, for example)
Sent from my rooted ASUS Transformer running PRIME 1.4
jhanford said:
You cannot 'delete' the SDCARD folder. It is a mount point for the remainder of your internal storage (16GB or 32GB)
As bizarre as it seems when compared to a phone, this actually makes more sense. My Droid X has 6.5GB of the 8GB internal memory put aside for the /data partition. Despite having the phone for a full year and having a ton of apps installed, /data still has 5GB free. That's 5GB of storage I do not have access to, so it's effectively wasted.
On the ASUS (and others HC tabs?) that space exists as a virtual device /dev/fuse and is mounted as /mnt/sdcard. A symbolic link exists /sdcard which points to the mount point. The net result is, you have the majority of free space on the internal memory available to you. If you didn't, there'd be no incentive to buy the 32GB version over the 16GB version.
It is called /sdcard to maintain the illusion within the OS. This space, like it or not, is your primary storage. It makes your actual sdcard more of a transient storage location, great for just music, movies, etc., that you do not necessarily want to keep on the device long term. This is a great advantage as you can keep multiple sdcards with different content and not worry about messing up the core OS storage needs.
Be aware that the OS and apps expect to find certain data in /sdcard and moving the folders to your 'external' card will only force these apps and processes to recreate the folders in /sdcard. Also some apps will have lost some of their data and may not operate as expected or will act as when they were first installed (games will redownload supporting data, for example)
Sent from my rooted ASUS Transformer running PRIME 1.4
Click to expand...
Click to collapse
After reading your explanation, it makes better sense to me. I was a bit annoyed, but I see how this could work to my favor. Using just the actual SD cards for movies, music, ect.
Moving data - Video
Sorry, I find what is said here a little disconcerting.
Why have SD cards and USB devices attached (eg. USB Flash drives, hard drives) when the data flow only goes one way, "in", and not out.
If I want to edit a video, the files are too large to email.
I can't find a way to move the video to an external device.
All one can do, as far as I can tell, is to upload the unedited video to YouTube.
Once there initially one get an error message saying that the file type is not recognized. It is...eventually, but only after it's fully processed. This is really confusing to the user. You'd think Google would give Android users a processing message rather than something that makes you think there is no way to view and share your video other than your tablet.
I couldn't find a way to tag a video either.
The default seemed to be "entertainment."
The options for sharing video are much to limited.
The only site you can upload a video to is YouTube.
I'd love to be able to put it on another site (e.g. a personal/corporate website).
I sure wish there were a way of off-loading and storing a folder generated from the Tablet to an external device, especially one with external ports like the Transformer.
If anyone knows of an app to do two way data flows, I'd sure like to know about it because my SHDC card and USB Flash drives look so lonely with nothing to do.
[email protected] said:
Sorry, I find what is said here a little disconcerting.
Why have SD cards and USB devices attached (eg. USB Flash drives, hard drives) when the data flow only goes one way, "in", and not out.
If I want to edit a video, the files are too large to email.
I can't find a way to move the video to an external device.
All one can do, as far as I can tell, is to upload the unedited video to YouTube.
Once there initially one get an error message saying that the file type is not recognized. It is...eventually, but only after it's fully processed. This is really confusing to the user. You'd think Google would give Android users a processing message rather than something that makes you think there is no way to view and share your video other than your tablet.
I couldn't find a way to tag a video either.
The default seemed to be "entertainment."
The options for sharing video are much to limited.
The only site you can upload a video to is YouTube.
I'd love to be able to put it on another site (e.g. a personal/corporate website).
I sure wish there were a way of off-loading and storing a folder generated from the Tablet to an external device, especially one with external ports like the Transformer.
If anyone knows of an app to do two way data flows, I'd sure like to know about it because my SHDC card and USB Flash drives look so lonely with nothing to do.
Click to expand...
Click to collapse
There is nothing stopping you from copy files from the internal storage to an external sdcard. From the built-in file manager you can select a folder using the check boxes to the left of it, and then click the Copy or Cut button at the top of the screen, then navigate up until you see "Removable". Tap that and then "MicroSD" and then you can tap "Paste" at the top of the screen to copy or move to the new location.
Sent from my Transformer TF101 using XDA Premium App
Drive letters or some kind of unique ID from the root would be favorable. I know it's meant to adapt to Android, but last time I checked, Honeycomb was a separat version of the OS. It's unfortunate that it has to fool both the user and itself to be effective.
moo99 said:
Drive letters or some kind of unique ID from the root would be favorable. I know it's meant to adapt to Android, but last time I checked, Honeycomb was a separat version of the OS. It's unfortunate that it has to fool both the user and itself to be effective.
Click to expand...
Click to collapse
It still maintains the overall Adroid/Linux filesystem structure, there are no lettered drives in *NIX.
I know that, bru. Calling it , I dont know, "Internal" instead of "SD Card" would make a little sense considering there are two separate ports for SD Cards on there. Writing an alias isnt that complicated

USB Mass Storage Mode?

OK, what Kit Kat ROMs have USB mass storage mode?
If a ROM does have it, exactly how/where is it enabled?
Either a ROM doesn't have it or if it does the dev hides it some place and requires digging through 100's of stupid pointless posts to maybe if you are lucky, find the answer.
I'm at the point with this USB mass storage B.S. that I'm ready to leave Android completely and get a flip phone. Whomever thought it was a good idea to remove it was an idiot and whomever signed off on it was even a bigger idiot.
Lokifish Marz said:
OK, what Kit Kat ROMs have USB mass storage mode?
If a ROM does have it, exactly how/where is it enabled?
Either a ROM doesn't have it or if it does the dev hides it some place and requires digging through 100's of stupid pointless posts to maybe if you are lucky, find the answer.
I'm at the point with this USB mass storage B.S. that I'm ready to leave Android completely and get a flip phone. Whomever thought it was a good idea to remove it was an idiot and whomever signed off on it was even a bigger idiot.
Click to expand...
Click to collapse
MTP is absolutely terrible, completely half baked and totally unreliable.
Right now I just discovered that ChromeOS doesn't even support MTP... Google's OWN PRODUCT...
I'd like to know the answer as well.
I understand the frustrations but the problem with mass storage is that it surrenders all control of the internal storage to a PC not a problem when that's a different chip but on the n7 and most new smartphones its an emulated partition and giving over total control would mean that android cannot function at the same time. This was brought in to stop manufacturers using two separate chips giving you loads of "storage space" but very little application space. Its a work in progress and has many issues but its here to stay I don't think any ROMs will support USBMS as it not possible on a single chip without shutting down android.
Sent from my C5303 using xda app-developers app
LOL. In camera mode you have access to the "Pictures" folder and is readable by Windows and other OSes. All that needs to be done is duplicate the same process and direct it to a folder called "Storage" with full permissions for the folders contents. This essentially simulates USBMS. You can even redirect mounts to that folder so that apps see it as a storage area as well so things like map data and so on are put in the "Storage" folder.
I don't have the time to mess with this but it can be done and something almost exactly like this has been done before on almost every OS.
Lokifish Marz said:
LOL. In camera mode you have access to the "Pictures" folder and is readable by Windows and other OSes. All that needs to be done is duplicate the same process and direct it to a folder called "Storage" with full permissions for the folders contents. This essentially simulates USBMS. You can even redirect mounts to that folder so that apps see it as a storage area as well so things like map data and so on are put in the "Storage" folder.
I don't have the time to mess with this but it can be done and something almost exactly like this has been done before on almost every OS.
Click to expand...
Click to collapse
I imagine it can be done but it wouldn't be mass storage and would require apps to be compatible it may have been done on other systems but how much space should this storage folder be allocated because it would no longer be avalible to install apps. In camera mode android still retains control of the folder other os can read that folder but files must be copied off the device to be edited. It would be good if android could mount the SD card as mass storage.
Sent from my C5303 using xda app-developers app
No it would not technically be mass storage, thus the "simulated" comment. As far as other OSes, it's already been done to a point on android already via the simulated partition that's already in use. This has also bee done using third party apps to mount folders as virtual drives.
App compatibility, if the folder is used as mount point then it is transparent to the OS and the apps. This has been done for some time now using third party apps.
The folder size could have the same limitations that the storage area has already been limited to. If coded so that it is part of the boot process then everything outside of system apps would only see the virtual area. Kind of like what's being done right now.
Dual mount. This has been used with much success and allows for PC and Android access to the same storage area at the same time.

Thumbnails to Ext SD Card

If you have a lot of photos on your device, the gallery view thumbnails seem to use a tremendous amount of data; - nearly 2 gb on mine!! I have used utilities that allow me to clean these to retrieve the space, but the next time I view the gallery, the thumbnails just take up the space again; in addition, the performed task of cleaning them out just makes them load more slowly.
I'm hoping someone may have a trick (or hack) that can move the gallery thumbnails to the external SD card. Considering I only have 16gb of storage to begin with, and nearly 5 of it used up to store the basic OS, I'm not left with much space after installing my favorite apps. Furthermore, the performance on my device seems to be degrading as I approach maximum storage capacity on the internal storage.
I'm aware of programs that allow me to move program data to the external SD, but I have found that it's not uncommon that many programs have a tendency to glitch when using these utilities. I'm really more interested in staying focused on my primary intent of moving JUST the gallery thumbnails to the external SD card in hopes of saving space on my primary storage.
If it matters, my device is a rooted Verizon S5 running KitKat 4.4.4.
Wired4Fun said:
I'm hoping someone may have a trick (or hack) that can move the gallery thumbnails to the external SD card. Considering I only have 16gb of storage to begin with, and nearly 5 of it used up to store the basic OS, I'm not left with much space after installing my favorite apps. Furthermore, the performance on my device seems to be degrading as I approach maximum storage capacity on the internal storage.
I'm aware of programs that allow me to move program data to the external SD, but I have found that it's not uncommon that many programs have a tendency to glitch when using these utilities. I'm really more interested in staying focused on my primary intent of moving JUST the gallery thumbnails to the external SD card in hopes of saving space on my primary storage.
If it matters, my device is a rooted Verizon S5 running KitKat 4.4.4.
Click to expand...
Click to collapse
You can use the program FolderMount to make a folder on the Internal SD point to a folder on the External SD.
You may need the premium version to mount a folder that isn't in a data or obb folder.
Links:
FolderMount on Google Play
XDA Developers Topic on Foldermount

Categories

Resources