Ich habe vor kurzem eine Android-App mit FOP kompiliert, um XML in eine PDF-Datei zu konvertieren. Ich glaube jedoch nicht, dass die FOP JAR-Dateien unter Android funktionieren sollen. Gibt es Versionen von FOP für Android? Oder einen anderen XML-zu-PDF-Konverter, den ich in meiner App verwenden könnte, anstatt eine Verbindung zu einem FOP-fähigen Server im Internet herzustellen?
Ich habe versucht, fop.jar und die Datei xmlgraphics.jar einzubinden, aber selbst mit den zu meinem Projekt hinzugefügten fehlschlägt der Aufruf von FopFactory.newInstance()
.
Hier ist mein Code-Snippet für den Button-Klick, der FOP aufruft:
%Vor% Der Compiler gibt mir auch eine Menge Dxwarning: Ignoring InnerClasses attribute...
-Fehler. Hier ist der Fehler, wenn ich auf die Schaltfläche klicke, um die PDF zu erstellen:
Mit Android können Sie nicht einfach eine .jar aus einer Java-Bibliothek nehmen und in einer Android-Anwendung verwenden. Android verwendet die Dalvik JVM (http://en.wikipedia.org/wiki/Dalvik_(software)), die nicht zu 100% mit der vollständigen API der Java SE API kompatibel ist und stattdessen nur eine Teilmenge der API unterstützt. Aus diesem Grund sind viele der Java-Bibliotheken, die Sie möglicherweise verwenden, wie FOP, nicht kompatibel mit Android und erfordern eine Spezialisierung, bevor solche Bibliotheken auf einem Android-Gerät ordnungsgemäß funktionieren. Viel Glück.