| |||||||
Das Thema "Schnittstelle zwischen Java-Programm und Android GUI fehlerhaft" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.
|
| | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer Benutzer Registriert seit: 14.07.2011
Beiträge: 8
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
| Wir haben eine Android-GUI per Eclipse erstellt, welche ein Input bekommt und einen Output auf einem TextView liefert. Das klappt alles wunderbar. Wir haben dazu ein mehr oder minder kompliziertes Java-Programm, welches auf txt-Dateien auf der Festplatte zugreift, deren Methode ein String verlangt und einen Output liefert. Nun sollen diese beiden Programme verknüpft werden. Unser Objekt heißt Init. Unser Android-Programm heißt AULDA_4. Sobald ich in AULDA versuche, ein Init-Objekt zu erstellen, spuckt mir der Android-Emulator aus: The Application AULDA_4 (process pnlp.aulda_4) has stopped unexpectedly. Please try again. Init ist in einem anderen Package als AULDA_4. die Datei, auf die Init zugreift befindet sich in einem Verzeichnis unter C:/. Wieso stürzt die Android Application ab, wenn ein Init erstellt wird? Init erstellen läuft wunderbar, wenn das Programm mit einer Test.java gestartet wird und nicht aus Android. Nun haben wir Init geleert und das Programm vor dem Absturz bewahrt. Es kann also nicht daran liegen, dass etwas externes erstellt wird, sondern an dem, das Init tut. Muss man etwas dabei beachten (Manifest, import?), wenn man Java Applications ausführt oder wenn man auf Dateien zugreift, die auf der Festplatte gespeichert sind? Wenn eine Test.java in seiner main das gesamte Programm ausführen kann, wieso kann die Android App nicht darauf zugreifen und das Programm ausführen? Ich hoffe, ihr könnt uns helfen... Bei Rückfragen einfach posten und wir erklären euch weiteres. Liebe Grüße, Francesca, Arne und Görkem |
| | |
| | #2 (permalink) |
| Android Experte Registriert seit: 23.01.2010
Beiträge: 882
Abgegebene Danke: 74
Erhielt 149 Danke für 120 Beiträge
|
Wenn ich das richtig verstanden habe, führst die "Aulda" ja auch auf dem Emulator/Phone aus? Wenn ja, wie soll das Programm dort "C:\" finden?
|
| | |
| | #3 (permalink) | |
| Android Guru Modell: T-Mobile G1, Nexus One, Samsung Galaxy Tab 10.1, Samsung Galaxy Nexus Registriert seit: 04.05.2009
Beiträge: 1.599
Abgegebene Danke: 128
Erhielt 210 Danke für 193 Beiträge
| Zitat:
Ihr programmiert das Ding unter Windows, das ist schön aber wollt es jetzt in einem Linux ausführen. Das kann schlicht nicht funktionieren wenn ihr harte Pfade nutzt und so liest es sich wenn ihr von "C:/" sprecht.
__________________ Follow/Add/Circle/Whatever me on Google+ Solitaire HD, ein Solitaire optimiert für Honeycomb. | |
| | |
| | #4 (permalink) |
| Neuer Benutzer Registriert seit: 14.07.2011
Beiträge: 8
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
|
Jap... Das haben wir uns dann auch irgendwann gefragt. Neuer Versuch mit: f=new FileReader("sdcard"+File.separatorChar+"Data"+File .separatorChar+"Arpa - Sampa Table.txt"); Die daten sind per Eclipse DDMS in der sdcard. Nun kommt nicht mehr diese Fehlermeldung, das Programm reagiert einfach nicht mehr. Schwarzer Bildschirm bis die Meldung: Activity AULDA_4 is not responding. Habens auch damit versucht: File sdcard = Environment.getExternalStorageDirectory(); try{ f=new FileReader(sdcard.getAbsolutePath()+File.separator Char+ "Data"+File.separatorChar+"Arpa - Sampa Table.txt"); etc. Nun wissen wir leider wirklich nicht weiter. Ist die directory falsch gesetzt? |
| | |
| | #5 (permalink) |
| Neuer Benutzer Registriert seit: 14.07.2011
Beiträge: 8
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
|
Oh. Init an sich braucht auf meinem PC einige Sekunden, um initiiert zu werden. Kann es sein, dass das Handy bzw der Emulator einfach zu wenig Prozessorleistung besitzt, als dass es Init initiieren könnte, bevor Android wegen fehlendem respond meckert?
|
| | |
| | #6 (permalink) |
| Ehren-Mitglied |
Es beschwert sich nicht, weil es zu lange dauert, sondern weil es abstürzt. "Application has stopped unexpectedly" heißt Exception, Näheres gibts mit logcat.
__________________ CyanogenMod 7 Nightly - AmonRa Recovery 2.0 - Nexus One Kein Support via PN und E-Mail. Bitte das Forum nutzen. "Es ist Mode geworden, die Freiheitsrechte des Bürgers in den Mittelpunkt zu stellen." - Siegfried Kauder |
| | |
| | #7 (permalink) | ||
| Android Guru Modell: T-Mobile G1, Nexus One, Samsung Galaxy Tab 10.1, Samsung Galaxy Nexus Registriert seit: 04.05.2009
Beiträge: 1.599
Abgegebene Danke: 128
Erhielt 210 Danke für 193 Beiträge
| Zitat:
Zitat:
Hier muss man nebenläufig Arbeiten, sprich mach nen Thread auf oder einen AsyncTask und greif darin auf die Datei zu. Darf man Fragen was genau ihr macht? Klingt für mich nach Studentenprojekt für die Uni?
__________________ Follow/Add/Circle/Whatever me on Google+ Solitaire HD, ein Solitaire optimiert für Honeycomb. | ||
| | |
| | #8 (permalink) |
| Neuer Benutzer Registriert seit: 14.07.2011
Beiträge: 8
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
|
Genau so etwas ist das ^^ Es ist eine App, die helfen soll, englische Wörter, die deutsch ausgesprochen wurden zu erkennen. Input von 'z I s' sucht anhand einer transition table und Werten für Ähnlichkeiten der Aussprachen nach Lautworten, die sich ähnlich anhören, beachtet dabei natürlich typisch deutsche aussprachefehler, streicht alles, was kein echtes Wort ist und gibt zum Schluss 5 Wörter mit den dazugehörigen values aus. So wird aus 'z I s' letzendlich this ^^ Dazu liest er u.A. eine txt-datei ein, die 3mb groß ist, das SEMPA dictionary enthält und mehrere tausend Einträge hat.. Wird wohl tatsächlich daran hapern. Na darüber wird sich unser Dozent aber sehr freuen... ^^ Kann ich die bereits angefertigten xml-Dateien für irgendwas benutzen? Würde gerne eine Art App präsentieren - wird dann wohl ein Java Applet werden -, ohne die gesamte gui nochmal von vorne programmieren zu müssen :/ Eine Idee? @ Kranki: Er wirft kein "Application has stopped unexpectedly" mehr, wie in den Posts beschrieben. Danke trotzdem ^^ |
| | |
| | #9 (permalink) |
| Android Guru Modell: T-Mobile G1, Nexus One, Samsung Galaxy Tab 10.1, Samsung Galaxy Nexus Registriert seit: 04.05.2009
Beiträge: 1.599
Abgegebene Danke: 128
Erhielt 210 Danke für 193 Beiträge
|
Naja, du kannst ja eine App machen, nur musst du für längere Arbeiten das ganze von der GUI entkoppeln. Das müsstest du auch bei einem Applet machen, sonst reagiert auch hier die GUI nicht. Es gibt zwar keinen Fehler bei einem Applet, aber es wäre trotzdem unbenutzbar solange die Verarbeitung dauert. Ich würde mir überlegen ob die XML Datei nicht in eine Datenbank überführt werden kann und soll, die Abfragen hier wären deutlich performanter. Außerdem ist die Frage wie ihr die Datei bisher einlest eine 3MB XML würde sich im Speicher ziemlich aufblähen wenn ihr DOM benutzt. Wen ihr es möglichst einfach haben wollt nehmt die Implementation wie sie gerade ist und startet einen AsyncTask mit der Verarbeitung der Datei. developer.android.com wird hilfreich sein
__________________ Follow/Add/Circle/Whatever me on Google+ Solitaire HD, ein Solitaire optimiert für Honeycomb. |
| | |
| | #10 (permalink) |
| Neuer Benutzer Registriert seit: 14.07.2011
Beiträge: 8
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
|
Hmz. Ich lese mir gerade das hier durch: Painless Threading | Android Developers Nur checke ich nichts ^^ Da ist die rede von einem return Wert bei onPostExecute, aber ich will gar nichts returned haben, mein Init soll einfach nur initiiert werden, ohne irgendwas zu returnen. Das verwirrt mich gerade viel zu sehr. Soll ich dann Init zu einer AsyncTask machen? Init an sich ist ja nichtmal eine task. Init führt nichts aus. Init lädt erstmal nur die Textdatei. Und dabei gibt er nichts zurück. Mh... Hast du gerade so viel Langeweile, dass du dich auf den steinigen Weg, mir zu sagen, was ich tun soll begeben würdest? ^^ |
| | |
![]() |
|
| Themen-Optionen | |
| Ansicht | |
| |
| ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| JavaScript/XML-Programm nach JAVA portieren? | menseken | Android App Entwicklung | 12 | 18.05.2011 10:18 |
| Java - Unterschiede zwischen PC und Android? | Geograman | Android App Entwicklung | 26 | 09.03.2011 15:15 |
| Java und Android | Itze73 | Android Allgemein | 8 | 13.01.2011 19:24 |
| Android als Schnittstelle zwischen Smartphone und Auto | H1Chris | Android Allgemein | 11 | 26.07.2010 16:15 |
| Schneller Wechsel zwischen Android GUI und Sense möglich (mittels Root?) | hassrian | Root / Hacking / Modding für HTC Desire | 5 | 01.05.2010 12:07 |