Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Cannot Write to sdcard in Android emulator

I have added this line in the AndroidManifest.xml:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

However, when I run code to write to the sdcard , I get this Error:

02-19 13:24:46.760: E/CameraTest(598): /mnt/sdcard/image.jpg: open failed: EACCES (Permission denied)

How do I solve this problem?

EDIT: I am using the Android Emulator with SDCard added.

EDIT-2: I know what the problem is now: I have called the function Environment.getExternalStorageState() and I get "removed". Anyone knows how to fix this and make the state MEDIA_MOUNTED

Thank You!

like image 506
Saher Ahwal Avatar asked Feb 19 '12 18:02

Saher Ahwal


People also ask

Why is my Android emulator on Android Studio not working?

If the emulator fails to launch due to the error vulkan-1. dll cannot be found , you probably need to update the emulator. To update the emulator in Android Studio, go to Tools > SDK Manager and install the latest stable version of Android platform.


4 Answers

Ok So I have solved this. It was a problem I faced with mounting the sdcard and that android doesn't allow spaces in the path!

Here is a good procedure to follow (if eclipse is also used) : http://www.brighthub.com/mobile/google-android/articles/33240.aspx

NOTE: in case the path has a space in it, move the sdcard image file to somewhere else and then run the emulator command with the sdcard and everything should work fine!

like image 175
Saher Ahwal Avatar answered Nov 12 '22 02:11

Saher Ahwal


It might be more simple than that. I missed to configure the emulator so that it had a SD-card. Once I added a SD-card in the device, everything went well.

Regards, Jonas

like image 27
Jonas Avatar answered Nov 12 '22 01:11

Jonas


I notice that this problem can occur if you are using an Android 6.0 emulator, Android added new permission model for (Marshmallow).

Trick: If you are targeting version 22 or below, your application will request all permissions at install time just as it would on any device running an OS below Marshmallow

like image 2
Nourdine Alouane Avatar answered Nov 12 '22 02:11

Nourdine Alouane


I cleared the cache for whichever application I was using to try and share out the picture (Pixlr) and it was fine.

like image 1
McKealty Avatar answered Nov 12 '22 00:11

McKealty