
KitKat will make your SD Card useless - radley
https://plus.google.com/+TodLiebeck/posts/gjnmuaDM8sn
======
bryanlarsen
The sky is not falling: [External Blues: Google Has Brought Big Changes To SD
Cards In KitKat, And Even Samsung Is Implementing Them]:
[http://www.androidpolice.com/2014/02/17/external-blues-
googl...](http://www.androidpolice.com/2014/02/17/external-blues-google-has-
brought-big-changes-to-sd-cards-in-kitkat-and-even-samsung-may-be-
implementing-them/)

Summary:

All apps (even ones without external storage permissions) can now read and
write from a designated private folder on external storage.

There's a new sharing framework called the Storage Access Framework that can
be used to request access to other folders, which treats external storage in a
manner similar to cloud storage.

It might be a harsh transition, but not completely surprising since it's been
quite a while since Nexus devices have had external storage slots, and it's
been quite obvious for a while that Google has been discouraging external
storage.

The hopeful takeaway is that Google will be relaxing this discouragement now
that they've figured out a strategy for external storage moving forward.

~~~
gcb0
1\. launch all flagship phones without sd slot to force use of gdrive

2\. everyone buys other companies (budget?) phones because they have more
features (eg sd card slot)

3\. break that in software (because they can) so that feature is not "missing"
on the flagships anymore.

4\. instead of just removing, make the functionality be yet another entry
point to gdrive by making the sd write api be analogous to the cloud write
one.

google only fear to not fuck up like that was something like cyanogenmod, but,
well...

~~~
samstave
At this point in my life; I am ready to challenge any design team of any
mobile device which decides to leave out expandable [micro]SD storage to a
bout of the fisticuffs.

There is absolutely NO reason any mobile device should lack this. [This is
___ESPECIALLY_ __aimed at Mr. Smug; Ive]

~~~
sitkack
How else would they up sell to the 64GB model? What if a device I bought 3
years ago could be still relevant by just upgrading an inexpensive flash card?

Not only is so restrictive as to be insulting, it harms the environment by
forcing devices to die a premature death, I know my iPad 1 would be a whole
lot more useful with a 64GB SDHC card in it.

I was super stoked to buy a Google Nexus tablet, after finding out there was
no SD card slot, I forever declined that purchase.

~~~
toomuchtodo
I have a Galaxy Nexus that is barely supported by Google now, and its just a
little over 2 years old. Going to recycle it and buy a Nexus 5.

I'm just a bit too old (31) to care anymore. No SD card? Whatevs. I'll use
Dropbox/Evernote/Amazon's MP3 Player with wifi to get whatever I need onto the
phone.

~~~
gcb0
sadly, you are probably the norm nowadays. a shame.

------
duncan_bayne
I feel like a right idiot for championing Google as an open alternative to
Apple for so many years. It now appears that they were operating a giant bait
and switch. Now that they are the incumbents they no longer benfit from
openness, so say goodbye to writeable SD cards, XMPP federation, RSS support,
Google Reader ...

Each change is defensible if viewed in isolation, but when seen as an whole it
is obvious what the overall plan is.

I think our only hope might be Ubuntu.

~~~
matt_heimer
This is a good switch. Apps can still read and write to external storage, just
in an application specific directory. Look at it like this. If you are setting
up a Linux server you don't run all your apps as root, you run them as non-
privileged users. Why? Because an app misbehaving as root is a scary thing.
But you also don't run all your non-privileged apps under the same user
because if one of those apps starts misbehaving and you ran everything as the
same user then its almost as bad as running everything as root - one bad app
can trash all your data. Android had the same problem with external storage
and the android.permission.WRITE_EXTERNAL_STORAGE permission - one bad app can
trash all your external data. This update will make me much more comfortable
installing apps that write to external storage because they can only write to
their own external storage as it should be. If an app needs the ability to
modify everybodies external storage data doesn't that sound like something
that would need root permissions on a properly secured Linux system? Why
should Android be any different?

~~~
protomyth
If an mp3 player (A) imports some files and stores them on external storage,
can mp3 player (B) read the mp3s and write meta-data to those files? What
about different text editors?

I am a little confused about using root in the example as on a PC a user can
have an external storage device with music and all apps can find and play and
write to it.

~~~
matt_heimer
If application A has private files (regardless of the type) then no, no other
(non-root) application can access them. There is a content provider framework
that an application can use to register files that it would like to allow
other applications to access.

Look at where things are in the PC world, viruses, malware, keyloggers, etc.
The android permission model is the alternative. Allowing any application
access to the entire external storage if it needed to write one single
directory was a bad thing. If you want android to continue to allow random apk
installation from different sources they needed to patch this hole. The other
option to keep your phone safe is a completely walled garden approach (Apple)
that polices apps a lot more than Google seems to want to.

~~~
duncan_bayne
What if I _want_ to grant an application access to the SD card? Surely I
should have that option?

~~~
protomyth
Apparently, it is a zero tolerance policy except for the provided apps even if
you trust the app developer.. Which basically means you cannot truly replace
the provided apps without rooting the phone.

~~~
duncan_bayne
Indeed. Which is why I say this represents another component of a strategy
away from open systems, and towards the sort of proprietary walled-garden
experience offered by Apple.

Not only is this a betrayal of many early Google evangelists - myself included
- it's a fairly cynical exercise to build such a system on the Linux kernel.

------
fidotron
The plan here is quite simply that any memory in your device becomes a cache
of some cloud storage somewhere.

SD cards have the problem that they can be removed, and thus easily inspected,
so cloud services wanting to keep their data locked up when it's cached have
to resort to measures such as Facebook's Conceal library, which is more to do
with preventing users from getting their own info out of Facebook than it is
preventing any actual malicious activity.

~~~
matt_heimer
Why not just an app that registered a service that was basically a cloud
provider for your SD card? Any apps wanting to access the _shared_ storage
would use the service's API to request access to a content. The shared storage
would really be the private storage for the storage app.

Seems like this would be the best of both worlds, no crazy free-for-all
external storage but shared data with some type of prompting to grant an app
access to a particular path of shared storage.

------
wyager
Remember how outraged people were when the iPhone didn't have SD card slot,
and how people here on HN used that as a selling point for android?

Remember how outraged people were when the iPhone didn't support flash, and
how people here on HN used that as a selling point for android?

How things change.

~~~
Dylan16807
You sure seem to be implying the lack of an updated flash APK is anything
other than Adobe's failure. Please don't imply that.

~~~
soganess
But it is? Even on older devices that can still use flash, chrome refuses to
utilize it. You could make a reasonable counter-argument and say that the AOSP
browser can still access it, but seeing as the stock browser hasn't seen any
interfaces updates since ICS, I'd say that the stock browser is as outdated as
flash itself.

Its becoming clear that two distinct androids are forming: the ghettoized one
that is AOSP with its outdated/feature stripped version of apps and the first
class versions that require the Google play service.

~~~
Dylan16807
Doesn't firefox use flash fine? Most android browsers support plugins. The
main problem is the awkwardness of getting flash in the first place, and
that's entirely on adobe.

~~~
cpeterso
Yes, Firefox for Android still actively supports the Flash plugin.

------
vertis
While I sympathise with the pain this is going to cause, I have an sdcard that
I've been using since I got my Nexus One. It's a horrible mess because apps
create things and then never delete them (etc).

Having a much more organised system for storing data (and removing it if the
app is removed) makes a lot of sense.

------
supercoder
SD cards were such a terrible mess on Android. This is excellent news from a
developers POV.

~~~
pdonis
_SD cards were such a terrible mess on Android._

How so?

~~~
tadfisher
They're removable, so any call to the filesystem could potentially fail at any
given time. They're mountable over UMS, meaning an external system can remove
the volume you're currently attempting to write, and delete or modify your
data by the time you get it back. They're slow, which is hell on a game's
startup time, for instance.

The permissions change doesn't really fix any of these problems, but the
sugary API they've written to support it certainly makes it a lot nicer to
work with. Dealing with all these cases using the File API is not an enjoyable
task.

~~~
aidenn0
Every single android phone I've owned had the SD card under the battery.
That's not going to get removed too often. My current phone (Kyocera Torque)
is essentially unusable without an SD Card.

P.S. If there is a setting to tell google play to install to SD card, let me
know. I keep running out of internal space because I forget to move new apps.

~~~
tadfisher
When you mount an SD card over UMS, it is functionally identical to "removing"
the card from an application's perspective.

~~~
aidenn0
I would trade the ability to mount an SD card over UMS for the changes in
kitkat in a heartbeat. MTP sucks, but this change sucks more.

------
whoopdedo
"Restricting writes in this way ensures the system can clean up files when
applications are uninstalled."

Isn't this backward? Controlling clutter is more important on the internal
storage that can't be replaced. If some apps write a bunch of crap to my
external SD card I can clean it up myself or swap out a larger capacity.

~~~
CaveTech
AFAIK Android has always advised against storing anything on external storage,
because you're not promised that it's going to be available, and Android can't
full manage it (has no idea who/what wrote which files, especially since it
can be written by other devices).

You can still delete files from your internal storage, but now Android can
help you manage it as well.

~~~
whoopdedo
I don't see unmanaged files on a removable SD card as a problem. That's the
point, the SD card is for data that can be removed and handled outside the
Android operating system. I want apps to be able to write things to my SD card
that will remain when I uninstall them. I can do things like save a backup of
my app settings then restore on a different device.

The internal storage should have restrictions on managed data because if you
have untracked files that get left behind when an app is uninstalled, you may
not notice and they'll just be cruft. That's where I think the restrictions
should be placed, not on the SD cards.

------
JustinTipton
I made a feature request to allow users the option to give apps write access.
Google has already "declined" this feature request, but I encourage you to
comment and star this issue, if you'd like the option to delete songs in your
music player.

[https://code.google.com/p/android/issues/detail?id=65974](https://code.google.com/p/android/issues/detail?id=65974)

------
shadowmint
Gah, as if the terrible Android File Transfer weren't bad enough now we're all
forced to use MTP instead of mounting as USB drive...

...now we don't even get to use an on-device file manager to clean up the
stupid mess the Android File Transfer app leaves behind?

-__-

------
contingencies
Just another it's-not-DRM restriction from your freedom-loving watchers at the
Googleplex. Redefining 'open source' with lawyers and shady trips to North
Korea since god knows when. Now, unit, return to your regularly scheduled
email/phone/SMS control feed, keyed to your IMEI/ISIN/email/phone
number/credit card/API keys/web properties/contacts/GPS/nearby wifi SSIDs, and
proceed to be monitored.

------
jamhan
There seems to be little comment about actual "choice". A lot of comments on
this site and the original news site seem to be either "I hate SD cards
because..." or "I love SD cards because...".

The question to ask is: What about the consumer in general? Does this decision
limit choice?

The answer is: Yes, it does, and that's a bad thing.

I now cannot use an app that I paid for to copy MY files to an arbitrary
folder on MY device and use a different program I also paid for to
view/manipulate them.

This is one of the key reasons I prefer my Galaxy Note 2 over my previous 3
iPhones. Anyone here who _loves_ working with iTunes? Crickets...

Making specious arguments about the coding difficulty involved with SD cards
suddenly being removed is just inane. Are these people going to be arguing for
PCs that prevent you working with external hard drives? No? I thought not. Are
these people not bothered with having to pay an "Apple-like tax" on internal
storage at 2-3x markup?

People have been using memory cards in their cameras, mp3 players etc and
there's been no backlash about hard that is to manage. It's a non-issue.

Google, don't eff this up. Prefer choice over restrictions.

------
xfalcox
But google music just updated and now can save music to my external SD. and
I'm latest kit Kat!

------
voltagex_
I'd switch away from Android for this, but to what?

~~~
contingencies
Firefox OS is functional already, devices are available, and it is improving.

~~~
iamjustin
Has anyone seriously though about continuing where Palm left off with WebOS?
It seems that at this point, WebOS would run just as well on the hardware that
Mozilla is targeting with FirefoxOS, since the last WebOS phones came out
what... 3 years ago?

From what I heard WebOS was awesome. It's surprising that nobody has picked up
where Palm left off.

~~~
madeofpalk
> From what I heard WebOS was awesome. It's surprising that nobody has picked
> up where Palm left off.

LG turned it into a TV [http://www.theverge.com/2014/1/6/5279220/rebooting-
webos-how...](http://www.theverge.com/2014/1/6/5279220/rebooting-webos-how-lg-
rethought-the-smart-tv)

------
WeFlowin
I don't understand. Don't Android apps have unique users? Like app_xxx? Why
couldn't the fuse filesystem just set the /mnt/sdcard to be owned by root
(chmod 644), and app directories owned by app_xxx (chmod 660)? That would fix
whatever read permissions on apps could be leveraged from being in the
sdcard_rw group. Access to read sdcard files has never been an issue, sdcard
permissions have been granted. Anything that didn't require sdcard permissions
would be in the /data/ directory. Someone please explain this?

------
venus
I wonder what percentage of android users even uses SD cards?

My guess: pretty small.

~~~
radley
You think Samsung outsells Nexus 100 to 1 because of the great UI? It's all
about storage.

~~~
pvarangot
WHAT?

Seriously, Nexus are not even marketed or sold retail or with contracts in
most countries, and the list of countries in where they can even be bought
online is a _very_ small list of countries. Samsung outsells Nexus 100 to 1
because they phones actually exist as a product someone looking for a phone
can choose.

Motorola offers more storage than Samsung and almost all of their phones come
with SD slots and is also outsold by Samsung 5 to 1.

~~~
supergauntlet
Wut? Neither the Moto G nor Moto X has an SD card slot.

------
JustinTipton
An Android fan plugs their SD card into their camera while on a Safari. They
get back to their hut and plug the SD card into their Android devcie. The
camera put pictures in the folder "Camera".

These users will be able to see the photos on their Android tablet, but they
won't be able to free up space or modify any of these photos until they get to
a computer. Or iPhone with an SD card accessory.

------
Geee
Great, nice to see Android finally pulling bolder moves for greater user
experience. SD cards are the floppy disks of 2014.

~~~
stefan_kendall
It's a crap addition that cheap people demand instead of buying phones that
can hold more on flash. At least, that's the only argument I've ever heard for
SD.

------
ausjke
This really sucks. The only hope to get rid of android/ios apps' dominance is
probably on browser/html5 apps, I hope it comes sooner and our need for native
apps can thus be minimized(especially its underlying forthcoming-more-
proprietary environment).

------
protomyth
Say what you want about the Newton, but it probably had the most elegant way
to deal with external storage.

I keep wondering how far the lock-down on new computing devices will go. I
really wish someone would build an open device even if it isn't a phone (e.g.
iPod Touch).

~~~
tadfisher
Can you describe the Newton's solution for those of us who have never seen one
in person?

~~~
protomyth
I'll point you to some experts:

[http://en.wikipedia.org/wiki/Soup_(Apple)](http://en.wikipedia.org/wiki/Soup_\(Apple\))

[http://www.canicula.com/newton/prog/soups.htm](http://www.canicula.com/newton/prog/soups.htm)

[http://www.roughlydrafted.com/RD/Q4.06/600D65E6-A31E-45CA-
AF...](http://www.roughlydrafted.com/RD/Q4.06/600D65E6-A31E-45CA-
AFC5-42BC253F5337.html) (read the Technical Innovations section)

------
ck2
Does cyanogenmod have this limit?

I have not seen that complaint from people fiddling with the cm11 4.4.2 build

~~~
gcb0
do not restrict android mods to cyanogenmod. it is like saying "can i start
apache on my system boot on debian like i did on slackware?"

what you are looking for is how to format you sd card in Ext so it can a 1st
party partition. breaths new life to old phones. like the intentionally
storage crippled samsung nexus

------
chesh
Google getting ever more evil. Their system apps can write to the external SD,
but all the great 3rd party apps are screwed and constrained to the internal
SD.

------
sigsergv
I edit a lot files that are synced by Dropbox, so can I do this in KitKat?
They all edited in external applications, not in Dropbox.

~~~
tomkarlo
One Dropbox supports the API, you can open your files directly from external
applications. Box.net already has support out.

~~~
sigsergv
But can I save those files?

~~~
tomkarlo
Yes.

------
freeqaz
This makes sense to me from a privacy standpoint. Your SD card can be easily
removed, and if there is sensitive data there that's bad.

~~~
JustinTipton
How does this help privacy? The data is still on the SD card, unencrypted. All
apps have to store data at "/Android/Data/<Package Name>". No apps can delete
data anywhere else.

This helps with unwanted orphaned files when uninstalling an app. That is
pretty much it.

------
stefan_kendall
Someone buried the lede. The real story here is that someone posted to
Google+.

~~~
radley
Google+ is essentially Google forums.

------
geeNoThanks
Holy shit. Fuck this.

Back to laptops.

Apple products are bullshit because obvious planned obsolescence is obvious.
No removable storage, and no removable battery makes Jack a dull boy.

Now Google too?

Vote with your feet.

~~~
grrowl
Resist if you like, but what are your options if not iPhone, Android, or
Windows Phone? It's clear these distinct developer teams have decided direct
access to removable storage is some kind of risk (whether to security,
usability, or ubiquity). We're not going to reach a truly post-PC era without
addressing and moving on from some of the core issues at the heart of it, one
of which is the folder/file hierarchy.

I'm sorry for your loss, but it's time to adapt my friend.

~~~
MBCook
> It's clear these distinct developer teams have decided direct access to
> removable storage is some kind of risk (whether to security, usability, or
> ubiquity)

I would argue usability. Having removable storage causes you to have to handle
quite a few additional issues:

* Storage is removed (while app is off/in background)

* Storage is removed (while app is active)

* Users have to understand there are _two_ places to put things (may still exist with this)

* Users have to understand the filesystem (decades of experience says... they don't)

Let's not forget that there are tons of 2.x, 3.x, and 4.x devices that
probably won't get this update. This is only going to effect devices being
actively updated and new ones.

As for new ones, Flash is getting cheaper and networks are getting faster. The
fact is cloud storage is getting more and more practical (assuming carriers
don't ruin it). This may be a bit early, but it would have been impossible a
few years ago.

All in all it seems like a relatively sane decision to move the platform
further. They could have just _dropped_ SD card support. That would have also
fixed the issues.

~~~
pdonis
_I would argue usability_

I would argue that usability is in the eye of the user. I don't care if most
users don't understand what removable storage is and won't notice or care
about this change. _I_ know what it is and how to use it, so making it
effectively useless impairs _my_ usability.

 _The fact is cloud storage is getting more and more practical (assuming
carriers don 't ruin it)_

Big assumption. Also not the only one: you're assuming cloud providers can
keep your data private.

