I am extremely disgusted by the internal SD card. Why? - General Questions and Answers

Hello all,
It seems that nowadays all vendors decide to go with the approach to have a virtual SD card that uses an emulated filesystem to make us feel happy in case we do not have a real SD card. I honestly do not understand the reasoning behind this so I am reaching out to you to let me know what you think the reason is.
For now I can see the following pros and cons of this approach:
Pros:
Have SD card support in case you do not have a real one and you have an app that requires it.
Cons:
You no longer can move applications to external SD card on most devices (all that I have tried).
The application data (obb) that is essentially the largest thing an app can offer goes directly to the internal SD card and you can not move it to the external SD card.
You are now even restricted by what you can write on the external SD card because if not there is a security issue. That's also a thing that I do not understand that is conveniently not explained and just implemented.
Your CPU cycles are used to process the data yet once more just so that you can have the luxury of an emulated file system.
The fuse filesystem in most devices lacks some basic features like links.
Essentially the internal SD card seems like a Huge hack to me. Why is that? Even just the name gives it all away. "Internal SD card". That is not an SD card. It's not even a separate flash chip. Not even a separate partition on most devices. There is times where this is just a folder in your userdata partition made to look like an SD card by the magic of fuse.
The only reason I could find for this monstrosity is that there is some kind of compatibility issue with some apps in case you do not have an SD card and so that's why they came up with this.
So please let me know what the big idea that I seem to be missing here is as to why this humongous hack is needed. Thanks in advance!
Cheers,
Sakis

Related

Apps to SD questions (please)

Okay XDA tenured- please be gentle. I ve searched, but can not find specific answers to my questions. I ordered a 16gb class 6 (currently have class 2), but would appreciate information before making the changes.
1.) Is it possible to leave current apps on the device memory, then set up for apps to SD and then future apps will go to the card?
2) Based on question 1) if it works, when I update future apps on the device, I am guessing they would then uninstall from the device and then install to card?
3) Would it be best for performance to leave all cache on the device memory? Seems like the system would be faster then.
4) What is the meg space difference leaving all cache or moving it?
5) When changing over to apps to SD, is it not kind of like the same constrained system as an iPhone (Plenty of intitial space, but no ability for external storage)? Point being, if all the apps are on the card and you want to listen to or view media on a seperate card, you would not be able to, since the apps are on the "device" card. This is the whole point to my first question. Unless you can copy the app directory path on the card to another card and use as is- just like the card already installed too...
1: Yes, if you follow my tutorial, it has you copy the existing apps to the sd card and if you use my app, the checkbox tells it to do that as well.
2: No apps will be on your device. There's no way to have a hybrid here, it's either all apps on the sd card or none(not actually true but would be a pain in the ass to make symlinks for each app individually and I don't know of anyone who cared enough to actually try it)
3: I have all apps and caches on the sd card and it is running just as smoothly as normal(and with a class 2 sd card!) There might be some slowdown but it's imperceptible to me.
4: With the cache on device it'll vary depending on what apps you have and how often you use them. With everything moved the memory on the device seems to stay permanently at 72-73MB. That said, moving the normal cache(dalvik-cache seems to be ok) is pretty unstable and I wouldn't suggest it unless you really know what you're doing.
5: Yes, unfortunately this whole process relies on the system not knowing the apps are on the sd card so it's pretty strongly tied to one. That said, you could probably get away with different sd cards as long as they also have an ext2 partition with the app, app-private, etc. directories in it. You'd probably have to reboot when switching sd cards but it should be possible(interestingly you could use this to get different settings depending on what sd card you have in)
Thanks!
So basically we have an iPhone in regards to being stuck to device memory and no option for external storage beyond what is on the card.
I guess there are pros and cons to either set-up. App hounds would prefer apps2sd and media hounds may prefer leaving things alone.
If you are an app and media hound, you are kind of stuck juggling media from the card.
Yep. Although as I was talking about, you could theoretically move each app independently and set up symlinks in the /data/app directory for each app, pointing to where it is on the sd card and leave the ones you want on the phone as they are, but that doesn't sound particularly fun.

Can someone please explain the SD Card issue to me....

What exactly is the problem? Im thinking of getting the focus and I keep hearing these SD card issues but what "exactly" is the problem? I understand that once you put it in, your SD card is done, and that if you want to remove it you have to wipe everything, I understand all that, but what are the problems that arise? I have a 16gb micro sd that I have used on all my devices no problem, do files get corrupted or something? Does it just not read it?
There aren't any problems in that sense. The only real "problem" is that not all MicroSD cards work with WP7. In addition, hot-swapping isn't supported, because in effect, the MicroSD's memory is added to the internal memory, and the system then doesn't differentiate between storing on the sd card and that that's built into the phone, and thus stuff is spread all over all of them.
There aren't any "problems" as such that I know of though.
On an ending note - WP7 is awesome ^__^ Honestly the best user experience I've ever had with a phone (esp. having come from Android >.<) ^__^
loading a microSD card will turn it into a secure card. once this happens no other device will even read it (except a nokia n8) making it extremely difficult to format if it doesn't work nicely with windows phone 7. That is the main issue. rest already mentioned.
GenkaiMade gave his version which is correct but I thought I would explain it my way.
Take your average memory card and device. What are some of the default expectations you have when using one?
1) You should be able to get any MicroSD card on the market and be able to put it into your phone with it working.
2) You should be able to remove the memory card from the device and put it in a different device (such as another phone or PC) and have it still work like normally.
The problem with Windows Phone 7 is that it breaks these two rules.
1) Many of the higher rated MicroSD card flat-out don't work on WP7. This is because of the method WP7 uses to read/write to memory card. You can find more specific details on why this is but I will just keep it simple. There are many user-created lists which list which MicroSD cards do work with WP7.
2) You can NOT hot-swap your memory card once it is inserted into phone. Why? SD stands for Secure Digital which means there is a security aspect capable on the card. Microsoft takes advantage of this in WP7. Once you put your new card in your phone automatically reformats and locks it down. If you then take out the card and place it in another phone or a PC it will not be recognized, almost as if it is invisible. And the worst part, there is nothing* you can do about it. Once you pair a memory card and WP7 phone they are joined for life.
Why does this suck? If you buy a 8GB card now you simply can't upgrade to a 16/32Gb one down the road without losing all of your data and having a useless MicroSD card. The old card would become a better Frisbee than data storage device. This is why most WP7 phones don't let the users have access to the memory card. Microsoft knew this would happen and thus pushed manufacturers to not have the card easily accessible. There is even much talk that the memory card in the Samsung Focus was meant to be glued to the phone to prevent swapping but somewhere along the line that idea was scrapped.
* Note: Technically there is ONE thing you can do. If you own or have access to a Nokia N8 phone it can read the locked down MicroSD card and reformat to something any device can recognize. Essentially undo the problem. But how many people have easy access to one? The answer, almost nobody.
Quicksilver4648 said:
GenkaiMade gave his version which is correct but I thought I would explain it my way.
Take your average memory card and device. What are some of the default expectations you have when using one?
1) You should be able to get any MicroSD card on the market and be able to put it into your phone with it working.
2) You should be able to remove the memory card from the device and put it in a different device (such as another phone or PC) and have it still work like normally.
The problem with Windows Phone 7 is that it breaks these two rules.1) Many of the higher rated MicroSD card flat-out don't work on WP7. This is because of the method WP7 uses to read/write to memory card. You can find more specific details on why this is but I will just keep it simple. There are many user-created lists which list which MicroSD cards do work with WP7.
2) You can NOT hot-swap your memory card once it is inserted into phone. Why? SD stands for Secure Digital which means there is a security aspect capable on the card. Microsoft takes advantage of this in WP7. Once you put your new card in your phone automatically reformats and locks it down. If you then take out the card and place it in another phone or a PC it will not be recognized, almost as if it is invisible. And the worst part, there is nothing* you can do about it. Once you pair a memory card and WP7 phone they are joined for life.
Why does this suck? If you buy a 8GB card now you simply can't upgrade to a 16/32Gb one down the road without losing all of your data and having a useless MicroSD card. The old card would become a better Frisbee than data storage device. This is why most WP7 phones don't let the users have access to the memory card. Microsoft knew this would happen and thus pushed manufacturers to not have the card easily accessible. There is even much talk that the memory card in the Samsung Focus was meant to be glued to the phone to prevent swapping but somewhere along the line that idea was scrapped.
* Note: Technically there is ONE thing you can do. If you own or have access to a Nokia N8 phone it can read the locked down MicroSD card and reformat to something any device can recognize. Essentially undo the problem. But how many people have easy access to one? The answer, almost nobody.
Click to expand...
Click to collapse
You're wrong. It has nothing to do with what you said. Lol @ breaking rules. They aren't breaking anything...
SD Card DRM is in the spec, it is only given to people who license it. That's what WP7 uses. It's locks down the storage system with a DRM key and that's why other devices (barring Nokias) can't see it - most SD Card clients don't support SD Card DRM.
Nokia (Symbian, and maybe Maemo, but I'm unsure on that) is the only other mobile OS that supports it, and that's why it can reformat the card (but cannot read any data on it, of course, since it doesn't have the decryption key). When you power on the phone, the WP7 pre-boot environment unlocks the card via a key on the device the same way you unlock an encrypted system drive on a PC. If a device cannot supply this key, they cannot mount the card.
If you swap the card, you have to hard reset the device because the storage is spanned and the decryption key on the device no longer corresponds to the SD card in the device (but due to spanned storage the device would malfunction even if it were to boot up). The new card is encrypted and added to the pool on a hard reset, and the [new] key is put on the device so that it can be mounted when the device is powered on.
It's pretty damn simple, and has been written in plain English in many threads; yet people still FAIL to understand it.
Have you ever thought there must be a reason why they call them SECURE Digital Cards? Or did you think Secure = taking it out one device and just plugging it into the other and taking the data off of it?
The Storage in WP7 was never meant to be swappable. Microsoft has always said it would not be. It's your own business if you want to play around swapping cards like Russian Roulette.
As far as which work with WP7. It requires higher Random I/O speeds than most SD Cards provide, and that doesn't correspond to Class Type. Also, a card can work fine for sometimes weeks at a time and then start to fail, so replacing it yourself is at your own risk.
And most manufacturers and carriers will void you warranty if you mess with the SD Card.
In that respect using memory cards is nonsense on WP7.
If you cannot do what you want with this, what was a rule and still is a rule on the market today,
they should just build devices with inbuilt memory like iPhone and don't talk about memory cards anymore. That would be simple.
Current situation is a mess.
So what cards are compatible now? I Googled it and the first response was 'San Disk Pulls WP7 compatible memory cards' and I figured that wasn't a good sign.
williammel said:
So what cards are compatible now? I Googled it and the first response was 'San Disk Pulls WP7 compatible memory cards' and I figured that wasn't a good sign.
Click to expand...
Click to collapse
they only pulled it because MS wants to do official testing and release an official list.
refer to this webpage for more info: http://mobilitydigest.com/the-sd-cards-that-dodont-work-with-windows-phone/
Here it is in KB form from Microsoft:
http://support.microsoft.com/kb/2450831
N8ter said:
You're wrong. It has nothing to do with what you said. Lol @ breaking rules. They aren't breaking anything...
Click to expand...
Click to collapse
It was a figure of speech. I know Microsoft didn't break any real "rules". This is what I posted:
Quicksilver4648 said:
...
What are some of the default expectations you have when using one?
...
The problem with Windows Phone 7 is that it breaks these two rules.
...
Click to expand...
Click to collapse
When I said "rules" I implied "expectations". Microsoft did nothing wrong, outside of communicating with the end users, with how WP7 manages MicroSD cards.
And I clearly know why certain MicroSD cards will or wont work. I just didn't feel like explaining it because it would take a lot of time.
It's time to start expecting people to use these technologies in a secure manner.
The media industry does not support platforms that leave them open to be attacked by software pirates.
Information is power, and no one likes their info stolen.
There are many reasons.
iOS phones encrypt their storate. And the reason why they don't support external storage cards is probably the same reason why Microsoft uses the SD-DRM and encrypts the WP7 storage.
I don't know how Symbian handles its storage, but I'm pretty sure that OS at least supports Encrypting the file system on SD cards. It supports pretty much everything ele.
Right, let me give my own perspective on this.
Until recently I was a WM6 user. I regularly upgraded my phone, and the last one was an HD2. WM phones never came with any real amount of storage, just a piffling amount of internal memory (what, 500MB?). I was therefore faced with the added cost and hassle of having to purchase a memory card and insert it into the phone. This was a bit like buying a PC without a hard disk and having to buy and install your own. It was an added hassle and expense.
Once you had your SD card inserted, you were then faced with the decision of where to store the data for each of your apps. Take email - do you store all your emails and attachments on the internal memory, thus using up a good chunk of that precious resource, but having it work quickly, or do you store it all on the SD card, where there's a lot more room but it's slow and clunky, and if anyone steals your phone they can pop the card out and get at the data? When you install apps, you're again given the choice of where to install it. Do you go for the speed of internal storage? Do you put it on the SD card, knowing if you ever pop out the card, your app will be unavailable? Decisions, decisions.... Too much damned complexity. The average user shouldn't be faced with these choices, if I install an app, it should just go on the phone wherever, period.
Not only that, once my card was in there, I never once removed it. The majority of my apps were on it, my emails, and all my media. I totally filled it with media. Popping out that card would more or less break my phone. My apps wouldn't work, my emails would be missing......so I never did. Nor did I ever use it as a mass storage drive....because there was never any free space on it. Instead I had a 32GB USB memory key hanging from my keychain - that was my portable mass storage solution.
Not only this, if I wanted to put media onto the card, I had to connect to the PC and drag and drop my stuff directly onto the phone. What a hassle! Doing this didn't optimize the size of the photos for the phone's screen. It didn't drop the bitrate of my mp3s, it didn't convert videos to the right size and format. All that had to be done manually, and I never bothered, so my media took up a lot more room than it had to. So inefficient.
So, given that I never removed the card, and that doing so would hose my phone, and that it was always full, so never got used as mass storage, and that it was insecure, and an added expense and hassle, and putting media on the card was a manual process, what would I have done in a next generation phone to cure all these issues?
Well, I would have made sure the phone came with plenty of onboard memory, and I would have removed the distinction between internal memory and the "card" so it was all one storage container. I would have secured the memory so even if it could be removed, the data couldn't be read in another device. I would have made sure the memory was fast enough to deal properly with a modern OS. I would automate the process of converting and downsizing media by using software on the PC to automatically perform those tasks. I'd also make the process wireless and fully automatic. I'd.......oh wait, that's what Microsoft already did in WP7.
So I'm happy, even if you lot ain't.
I just got 2 Focus's for the Wife and I. Using the SD card sticky in the Focus forum here as a general help, I purchased a PNY 8Gb C4 for the Wifes, and a Patriot 16Gb C2 for mine (Frys, and the Patroit was the last one in the store from the Display! No one buys C2 anymore).
The back overlay on both devices mentions memory cards, and quick startup quide shows you how to install them and what happens if you remove them.
I put the Cards in last night (phones just arrived yesterday), formatted (hold the Power/Camera/Vol Down at the same time, answer questions) and in a few seconds each system was formated. Both are working fine right now.
Right now though doesn't mean much, many in the SD thread are having issues after several weeks, though it seems it more prevalent with the 32Gb cards. YMMV...
What I find goofy about the whole thing is that it has been stated that 7 needs random read/write, which is not measured by class rating, and can vary even within the same type of card, but very few people have posted numbers showing that they tested their cards at all before gleefully sacrificing them to the hungry maw of the Focus. Seriously guys, do more testing and post more numbers before rendering your cards unreadable to a PC. It'll help us all to better understand what works and what doesn't.
This bites.. I always knew that the card inside the wp7 was secured, but I always had faith in the power of this forum. Especially in recovery situations. Now I have lost a lot of irreplaceable data, like dozens of pictures of my young child. It seems I had a little too much faith.
Thank you for this information. it was very helpful. I have already moved away from Windows phones to android, and am going to start using nandroid. Hopefully this won't happen again.

speed up your sd card

This may be obvious to some people but not all...myself included
If you find that your apps/games (or anything else) stored on your sd card are starting to take longer to load than usual, try connecting it to your computer and running disk defragmenter (or whichever program you prefer).
I did it to mine after a good 6+ months of use and found that it was heavily fragmented (took a few hours to complete on class 2 8gb so left it running overnight!)
If that doesn't make much difference then you might want to invest in a higher class sd card which of course will give you faster read/write speeds
EDIT: sorry i just realised this is in the wrong section!!!
To have more of an impact you can change the readahead value in sys/devices/virtual/bdi/179:0/read_ahead_kb from 128Kb to whatever suits your SD card type. In my case 2028Kb.
This cannot be achieved just by editing the file as it is overwritten on boot. Google for it or search market if you want an app to do it for you if you are rooted. Tasker works also.
Using a PC to defragment your phone's SD card can be bad. Bad as in, the computer will treat your SD card as if it's some memory expansion to itself. It will move files to places where it "thinks" they should be but actually they're in the correct place for the device. This is based on past experiences when I did it and that's exactly what it did. Example in the Android Secure folder (asec files), it caused apps which were moved to the SD card to have corrupted data (cause it depleted the values of some of the asec files). The method nobnut stated is the better option.
If you must do it on a pc, rather than use Windows own defragmenter, use an SD defragmenter program, like http://panasonic.jp/support/global/cs/sd/download/index.html.

So can someone explain to me why android partitions rom the way it does.

For example, I've got system rom, internal storage, sd card storage, and ext sd card storage. Why don't I just have internal storage and external storage? Can someone explain what each one is "for", and where I should store what (like apps, music, videos, etc.). Thanks ahead of time for any answers that you give, this has been bothering me for a while.
You should store your files on the internal /sdcard or your external /ext_sd micro sd card.
I'm saving music,videos and pictures on my external sd card.
This way i can take the card out of my phone plug it into a new one and have everything there.
I leave the build in card for the apps, kernels, roms, downloads and random other things.
Its mainly just preference.
Because of multiple partitions on the internal sdcard android can use different filesystems and option on each one.
Each filesystem can have advantages in security,scalablity, performance or reliance.
Partitions can be flagged read-only to secure them from involuntary changes.
Thanks for the help, but that leads to another question. I can't move some apps to the other part of my internal storage, or the media area, as the phone calls it, why not? It's just internal storage like the other partition, but the media area has around 12gb of data while the internal storage only has about 2. I just don't want to fill the first partition up because im not able to move apps out of it.
I'm not really sure about that one, but something along the lines off: on the internal 2gb partition android can restrict and controll access for stablity and safety reasons, while if the apps were saved on the 12gb media partition any rouge app could run wild and screw things up for other apps.
Physicly they are probably the same, so with some technical knowledge you could reflash your device and change the partition sizes.

[Completed] [Mod] Maximizing relocating internal data to external SD, LG Optimus Fuel L34C KitKat

Can you please help a noob figure out where this post belongs?
I make no pretense to being a developer, and I was very hesitant to join XDA, but these are questions concerning modding which I have not found answers to, despite posting to a number of other Android forums, so I was forced to "raise my sights."
I have an LG Optimus Fuel L34C (KitKat). I am an Android noob but I have a history with Linux, so I know just enough about what goes on behind the KitKat curtain to make me dangerous. So yes, I also care about the journey. And I'm already heavily invested in this quest, so despite my lack of expertise, I'm willing to do the leg work to make it happen.
My one saving grace is I have a backup fetish. And I want to continue to make Nandroid backups even when the L34C's puny internal storage (1790 MB usable) is maxed out (or nearly so). But I don't want to resort to backups to the cloud because 1) it offends my inner geek that I have to rely on someone else for backup support, and 2) as a delusional paranoid, the concept of "the cloud" gives me the willies.
I'm using TWRP Manager (Root) for Nandroid backups now, but TWRP only can write to the internal SD. Which means that once internal storage is about half full, there's no longer enough space remaining for any more Nandroids. And a bare bones installation with just enough additional apps installed to perform the Nandroid already takes up about 700 MB. So there's no chance of any further Nandroid backups after downloading or installing just two or three hundred more MB.
So my primary goal is to be able to write Nandroid backups to the external SD card (or, pipe dream, to write them to USB). If this also allows me to install apps or store other (internal) data on the external card, so much the better.
I just bought a second L34C because the WiFi on the original L34C pooped the bed. So now I have a new and unmodded L34C to experiment on. I had (towel) rooted the old phone, write-enabled the external SD card and installed the TeamWin open recovery image v2.8. And I replaced the OE 4GB external SD card with a 16GB class 4 card, partitioned half in Fat32 and half in Ext3.
The primary obstacle was that I could never get the second partition on the 16GB card to mount, which prevented me even from experimenting with symlinks. I also installed the latest version of Link2SD, but when I tried to use it to move an app that Link2SD labeled as movable, I got this:
!Failure
App2SD is not supported by your device. Because your device has a primary external storage which is emulated from the internal storage. You can link the app in order to move its files to the SD card.
Click to expand...
Click to collapse
Dunno why it's blaming Apps2SD unless Link2 is built around Apps2.
Curiously, I installed Aparted, too, and it was able to access (and process) the 2nd partition, even though it wasn't mounted. I've not heard this definitively but I'm led to believe this is down to the L34C's lack of support for init.d. So I downloaded a copy of daishi4u's custom boot image, which includes support for init.d, but the old phone crapped out before I could try it.
So with background in place, and a spanking new L34C in hand, on to the questions.
#1. With the current state of L34C/KitKat development, is what I'm asking even possible? Once the internal SD card has got too crowded for a Nandroid, is there a solution that will allow me to continue making local Nandroid backups? In particular, I'm thinking there might be another Nandroid backup app that I am unaware of that can write its backups to some location other than the internal SD card.
If this already has been accomplished (and is documented online), please just point me to the details and I'll get out of your hair.
2. I picked daishi4u's custom boot image because the reputation of daishi4u's work is known to me, and because it offered init.d support. If you think another boot image is preferable, please enlighten me.
3. Is Link2SD's problem with the L34C truly the emulated storage? I ask because I know developers typically code apps to make a best guess as to the cause of an error, but despite their best efforts, an app still is liable to be exposed to unanticipated conditions, resulting in a problem that might be beyond the scope of their programming to understand and enunciate.
4. Is the lack of init.d support in fact what prevents an L34C mounting additional partitions on the external SD card? Or am I barking up the wrong tree?
5.a. I found a post in another forum that was near three years old stating that the extra partition on an Android external SD card must be no more than 2GB, and preferably just 1GB. If this ever was true, is it still the case for KitKat? And what is the source of the limitation?
5.b. If there is a 2GB partition limit, is there a limit to how many 2GB partitions can be externally mounted? A Nandroid backup of a heavily configured L34C could take up most of 2GB, so it would be especially useful work-around if there were one (additional) partition for the Nandroid and a second (or third, or fourth, ...) for moving apps and random data off the internal SD.
6. Which app(s) would you suggest I try for moving apps/data/folders to the external SD? There are so many available, and I have not been able to find any comparisons/contrasts of their relative merits, so I would appreciate your recommendations to avoid having to resort to the 'shotgun' approach. This is presuming I'm able to get more than one partition on the external SD card to mount.
I've not lost sight of the fact that some of these apps do not require a second partition on the SD card (creating something functionally akin to an iSCSI partition on it?), but I'm not counting on finding a solution in one of them.
Thank you for taking the time to read my long-winded post.
Well personally I don't keep more than one nandroid on my phone but what you may wish to do is transfer them to your pc for safe keeping and not have to worry about it. You could also try inserting your sd card into your pc and manually transferring the nandroids from your pc to your sd card afterwards. It may work.
Now with regards to the sd card write protection issue, I could not locate anything for your device in particular but if you register you can ask your question here and someone may be able to help you.

Categories

Resources