SecurityException beim lesen/schreiben eine Datei

Status
Nicht offen für weitere Antworten.

lol

Mitglied
Umgebung: Symbian mit UIQ3
Folgendes Szenario:
Möchte den Programmverlauf während der Development-Phase in einer Datei loggen.

mittels FileConnection fc =... öffne ich eine Connectio. Dabei werde ich vom System gefragt, ob ich das Lesen der Datei "file///Ms/..." erlauben möchte. Mit "Ja" geht's weiter.
Ich frage nach der Existens der Datei, wieder Sicherheitsfrage vom System, mit "Ja" gehts weiter.

Nun kommt das Problem: Möchte ich mit "fs.canRead()", oder "fc.canWrite()", oder einen DataOutputStream öffnen, und ich diese Sicherheisabfrage wieder mit "Ja" beantworte, wirft das Midlet eine securityException.
- Im Emu läuft es brav, andere Devices zum Testen habe ich nicht.
Möchte ich die Berechtigungen im Sicherheitsmenü für das Midlet ändern, werden meine Einstellungen NICHT übernommen. "Festgenagelt" sind dort Immer Benutzberechtigungen:Automatischer Start und Interaktionsmodus:pro Sitzung
 
G

Gast

Gast
und was genau ist jetzt deine frage? ;-)

also ich kenne kein gerät, bei dem sich die sicherheitsabfragen zu fileconnection api modizifieren oder gar dauerhaft abschalten lassen. das hängt offiziell mit der sicherheit zusammen (inoffiziell allerdings, damit dass zertifikatausteller a la thawte mehr geld scheffeln können ;-)).
 
G

Gast

Gast
Kurz und knapp:

Ist das Problem, dass ich keine Datei auf dem Symbian/UIQ3 anlegen kann ein spezifisches Symbian/Modell-Problem (m600i), oder ist ein ein generelles Sicherheitsproblem seitens Java?
 

Backwardsman

Bekanntes Mitglied
also ich gehe mal davon aus, dass dein gerät/symbian die fileconnection api (jsr 75) unterstützt.

prinzipiell sollte das schreiben und lesen von dateien möglich sein, es kann jetzt zb. ein programmierfehler deinerseits sein, es kann sein, dass du die datei von einer location lesen/schreiben willst, auf der du bzw. java keine berechtigungen hat, etc.!? funktioniert im emulator alles fehlerlos?

an deiner stelle würd ich mir auf dem gerät mal schnell einen kleinen j2me dateisystem-browser schreiben oder runterladen (gibts z.b. bei sony ericsson dev). einfach mal um zu sehen, in welche ordner nur mit j2me reinkommst.

besonders wichtig beim umgang mit der jsr 75 ist die pfadangabe der dateien ordner und viele geräte habena auch probleme damit wenn die operationen nicht in separaten threads ablaufen... ist also im moment noch nicht so ganz klar zu sagen, woran es bei dir hängt.
 
G

Gast

Gast
Super für die Hinweise, danke.
Ich bin gerade unterwegs, werde am späteren Nachmittag mit genaueren Informationen aufwarten können.
 
G

Gast

Gast
Im Emu läuft die Anwendung ganz brav durch.
Ich konnte die Gelegenheit ergreifen und die Anwendung auf einem anderen Gerät, leider wieder Symbian, testen. - Das gleiche Verhalten.
Folgende Kernzeilen enthält die Komponente:
---
Enumeration storagedevices = FileSystemRegistry.listRoots();
--- 1. Variante Anfang
while( storagedevices.hasMoreElements() ){
//Liste alle Speicherorte in einer Form auf
//hier bekmme ich jedesmal eine Sicherheitsabfrage, ob das Lesen erlaubt werden soll, also alles cool
}
---1. Variante Ende
---2.Variante Anfang
FileConnection fc = ( (FileConnection)
Connector.open("file:///" + storagedevices.nextElement().toString() + "/logfile.txt" );
if(!fc.exists()){
fc.create();
}
---2. Variante Ende
//Hier liegt das Problem. Die FileConnection wird noch geöffnet, da ich einen Sicherheitshinweis bekomme, ob die Datei gelesen werden darf. Danach kommt die Sicherheitsabfrage, angestoßen durch "exists()". - Diese mit "Ja" beantwortet, schießt das Programm ab. Datei wurde nicht angelegt, Programm geschlossen.

Es kann evtl. sein, kleine Tippfehler im code sind, da ich vergessen habe, das Repository upzudaten komme ich nicht an den Originalcode heran, also seht da bitte drüber hinweg ;)
 

Backwardsman

Bekanntes Mitglied
eins was mir grad noch einfällt... weiß nicht, ob es was bringt, aber übergeb auch einfach mal lese und schreib rechte...

Code:
FileConnection fc = ( (FileConnection) Connector.open("file:///" + storagedevices.nextElement().toString() + "/logfile.txt", Connector.READ_WRITE);
 

lol

Mitglied
Ok, nach ein paar Tagen Abstinenz, weitere Fortschritte und Informationen:

In die Root-Verzeichnisse des Handy-Flashs und der Speicherkarte darf ich nicht nicht schreiben/lesen. Jedoch in die vom Handy erstellten Ordner: documents/music/etc
Selbsterstelle Ordner im Root sind ebenfalls Tabu
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
R Android Löschfunktion beim Wischen Android & Cross-Platform Mobile Apps 10
W Rand ändern beim ImageView bei Picasso Android & Cross-Platform Mobile Apps 1
Arif Android Android Studio: Fehler beim Einbinden fremder Bibliothek? Android & Cross-Platform Mobile Apps 2
L App stürtzt ab beim öffnen Android & Cross-Platform Mobile Apps 1
JavaWolf165 Android Fehler beim Speichern/Downloaden einer Datei Android & Cross-Platform Mobile Apps 2
S Android Probleme beim Verbinden mit einer HTTPS Seite Android & Cross-Platform Mobile Apps 4
M Android Fehler beim Parsen. Android & Cross-Platform Mobile Apps 29
V Android Fehlermeldung beim Öffnen von Eclipse nach Installation der Android Erweiterung Android & Cross-Platform Mobile Apps 4
M Error beim drücken der Zurück-Taste am Handy Android & Cross-Platform Mobile Apps 2
S Fehler beim Textdatei einlesen!? Android & Cross-Platform Mobile Apps 7
A Fehlermeldung beim ändern der ViewGroup. Android & Cross-Platform Mobile Apps 6
H Buttons färben sich mit, beim Hintergrund ändern Android & Cross-Platform Mobile Apps 3
A Mehrere Fehler beim Compilieren Android & Cross-Platform Mobile Apps 4
G Problem beim Rendern von 3D-Objekt Android & Cross-Platform Mobile Apps 0
L Android OutOfMemory beim erneuten Starten der App Android & Cross-Platform Mobile Apps 2
N Android Retain Dialog verschwindet beim drehen Android & Cross-Platform Mobile Apps 4
B Android GameLoopThread stürzt beim 2ten start der App ab? Android & Cross-Platform Mobile Apps 4
K Nullpointer beim Löschen von Datenbankeintrag, je nachdem wo der Befehl steht Android & Cross-Platform Mobile Apps 5
S Java ME Exception beim Abspielen von Musik Android & Cross-Platform Mobile Apps 6
G Fehler beim Import "Invalid project description" Android & Cross-Platform Mobile Apps 2
G unterschiedliches Verhalten beim Installieren des App auf dem Smartphone Android & Cross-Platform Mobile Apps 3
K Android schwarzer Bildschirm beim Rendern von Text und Dreiecken Android & Cross-Platform Mobile Apps 9
DaniSahne96 Problem beim Appdebuggen auf Smartphone Android & Cross-Platform Mobile Apps 3
P Android Problem beim Widget - Denkfehler ? Android & Cross-Platform Mobile Apps 2
A Fehler beim Starten eines Intents - alles in einer Klasse funktioniert... Android & Cross-Platform Mobile Apps 4
J Android Verhalten beim Hinzufügen neuer Views? Android & Cross-Platform Mobile Apps 6
S Android Fehler beim Anzeigen meines Apps auf Galaxy Tab Android & Cross-Platform Mobile Apps 4
G Beziehung von THIS beim Imageadapter und AsyncTask Android & Cross-Platform Mobile Apps 7
V [Java] und [JavaME] ClientServer StreamConnection . Problem beim lesen / schreiben Android & Cross-Platform Mobile Apps 2
R Ein Problem beim ausführen von folgendem Quelltext Android & Cross-Platform Mobile Apps 11
N Error in HTTP operation beim KXML parsen Android & Cross-Platform Mobile Apps 7
A Problem beim Subtrahieren eines Double von einem Double Android & Cross-Platform Mobile Apps 5
G fehldermeldung beim klicken auf "build" Android & Cross-Platform Mobile Apps 8
F Problem beim Erstellen der Jar File Android & Cross-Platform Mobile Apps 4
S createPlayer beim Entwickeln Android & Cross-Platform Mobile Apps 6
T Lesen / Schreiben einer Textdatei - SD-Karte Android & Cross-Platform Mobile Apps 42
W .txt File aus dem Speicher des Smartphone lesen Android & Cross-Platform Mobile Apps 15
V Bytes (Wertebereich 0-255) über BLE empfangen,lesen und speichern Android & Cross-Platform Mobile Apps 1
B Android XML File ein lesen und menü erzeugen Android & Cross-Platform Mobile Apps 1
X Textdatei aus Assets lesen Android & Cross-Platform Mobile Apps 5
B Java ME Textdatei zeilenweise lesen? Android & Cross-Platform Mobile Apps 5
C 2 kleine Probleme (Datei lesen, String durchsuchen) Android & Cross-Platform Mobile Apps 16
R Lesen und schreiben von Daten. Android & Cross-Platform Mobile Apps 2
S Variable Anzahl von Bytes aus einer Datei lesen Android & Cross-Platform Mobile Apps 2
B Textdatei auf Handy erstellen / lesen / schreiben? Android & Cross-Platform Mobile Apps 2
thE_29 Vor dem ersten Posten bitte lesen! Android & Cross-Platform Mobile Apps 0

Ähnliche Java Themen

Neue Themen


Oben