Android 4.4 Kitkat and second external storage

There has been written a lot about Kitkat external sdcard write permission but it's not clear to me how it works. Unfortunately I don't have Kitkat device with sdcard slot. Question is, can I write to secondary external storage at all? Based on the docs.

Apps must not be allowed to write to secondary external storage devices, except in their package-specific directories

If in understand it, If I don't have permission I can write to the app specific folder on primary external storage /sdcard/Android/data/package/... and to the app specific folder on secondary external storage /extSdcard/Android/data/package/...

and with WRITE_EXTERNAL_STORAGE I can write to all locations on primary external storage /sdcard/* but I can't write to any location on secondary external storage (except app specific folder)?

Thanks for all answers!

Answers


Your analysis is correct, other than assuming that primary external storage is /sdcard (the exact path varies by device, OS level, and user account for Android 4.2+ tablets).

Here are some blog posts that I wrote recently on external storage and removable ("secondary external") storage.


I know this topic is old but this may help. You should use this method.

System.getenv();

see project Environment3 to access all storage that is connected to your device.

https://github.com/omidfaraji/Environment3


Need Your Help

iPhone App backgrounding with MPMusicPlayer

iphone ios4 mpmusicplayercontroller backgrounding

I'm working on an iPhone iOS4 application that incorporates playing music from the user's iPod library. I also want to keep track of what songs have been played and be able to change the song rand...

Either, Try, and Validation in Scala

scala error-handling monads scalaz

I am confused with Either, Try, and Validation of scalaz. None of them seems to do what I need. What I need is a simple monad Result[E, R] where E is an error type and R is an result type.