- Forum-Beiträge: 1
06.05.2015, 12:30:29 via Website
06.05.2015 12:30:29 via Website
Hallo zusammen,
ich habe eine kleine App geschrieben, die aus einer Email ein serisalisiertes Objekt einliest bzw. einlesen soll und die darin gespeicherten Daten zur Anzeige bringen soll.
In Android Studio habe ich im gleichem Paket wie die MainActivity.java meine Klasse "Objekt" erstellt. Diese Klasse hat die gleiche Signatur und die gleiche ID wie die Klasse, die das sterilisierte Objekt erstellt.
Alles lässt sich super kompilieren und die App auch starten. Bis jetzt noch ohne Fehler. Sobald ich die Datei einlese und die Methode .readObject(); aufrufe , wird mir eine "ClassNotFoundException: Objekt" geworfen. Code siehe unten...
Könnt Ihr mir helfen? Hängt es mit Gradle zusammen? Und wenn ja, was muss ich machen?
Die Deserialisierung funktioniert, sobald ich in Eclipse etc eine Testklasse schreibe, die genauso aussieht (nur halt nicht unter Android).
Hier der Code:
Das Objekt o wird bereits als Instanzvariable deklariert (o=null). Die Methode importData liest den Dateianhang aus der Email, wenn in der Mail beim Anhang auf Anzeigen gedrückt wird, ein.
Java Code:
private void importData(Uri data) {
final String scheme = data.getScheme();
if (ContentResolver.SCHEME_CONTENT.equals(scheme)) try {
ContentResolver cr = getContentResolver();
InputStream is = cr.openInputStream(data);
ObjectInputStream objectInput = new ObjectInputStream(is);
o = (Objekt) objectInput.readObject();
txtHello.setText(o.getEigenschaft());
/* } catch (ClassNotFoundException exception) {
System.err.println("Fehler: " + exception.toString());*/
} catch (Exception e){
e.printStackTrace();
}
}
Vielen Dank und viele Grüße
Thorsten
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.