Ich kam über eine Ausnahme mit zwei Geräten ein Honeywell CT50 und ein Zebra TC75. Beide laufen auf einer 4.x Android-Version, wo ich versuchte, die printf
SQLite-Funktion zu verwenden.Kann ich mich auf die integrierten Funktionen des SQLite in meinem Android eviroment verlassen?
Die Ausnahme:
android.database.sqlite.SQLiteException: keine solche Funktion: printf (Code 1):, beim Kompilieren: xxx
Die zugehörige Abfrage:
SELECT
rowid,
printf('GPS;%s;%f;%f;%f;%f', Timestamp, Longitude, Latitude, Speed, Bearing)
FROM CapturedLocation;
Auf verschiedenen Geräten z Nexus, Galaxy, Sony, Opticon funktioniert alles wie vorgesehen.
Grundsätzlich frage ich mich, ob ich mich auf die Verwendung von SQLite-Funktionen verlassen kann und dass sie wie in der offiziellen SQLite-Dokumentation beschrieben implementiert sind oder ob es herstellerspezifisch ist und ich hoffe, dass Hersteller SQLite vollständig implementieren.
In meiner aktuellen Implementierung handhabe ich die Ausnahme mit einem try/catch-Block, aber ich frage mich, ob es andere Lösungen für dieses Problem gibt.