2009-05-05 18 views
3

Der Versuch, JSR 75 zu verwenden, um auf Medien zuzugreifen, die im Verzeichnis '/ home/video /' auf dem Gerät gespeichert sind. Verwenden von Blackbery JDK 4.6.1. Eine einzelne Codezeile löst eine Ausnahme "FileSystem IO Error" aus. Was wie immer extrem wenig hilfreich ist.Zugriff auf das Verzeichnis 'Media' eines Blackberrys innerhalb des JDK

fconn = (FileConnection)Connector.open("file:///home/user/videos/"+name, Connector.READ); 

Hat jemand versucht, dies zu tun? Ich kann Dateien in meinem Jar öffnen, aber scheint nicht auf den Medienordner zuzugreifen. Ich habe die Berechtigung javax.microedition.io.Connector.file.read und meine App ist signiert.

+1

Ein Vorschlag Ich habe zu verwenden ist: - System.getProperty ("fileconn.dir.videos"); Oder - System.getProperty ("fileconn.dir.videos.name"); , um den Pfad zu dem gewünschten Verzeichnis abzurufen. –

Antwort

5

Es gibt zwei Arten von Dateisystemen auf dem BlackBerry - SDCard und speichern. Sie müssen einen davon verwenden und ihn im Pfad definieren. Standardverzeichnis auf SD-Karte, auf dem Video, Musik usw. gespeichert sind: "file: /// SDCard/BlackBerry".

String standardPath = "file:///SDCard/BlackBerry"; 
    String videoDir = System.getProperty("fileconn.dir.videos.name"); 
    String fileName = "video.txt"; 
    String path = standardPath+"/"+videoDir+"/"+fileName; 
    String content = ""; 
    FileConnection fconn = null; 
    DataInputStream is = null; 
    ByteVector bytes = new ByteVector(); 
    try { 
     fconn = (FileConnection) Connector.open(path, Connector.READ); 
     is = fconn.openDataInputStream(); 

     int c = is.read(); 
     while(-1 != c) 
     { 
      bytes.addElement((byte) (c)); 
      c = is.read(); 
     } 

    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
    content = new String(bytes.toArray()); 
    add(new RichTextField(content)); 

Siehe auch
SUN Dev Network - Getting Started with the FileConnection APIs
RIM Forum - Some questions about FileConnection/JSR 75
Use System.getProperty("fileconn.dir.memorycard") to check if SDCard available
How to save & delete a Bitmap image in Blackberry Storm?

Verwandte Themen