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

SQLite debuggin, speicherort

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von derdiedas, 20.03.2010.

  1. derdiedas, 20.03.2010 #1
    derdiedas

    derdiedas Threadstarter Neuer Benutzer

    Beiträge:
    4
    Erhaltene Danke:
    0
    Registriert seit:
    20.03.2010
    Hallo Zusammen,

    ich schreibe gerade eine Android-Anwendung, hierbei lege ich daten in der sql-db ab. Hierbei hat sich wohl ein Fehler eingeschlichen. Um nachzuvollziehen ob überhaupt was in der DB- gespeichert wurde, würde ich gern mal direkt in die DB des emulierten Phones schauen, weiß aber nicht wie ich hierauf zugreifen kann. Am liebsten würde ich mit dem sqlite browser auf die DB zugreifen, konsole würde aber auch reichen.

    habe in einema anderen Beitrage gelesen, dass man folgendermaßen auf die DB zugreifen kann. Ich habe versucht mit hilfe des Terminals auf die DB zuzugreifen, aber schon bei ersten Befehl bekomme ich die meldung "permission denied"

    adb shell
    su
    sqlite3 data/data/<packagename>/databases/<dbname>
    select * from <tablename>;
    .quit


    Wäre nett wenn Ihr mir erklären würdet wie ich auf die DB zugreifen kann und wo sie genau liegt bzw. wie ich es überprüfen kann ob sie überhaupt im oben genannten package liegt.

    Vielen Dank im vorraus.
     
  2. swordi, 20.03.2010 #2
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    um das zu machen braucht man glaub ich root rechte, die hat man normalerweise nicht

    von daher wirds schwer
     
  3. so.r.u, 13.04.2010 #3
    so.r.u

    so.r.u Neuer Benutzer

    Beiträge:
    22
    Erhaltene Danke:
    0
    Registriert seit:
    11.02.2010
    Mit dem von dir geposteten Befehl komme ich schon in die Datenbank, allerdings nur im Emulator, nicht auf einem (gerooteten) Gerät.

    Es gibt z.B. auch den Befehl ".databases", der dir alle vorhandenen Datenbanken auflistet, vielelicht ist deine gar nicht angelegt worden? Obwohl dann sollte kein "Permission denied" kommen, bei mrig eht allerdigns auf dem Emulator alles ohne root-Rechte.
     
  4. Fr4gg0r, 13.04.2010 #4
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    Beiträge:
    2,506
    Erhaltene Danke:
    447
    Registriert seit:
    21.12.2009
    Ich habs zwar nur gelesen, aber Motorlas Dev Studio soll einen eingebauten SQLite Browser haben.
     
  5. Kranki, 13.04.2010 #5
    Kranki

    Kranki Ehrenmitglied

    Beiträge:
    3,831
    Erhaltene Danke:
    814
    Registriert seit:
    19.07.2009
    Tablet:
    Samsung Galaxy Tab 3 7.0 Lite
    Android hat auch Verzeichnisse im Path, auf die man ohne root keinen Zugriff hat, und das verursacht auch ein "permission denied" statt einem "not found", wenn man nicht existierende Befehle eintippt.
    Ich fang daher mal ganz von vorn an: "Mit Hilfe des Terminals" ist aber kein Terminal auf dem Handy selbst, in das du "adb shell" eintippst?
     
  6. so.r.u, 15.04.2010 #6
    so.r.u

    so.r.u Neuer Benutzer

    Beiträge:
    22
    Erhaltene Danke:
    0
    Registriert seit:
    11.02.2010
    Ich hab mir mal das MOTODEV Developer Studio runtergeladen (von MOTODEV > Documentation & Tools > MOTODEV Studio > Download MOTODEV Studio for Android ), bzw. das Plugin für Eclipse (was glaub ich aufs selbe herauskommt).

    Und man kommt in Datenbanken und kann sich auch den Inhalt anzeigen lassen. Bisher hab ich das allerdings nur für Anwendungen auf dem Emulator und nur für die vorinstallierten Anwendungen geschafft. Kann heut abend auch mal einen Screenshot posten, vielleicht hat jemand eine Idee wie man auch auf ein Gerät kommt, und, was ja eigentlich das Ziel ist, in eigene Anwendungen!
     
  7. swordi, 15.04.2010 #7
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    das geht auch nur am emulator, da dieser root zugang erlaubt.

    wenn das telefon auch root zungang erlaubt, dann kannst du dort auch die sql dbs anschauen
     
  8. so.r.u, 15.04.2010 #8
    so.r.u

    so.r.u Neuer Benutzer

    Beiträge:
    22
    Erhaltene Danke:
    0
    Registriert seit:
    11.02.2010
    Root Zugang ist vorhanden, aber das ganze ist wohl grad noch unter Entwicklung.

    Ich versuche grade folgenden Tipp von hier: Database Explorer - MOTODEV Discussion Boards
    Würde aber gerne ohne Änderungen in irgendelchen ini-Files weitermachen ;-)

    edit: Ich hab die Änderung von 4 auf 1 jetzt in 2 verschiedenen configs gemacht, (ich habe eine bestehende Galileo Installation mit dem Plugin erweitert), einmal in der /configuration/config.ini und in /plugins/com.motorola.studio.android.product_1.0.0.release/config.ini. Geändert hat sich nichts.. In allen möglichen Varianten steht nur hinter dem Gerät in der Liste (109 applications filtered) und manchmal bleibt die Berechnung wohl hängen, dann steht stattdessen unter dem Pfeil in der Zeile unter dem Gerät: "Waiting for the device to load". Schade.
     
    Zuletzt bearbeitet: 15.04.2010
  9. Mort, 15.04.2010 #9
    Mort

    Mort Android-Lexikon

    Beiträge:
    960
    Erhaltene Danke:
    262
    Registriert seit:
    16.11.2009
    Zumindest beim Milestone scheint auch das Kommandozeilen-Tool von SQLite nicht auf dem Gerät zu sein, oder zumindest nicht im Standard-Pfad.
     

Diese Seite empfehlen