Take the 2-minute tour ×
Android Enthusiasts Stack Exchange is a question and answer site for enthusiasts and power users of the Android operating system. It's 100% free, no registration required.

I have no SD card in my Android phone's SD card slot. Therefore I cannot take any photos or upload any. I have tried installing other camera apps to see if one of them might have its own storage but really none of them have worked (all need an SD card to store their files on).

Does anyody know any apps for taking pictures that do not need an SD card and have self storage? Or is there even an option?

share|improve this question
    
Oh and if possible I would like apps to be free! Thanks. –  Kirsten Stickney Jul 26 '12 at 4:05
    
Camera apps can make use of internal sdcard or internal storage. –  Sachin Shekhar Jul 26 '12 at 5:20
    
@Kristen can you elaborate by what do you mean by self storage? Do you mean internal phone memory? –  user1004985 Jul 26 '12 at 5:46
    
@SachinShekhar He most likely has one without internal sd. –  Richard Borcsik Jul 26 '12 at 6:54
    
@KirstenStickney Check with your camera apps options. Some offer a "storage" option where you can chose where to save images (internal memory or SD-Card). If your device shipped without SD-Card, it should offer such an option. But if it provides a slot for SD-cards, consider buying one (they come cheap these days): you probably do not have too much internal memory available (it would help if you provided some specs on that). –  Izzy Jul 26 '12 at 10:03
add comment

2 Answers

Every app that wants to make files publicly available to other apps on an Android device has to save to known shared location with read/write permissions to everyone (or at least the apps that need to). This designated location is /mnt/sdcard on Android and this is where the SD card or an internal equivalent (eMMC) is accessible.

Reason:

  • If multiple apps want to access some file (e.g. pictures like G+, upload service, Gallery viewer) they need appropriate rights to do so
  • Each app has its private storage section in /data/data/[App's Package Name]
  • This section is private, i.e. /data/data/[PackageName] is not accessible to any other package for security reasons
  • /mnt/sdcard or /mnt/emmc are the only sections with world read permissions (and write permissions for those apps with an appropriate permission)

Conclusion:
An app that takes pictures to save them in its private area would not be beneficial for other apps. It needs to write to /mnt/sdcard where other apps suppose shared data that is accessible to them.

Solutions:

  • Buy an SD card, it's cheap
  • I you have root, you could fake mount a tmpfs file system (mount -o tmpfs none /mnt/sdcard), this solution and all the data on saved to it will however not survive a reboot of your phone

For the record: Above said is not 100% correct but I think suitable for answering the question.

share|improve this answer
1  
Great answer! Though I should add that the said camera app could allow access to the pictures. Hypothetically. –  Richard Borcsik Jul 26 '12 at 16:51
1  
And having said that about faking a mount point: couldn't the same approach could be used to map some internal directory? If not, following your tmpfs mount, some symbolic link ("dcim") could be made to point there. This way, though the content (including the symlink) would not survive a boot, the saved images would. –  Izzy Jul 26 '12 at 19:08
    
@Izzy I think reading that directory would require the same permissions as the one it was linked to, so in this case it would be useless. However with apps that don't recognize that there are multiple storage partitions it could be rather useful. –  Richard Borcsik Jul 26 '12 at 19:26
    
You could oft couse do a BIND Mount to an int. directory, and give permissions accordingly. I just see no point in doing that instead oft just buying a cheap SD card. –  ce4 Jul 26 '12 at 20:03
1  
@RichardBorcsik see ce4s comment: having root permissions, things would be possible (you could change folder permissions as well). But I agree with ce4 on another point: it would be much easier and effordless to by (even a small) sd card for 10 bucks then to mess with the system and the good chance to break things. –  Izzy Jul 26 '12 at 21:03
add comment

I could see Camera ICS, a free app in Google Play Store.

It's feature list says "Configurable storage source (Internal/SD card)" (IMHO meaning "Internal Storage / SD-Card") which is what I think you want.

UPDATE: Please read the chain of comments for this answer. For clarification on what the developer of this application meant by word "internal", I got the following as a reply:

Thanks for asking. No, this feature is only for new devices that have /mnt/sdcard on internal memory and also have an external SD card.

Thought it will be useful for some one

share|improve this answer
    
Internal sdcard != internal storage. He most likely has an older phone without large internal memory. –  Richard Borcsik Jul 26 '12 at 6:53
    
Thanks, but I understood the '/' between the words Internal and SD card mean as 'or', which in turn was understood as internal storage. –  Narayanan Jul 26 '12 at 6:57
    
@Narayanan Maybe you edit your answer to make this more clear. I understood it the way you meant, but some people tend to overlook the '/' -- and it could in fact be misinterpreted to mean "(Internal or external) card" by people not familiar with the terms. I'll do that for you -- you may change it again if you don't like it ;) –  Izzy Jul 26 '12 at 9:51
    
Thanks. I took the string literal straight off the application's feature list in Google's play. Since I want to quote it literally, I thought of putting it with in quotes. I am sure @Richard was only trying to clean things up. –  Narayanan Jul 26 '12 at 10:04
    
I sent an email to the developer of the app to confirm and here is the reply: "thanks for asking. No, this feature is only for new devices that have "/mnt/sdcard" on internal memory and also have an external SD card." Thought it will be useful for some one. –  Narayanan Jul 26 '12 at 10:06
show 4 more comments

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.