Quellcode mit File Connection Methoden (JSR-75) wie testen?

In Eclipse benutze ich den JP-8 Phone Emulator. Das funktioniert normalerweise ganz gut, aber beim Test von File Connection Methoden bin ich bisher erfolglos. Kann der o.g. Emulator von Sony Ericsson überhaupt die Memory Card eines Phones emulieren?
Mache ich etwas falsch? Gibt es eine andere Lösung für den Test?
Der Weg, direkt im Phone zu testen, ist ja recht umständlich.
Ich bitte euch um Hilfe.

Inzwischen hab ich herausgefunden, dass der JP-8 Emulator von Sony Ericsson im Pfad
…\WTK2\appdb\SonyEricsson_JP8_240x320_Emu\filesystem\root1…
Dateien abspeichert.

Um z.B. Daten im Unterverzeichnis “SK_Daten” als Textdatei “Daten.txt” mittels File Connection zu speichern,
muss das Unterverzeichnis “SK_Daten” vorher angelegt sein und als url
url = “file:///root1/SK_Daten/Daten.txt” verwendet werden.

Die Dateien bleiben auch nach dem Verlassen des Emulators erhalten, werden also “persistent” gespeichert.

Aber Achtung, vor dem Erstellen der endgültigen jad/jar-Dateien für das Ziel-Phone muss die url passend verändert werden. Bei Sony Ericsson wird die Speicherkarte über url = “file:///E:/…” angesprochen.

Joa, damit hatte ich auch immer meine Problemchen - bis man mal rausgefunden hat wie alles genau läuft.

Wenn du dein Programm wirklich kommerziell vertreiben möchtest, dann solltest du dir um ein ordentliches Zertifikat (mehrere 100 Euro gedanken machen), da deine Anwendung sonst bei jedem Zugriff auf das Filesystem den User um Erlaubnis bittet.

Wenn der Sony Ericsson Emulator plötzlich keine FileConnection mehr mag — IN USE

Hier ein kleiner Hinweis, der schlaflose Nächte vermeiden kann:
Es ist möglich, mehrere Instanzen des Emulators zu starten. Aber Zugriffe auf das Filesystem sind nur mit einem Emulator möglich. Wahrscheinlich wollten die Programmierer vermeiden, dass sich die Instanzen beim Zugriff auf das Filesystem ins Gehege kommen. Beim Start der ersten Instanz wird ein File namens in.use angelegt und beim Beenden wieder gelöscht. Stürzt der PC bei geöffnetem Emulator ab, so verbleibt diese Datei in.use bestehen. Beim Neustart des Emulators dann das Fehlverhalten. Einfach in.use löschen — und die Welt ist wieder heil.

Find ich eigentlich ne recht gute Sache. So einen Mechanismus gibts ja auch beim Eclipse-Workspace :slight_smile: .