1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

Datenbankverbindung aus normaler Klasse

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von No3x, 28.03.2012.

  1. No3x, 28.03.2012 #1
    No3x

    No3x Threadstarter Neuer Benutzer

    Beiträge:
    5
    Erhaltene Danke:
    0
    Registriert seit:
    19.01.2012
    Hallo! Ich weiß nicht wie ich aus einer normalen Klasse (darunter verstehe ich eine einfache Java-Klasse die nichts erbt) eine Datenbankverbindung aufbaue über den SQLiteOpenHelper.
    Dieser Construcor benötigt in jeder Form einen Context. Der Context wird jedoch nur von den hier unter Known Direct/Indirect Subclasses aufgelisteten Klassen vererbt.
    Und nun? Woher den Context nehmen?

    Erläuterung "normale Klasse":
    Code:
    public class RecordsHandler   { }
    
    mein bisheriger Versuch:
    Code:
    public class RecordsHandler   {
        private static final String LOG_BREADCRUMB = "RecordsHandler";
        
        public static List<Record> recordList = new ArrayList<Record>();
        private static RecordsDatabase recordsDatabase = new RecordsDatabase(null);
        
        public static void makeList() {
            recordsDatabase.open();
            recordList = recordsDatabase.getAllRecords();
            Log.d(LOG_BREADCRUMB, recordList.toString());
        }
    }
     
    Zuletzt bearbeitet: 28.03.2012
  2. v Ralle v, 29.03.2012 #2
    v Ralle v

    v Ralle v Android-Lexikon

    Beiträge:
    913
    Erhaltene Danke:
    199
    Registriert seit:
    27.08.2010
    Du musst den Context übergeben, anders klappt es nicht. Du kannst auch statisch irgendwo dir den ApplicationContext hinterlegen. Den allerdings mit Vorsicht genießen. Bei einem Datenbankzugriff würde er aber Sinn machen, da man so eventuelle Memoryleaks auch umgeht.
     

Diese Seite empfehlen