2011-09-09 5 views
1

J'essaie de lire/écrire des fichiers sur la carte SD. J'ai essayé de le faire à la fois sur mon vrai téléphone et sur un émulateur en éclipse. Sur les deux périphériques, l'autorisation de/mnt/sdcard/ou/sdcard est seulement "d --------", ce qui, je suppose, signifie que je ne peux pas lire ou écrire.Impossible d'accéder à la carte SD

Je ne peux pas ouvrir le dossier de la "vue Fichier" dans eclipse, et aussi quand j'essaye aussi le "adb pull /mnt/sdcard/test.txt test.txt" Je reçois l'objet distant n'existe pas.

L'application android a la permission de "WRITE_EXTERNAL_STORAGE".

Voici par exemple ce que je fais lorsque vous utilisez l'application;

 try { 
      File root = Environment.getExternalStorageDirectory(); 
      Log.e(TAG,root.getAbsolutePath()); 
       File gpxfile = new File(root, "test.txt"); 
       FileWriter gpxwriter = new FileWriter(gpxfile); 
       BufferedWriter out = new BufferedWriter(gpxwriter); 
       out.write("Hello world"); 
       out.close(); 
     } catch (IOException e) { 
      Log.e(TAG, "Could not write file " + e.getMessage()); 
     } 

Je ne reçois pas d'exception. Des idées? Ce problème me tue!

+0

'Je ne peux pas lire ou écrire' vous avez raison, vous n'avez pas la permission de lire et d'écrire je suis également confronté au même problème. à ce moment-là, je n'étais pas capable de stocker dans un émulateur mais de le stocker dans un appareil téléphonique. Je pense qu'il ya quelque chose wron avec le chemin laissez-moi voir preivos et vous donner la solution –

Répondre

1

C'est par exemple où vous pouvez afficher l'image dans sdcard url de perticular si vous avez besoin la permission comme ...

permission ::

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

fichier Java ::

package com.sdcard; 

import java.io.FileOutputStream; 
import java.io.InputStream; 
import java.io.OutputStream; 
import java.net.URL; 

import android.app.Activity; 
import android.os.Bundle; 
import android.os.Environment; 

public class SdcardActivity extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     try{ 
      URL url = new URL ("http://www.coolpctips.com/wp-content/uploads/2011/05/top-30-android-games.jpg"); 
      InputStream input = url.openStream(); 
      try { 
       OutputStream output = new FileOutputStream (Environment.getExternalStorageDirectory()+"/top-30-android-games.jpg"); 
       int aReasonableSize = 1000; 
       byte[] buffer = new byte[aReasonableSize]; 
       int bytesRead = 0;; 
       try { 
        while ((bytesRead = input.read(buffer)) > 0) { 
         output.write(buffer, 0, bytesRead); 
        } 
       } finally { 
        output.close(); 
       } 
      } finally { 
       input.close(); 
      } 
      }catch (Exception e) { 
       e.printStackTrace(); 
      } 
     } 

Et un certain temps aussi face à un problème dans le dispositif que notre connexion Internet a manqué ou nous ne pouvons pas trouver sdcard

+0

Il dosnt m'aider à obtenir des autorisations de lecture/écriture – KaiserJohaan

+0

pouvez-vous l'essayer dans l'appareil? –

Questions connexes