Kleine Einkaufslist Pro erschienen / Little Shoppinglist Pro released

Die Liste ist jetzt endlich fertig und steht bereits im Markt. Wie bereits angekündigt nicht mehr frei.
Gleichzeitig gibt es ein Update der freien Liste, welches eine sortierfunktionalität mitbringt. Hier ist auch ein Werbebanner auf die Pro enthalten, welches über die
Einstellungen aber deaktiviert werden kann. Die Seite hier wird in absehbarer Zeit durch diese hier ersetzt. Die Inhalte werden so gut es geht übernommen.

Hier noch der Marktlink auf die Pro…

Available in Android Market

Kleine Einkaufsliste – einige Anmerkungen und Änderungen…

Die neue Version der kleinen Einkaufsliste wird es diesen Monat leider nicht mehr geben. Momentan ist meine Zeit arg eingeschränkt und ich will auch nichts unfertiges raushauen.
Die neue Version wird auch nicht als Update der alten Einkaufsliste kommen sondern als eigenständige Anwendung. Der Hauptgrund ist, dass die neue Liste leider nicht mehr frei sein wird. Dafür steckt einfach zuviel Aufwand drin. Der Preis wird sich wahrscheinlich bei 79ct einpendeln und die Erlöse gehen an mein kleines Töchterchen :-)
Die Aufsplittung hat auch den Vorteil, daß ich den zufriedenen Nutzern der alten Liste diese nicht wegnehme. Einige der Neuerungen kommen auch in die alte Liste rein. Es ist also nicht so, dass die alte Liste nicht mehr gepflegt wird :-)

So und nun gehts weiter im Text…

Entwicklertagebuch: Was es nicht alles gibt :-)

Die Entwicklung der Einkaufsliste geht gut voran. Die XML-Import-Export-Funktion ist fast fertig. Einige kleinere Dinge stören mich noch, danach gehts dann an die Finalisierung der Layouts und des Designs.

Bei der Implementierung bin ich auf folgendes gestossen :-)

Anforderungen an die kleine Einkaufsliste

Hier mal eine Sammlung aller Anforderungen, die über Marktkommentare oder Kommentare hier im Blog reingekommen sind:

- Produktgrupppen
- CSV-Import/Export
- Produktgruppen auf-/zuklappbar
- Automatisches Laden einer Liste
- Zuordnung der Artikel zu einem Geschäft
- Original-Artikel löschbar
- Sortierung
- Mehrere Listen

Sollte eigentlich mit der nächsten Version alles abgedeckt sein. Einen CSV-Export wird es wohl nicht geben, aber einen XML-Export werde ich einbauen, da dort dann auch die Bilder aus der Datenbank exportiert werden können.

Falls noch weiteres gewünscht wird, kann ein Kommentar hier nicht schaden ;-)

Kleine Einkaufsliste / Little Shopping List – work in progress…

Um die Wartezeit zum Release etwas angenehmer zu gestalten hier ein paar Screenshots wie es aktuell aussieht.
Layout/Design ist noch nicht final. Das kommt am Schluß :-) Kamera und Gallerie-Integration funktioniert ganz gut. Ebenso werden die Bilder jetzt in der Datenbank abgelegt. Das macht die App robuster gegen Veränderungen auf der SD-Karte ;-) erfordert aber auch eine gute Import-/Export-Funktion. Das Export-Grundgerüst steht schon, der Import kommt noch. Aktuell jage ich zwei Problemchen beim Ändern der Ausrichtung sowie beim Sortieren hinterher. Tricky.
Die eigentliche Einkaufsliste zum Wegklicken ist auch noch nicht auf das neue Datenmodell umgestellt. Erst die Infrastruktur, dann das Haus ;-)

Und so siehts aktuell aus…

Entwicklertagebuch: ManagedQuery unter Honeycomb…

sollte man tunlichst vermeiden. Was bis einschliesslich Android 2.3.4 problemlos funktionierte, klappt nun unter Android >= 3.0 nicht mehr so gut. Wechselt man die Aktivität und ruft per Zurück wieder die Aktivität auf, dann kam es in meiner App zu einer IllegalStateException. Ursache war der durch die managedQuery bereits geschlossene Cursor.
Mit Hilfe des Internets habe ich da herausgefunden, dass man unter Honeycomb die managedQuery vermeiden sollte. Dort soll man besser auf den CursorLoader setzen.
Dabei ist aber zu beachten, dass der CursorLoader aktuell einen ContentProvider zum Zugriff auf die Daten benötigt.
Mit einem ContentProvider hatte ich meine App gerade ausgestattet.
Alles was ich zu tun hatte war also Cursor c = managedQuery(AndWOLEntry.CONTENT_URI, columns, null, null, null); gegen CursorLoader cursorLoader = new CursorLoader(this, AndWOLEntry.CONTENT_URI, columns, null, null, null);c = cursorLoader.loadInBackground(); auszutauschen.
Vorher frage ich noch auf die Androidversion ab und nutze den entsprechenden Code.
Danach gehörte die IllegalStateException der Vergangenheit an :-)

Entwicklertagebuch: Content Provider

Kein großes Tutorial hier, davon gibt es genug. Die Notepad-Beispiel-App von Google zeigt wie es funktioniert.
Aber: Ich habe doch gestern über eine Stunde versucht einen eigenen Content Provider zu nutzen. Im Testprojekt mit jUnit lief der Datenzugriff problemlos.
Aber im eigentlichen Projekt lief es nicht. Der Provider konnte nicht gefunden werden.
Über eine Stunde debuggt, alles mögliche angepasst, nix hat funktioniert.
Irgendwann ist das Brett vorm Kopf dann runtergefallen und ich hatte den Fehler ausgemacht:
Das Content-Provider-Tag darf nicht außerhalb des Application-Tags in der Android-Manifest.xml liegen :o )