Jetzt kostenlos registrieren. Mitglieder surfen ohne Werbung auf Android-Hilfe.de!
Zurück   Android-Hilfe.de > Android Developer > Android App Entwicklung

Problem mit Context in neuer Klasse

Das Thema "Problem mit Context in neuer Klasse" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.


Antwort

 

Themen-Optionen Ansicht
Alt 07.06.2011, 18:50   #1 (permalink)
Neuer Benutzer

Registriert seit: 07.06.2011
Beiträge: 2
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard Problem mit Context in neuer Klasse

Hi Leute,

ich habe folgendes Problem:
Ich habe mein Programm in verschiedene funktionale Klassen zergliedert und entsprechend implementiert. Eine dieser Klassen soll nun den Zugriff auf die SQLite-Datenbank regeln.
Dafür habe ich eine Klasse DataBase, in der ich wie in zahlreichen Tutorials beschrieben, mit einem SQLiteHelper den Zugriff auf die Datenbank regele.

Wenn ich nun aus einer anderen Klasse(die keine Activity ist, sondern nur von einer Activity aufgerufen wird) versuche mit dem Helper auf die Datenbank zuzugreifen muss ich einen Context für den Konstruktor übergeben. Ich hab das mit "this"/getApplicationContext() versucht.

Das Problem ist jetzt, dass ich immer eine NullPointerException anstatt eines Datenbank-Objekts zurückbekomme. Wenn ich den selben Code allerdings in einer "richtigen" Activity und nicht "Nicht-Activity-Klasse" aufrufe, funktioniert das ganze problemlos.

Ist das generell schlecht solche Sachen außerhalb einer Activity zu realisieren? Ich möchte damit eben meine DB-Anfraben von der eigentlichen GUI abkapseln, deshalb habe ich eine eigene Klasse und keine Activity verwendet.

Danke schonmal :-)
blassphemy ist offline   Mit Zitat antworten
Alt 07.06.2011, 19:39   #2 (permalink)
Android Experte
 
Benutzerbild von DieGoldeneMitte

Registriert seit: 05.02.2010
Beiträge: 609
Abgegebene Danke: 75
Erhielt 136 Danke für 119 Beiträge
Standard AW: Problem mit Context in neuer Klasse

Datenbanken und auch der Context sind nun mal etwas hochgradig nichtfunktionales, das beißt sich dann leider etwas mit deiner Programmstruktur.

Du musst Context/Application schon irgendwie zu allen Objekten durchreichen, die ihn brauchen, daran führt kein Weg vorbei. Man könnte vielleicht eine Factory basteln, die den Context oder gleich den DB Helper für dein gesamtes Programm bereitstellt. Damit hast Du dir dann aber ein Singleton eingebrockt
__________________
Kein Support via PN/eMail. Bitte das Forum benutzen - dort haben alle etwas davon.
Bei Entwicklerfragen zu abstürzenden Apps bitte immer die Ausgabe von LogCat posten.
Tipp: Zum "Danke" sagen gibt es einen Button.
DieGoldeneMitte ist offline   Mit Zitat antworten
Alt 07.06.2011, 22:52   #3 (permalink)
Neuer Benutzer

Registriert seit: 07.06.2011
Beiträge: 2
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard AW: Problem mit Context in neuer Klasse

Okay, danke.
Dann weiß ich jetzt wenigstens, dass es keine einfache Möglichkeit gibt das eleganter zu lösen. Werde dann wohl einfach den Context als Parameter übergeben.
blassphemy ist offline   Mit Zitat antworten
Antwort

Stichworte
-

Themen-Optionen
Ansicht


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
Custom Context Menu mit Rating Bar daifel Android App Entwicklung 0 18.02.2011 20:03
Permission Problem bei eigener Klasse (LocationManager) RoofFire Android App Entwicklung 4 07.01.2011 01:34
Werte aus einer Klasse einer anderen Klasse übergeben und TextView verändern funk Android App Entwicklung 1 07.12.2010 11:13
Problem mit Swype seit neuer Firmware Ozeana Samsung Galaxy S (I9000) Forum 7 01.09.2010 13:21
TabHost von Klasse auf andere Klasse zugreifen Tai Android App Entwicklung 9 11.06.2009 17:03




Du liest gerade: "Problem mit Context in neuer Klasse" unter "Android App Entwicklung" auf Android-Hilfe.de.


Powered by vBulletin®
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
© Android-Hilfe.de 2012 - All rights reserved.