2016-04-25 4 views
2

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.

Antwort

Verwandte Themen