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

adb jetzt auch auf dem Galaxy

Dieses Thema im Forum "Samsung Galaxy (I7500) Forum" wurde erstellt von floe, 20.07.2009.

  1. floe, 20.07.2009 #1
    floe

    floe Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    51
    Erhaltene Danke:
    1
    Registriert seit:
    17.07.2009
    Hallo zusammen,

    das ist jetzt erst mal eher für die Hackernaturen interessant: ich hab adb ein bisschen gepatcht und jetzt läufts auch auf dem Galaxy. Wer das auch ausprobieren möchte, muss leider in den sauren Apfel beissen und sich das Android SDK selber übersetzen (siehe source.android.com). Vorher muss noch dieses Changeset hier https://review.source.android.com/#change,10728 angewandt werden, dann kann adb auch mit dem Galaxy reden (zumindest mal unter Linux, für Windows hab ich's noch nicht probiert).

    Happy hacking :)
    CU Floe
     
  2. olafgeibig, 20.07.2009 #2
    olafgeibig

    olafgeibig Android-Hilfe.de Mitglied

    Beiträge:
    87
    Erhaltene Danke:
    5
    Registriert seit:
    12.07.2009
    Phone:
    Nexus 4
  3. floe, 20.07.2009 #3
    floe

    floe Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    51
    Erhaltene Danke:
    1
    Registriert seit:
    17.07.2009
    Hm, kapier ich nicht ganz. usb_vendors.c gibts bei mir gar nicht. Ich dachte eigentlich, ich hätte mir den master-Branch geholt, und der beinhaltet inzwischen Cupcake? Aber ich bin nicht grade der git-Kenner, evtl. hab ich den falschen Branch. Wie kann ich das feststellen?
     
  4. leromarinvit, 20.07.2009 #4
    leromarinvit

    leromarinvit Erfahrener Benutzer

    Beiträge:
    202
    Erhaltene Danke:
    13
    Registriert seit:
    08.07.2009
    Im gitweb-Interface kannst du die History der Branches vergleichen. master hat die zwei relevanten Commits von cupcake noch nicht drin.
     
  5. floe, 20.07.2009 #5
    floe

    floe Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    51
    Erhaltene Danke:
    1
    Registriert seit:
    17.07.2009
    Ah, verstehe. Gut, dann brauchts letztlich von meinem Changeset nur den Patch für usb_linux.c, da das Samsung ein bisschen komplexere USB-Descriptors hat als die anderen Geräte. Soweit ich das auf den ersten Blick beurteilen kann, dürfte es unter Windows/Mac auf Anhieb klappen, sobald die USB-ID drin ist.
     
  6. flori9100, 20.07.2009 #6
    flori9100

    flori9100 Android-Experte

    Beiträge:
    820
    Erhaltene Danke:
    110
    Registriert seit:
    24.06.2009
    Kann man nicht, sobald alles neu übersetzt ist, die relevanten Dateien irgendwo hochladen und dann hier posten? Oder sind das zu viele (sprich betrifft das größere Teile des SDK)?

    Dann müsste nicht jeder selber übersetzen :)
     
  7. floe, 20.07.2009 #7
    floe

    floe Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    51
    Erhaltene Danke:
    1
    Registriert seit:
    17.07.2009
    Klar, gute Idee: http://floe.butterbrot.org/external/adb.gz
    Das ist jetzt das adb-Binary für Linux; scheint auch alleine zu laufen. Einfach mal ausprobieren..
     
  8. olafgeibig, 20.07.2009 #8
    olafgeibig

    olafgeibig Android-Hilfe.de Mitglied

    Beiträge:
    87
    Erhaltene Danke:
    5
    Registriert seit:
    12.07.2009
    Phone:
    Nexus 4
    Großartig - nun funzt es bei mir. Ich habe Ubuntu hardy 64 bit mit dem r3 cupcake sdk mit dem gepatchten adb. Geht alles, shell, ddms...

    SUPER!!! Danke, ich hoffe, das geht in den head ein (oder wie auch immer man das bei git nennt). Ich bin so frei mal auf den Changeset und diesen Thread im dem englischen Thread zu verlinken.

    Cheers, Olaf
     
  9. CJ78, 20.07.2009 #9
    CJ78

    CJ78 Fortgeschrittenes Mitglied

    Beiträge:
    271
    Erhaltene Danke:
    7
    Registriert seit:
    09.07.2009
    Das bedeutet was? Was kannst du jetzt damit anfangen?
     
  10. Maniac, 20.07.2009 #10
    Maniac

    Maniac Android-Experte

    Beiträge:
    609
    Erhaltene Danke:
    48
    Registriert seit:
    08.07.2009
    Das hilft mir unter Windows aber vermutlich noch immer nicht, weil der Treiber fürs Galaxy nicht erkannt / angenommen wird, oder?
     
  11. olafgeibig, 20.07.2009 #11
    olafgeibig

    olafgeibig Android-Hilfe.de Mitglied

    Beiträge:
    87
    Erhaltene Danke:
    5
    Registriert seit:
    12.07.2009
    Phone:
    Nexus 4
    Ok, man braucht das SDK natürlich in erster Line zum gescheiten Entwickeln. mit der adb muss man halt nicht mehr seine Apps immer via USB-storage auf das Gerät kopieren und, installieren und ausprobieren, sondern das geht bequem über adb. Man kann seine App auf dem Gerät remote-debuggen, und und und.

    Für den geneigten User ist adb auch interessant, da man mittels
    Code:
    adb shell
    eine remote Kommandozeile aufmachen kann. Auf dem Gerät selber kann man ja nicht richtig mit einer Shell umgehen. Ausserdem bietet ddms gewaltige Analyse-Möglichkeiten, Logs, Speicher-Auslastung, Threads, etc. etc.

    By the way, damit ddms richtig auf einem 64 bit Linux funzt, müsste man 64 bit SWT-libs genau in der benötigten Version bereitstellen. Das SDK hat aber nur 32 bit Versionen mit dabei. Da ich diese Versionen auf die schnelle nicht gefunden habe (könnte man evtl. von einer eclipse distro extrahieren), habe ich mir ein 32 bit Java installiert und im ddms skript in Zeile 72 dann java_cmd="/usr/lib/jvm/ia32-java-6-sun/jre/bin/java" gesetzt. Dann geht's.

    Gruß, Olaf
     
  12. Psycholein, 20.07.2009 #12
    Psycholein

    Psycholein Android-Experte

    Beiträge:
    851
    Erhaltene Danke:
    69
    Registriert seit:
    13.07.2009
    unter WindowsXP ist es mit dem sdk1.5r3 noch etwas leichter
    einfach die inf-Datei für den USB-Treiber anpassen

    im oberen Teil:
    [Google.NTx86]
    %USB\VID_04E8&PID_6640&MI_04.DeviceDescRelease%=androidusb.Dev, USB\VID_04E8&PID_6640&MI_04

    im unteren Teil:
    [Strings]
    ...
    USB\VID_04E8&PID_6640&MI_04.DeviceDescRelease="Samsung Galaxy Composite ADB Interface"

    danach den Treiber installieren, schauen, ob adb schon läuft, wenn ja, per Taskmanager erst mal killen
    eclipse starten und da Samsung als Gerät auswählen


    Datei hab ich angehangen (musste jedoch Endung inf in txt ändern)
    win2k hab ich bei mir rausgehauen, geht nur für XP und neuer, auch die die Kennungen der anderen Geräte sind weg
     

    Anhänge:

  13. Ratte, 20.07.2009 #13
    Ratte

    Ratte Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    12.07.2009
    Super! Danke!
    Funktioniert bei mir mit Opensuse 10.2
     
  14. flori9100, 20.07.2009 #14
    flori9100

    flori9100 Android-Experte

    Beiträge:
    820
    Erhaltene Danke:
    110
    Registriert seit:
    24.06.2009
    Nach welchem Schema hast du denn die Datei angepasst? Weil ich hab ein amd64-System (Win7), da sieht die .inf nochmal ein bissl anders aus (bezüglich der IDs etc).
    Habe allerdings den Abschnitt [Strings] mal angepasst (der ist doch eigentlich eh nur Visualisierung, oder hat der echte Auswirkungen auf die Treiberfunktion?) und mal installiert .. zumindest erkennt man Galaxy jetzt wieder die PC-Verbindung (basiert auf einem anderen Problem -> anderes Thema) .. aber eine adb-Connection kriege ich noch nicht hin ...
     
  15. Psycholein, 20.07.2009 #15
    Psycholein

    Psycholein Android-Experte

    Beiträge:
    851
    Erhaltene Danke:
    69
    Registriert seit:
    13.07.2009
    hab mir im Gerätemanager die Geräteinstanzkennung angeschaut (beim nicht erkannten Gerät) unter Details
    da stand genau der String bei mir - mit nem Zusatz hinten dran
    in der Hardware-Kennung steht noch mal genau der gleich String ohne den Zusatz hinten, aber dort sind noch ein paar weitere

    das Schema erkennt man dann recht schnell, VID ... PID ... MI ...
    mehr ist nicht nötig

    edit: Eclipse im Debug-Mode und Screenshot vom Gerät
    hab die komplette Kennung vom Samsung übermalt ;)
     

    Anhänge:

    • adb.jpg
      adb.jpg
      Dateigröße:
      149.6 KB
      Aufrufe:
      226
    Zuletzt bearbeitet: 20.07.2009
  16. Ratte, 20.07.2009 #16
    Ratte

    Ratte Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    12.07.2009
    Hmm, bei mir geht alles Mögliche: Shell, Screenshot, Thread- und Heapanalyse, nur logcat will nicht:
    Ich bekomme immer nur die Meldung

    Code:
    logcat read: Invalid argument
    Mit dem Simulator funktioniert's, nur mit dem Handy nicht. Hab ich irgendwo eine Einstellung vergessen?
     
  17. CJ78, 20.07.2009 #17
    CJ78

    CJ78 Fortgeschrittenes Mitglied

    Beiträge:
    271
    Erhaltene Danke:
    7
    Registriert seit:
    09.07.2009
    Was bringt denn das adb und was kann man damit anfangen?
     
  18. Psycholein, 20.07.2009 #18
    Psycholein

    Psycholein Android-Experte

    Beiträge:
    851
    Erhaltene Danke:
    69
    Registriert seit:
    13.07.2009
    adb = Android Debugging Bridge
    als Programmierer kann man so leichter Programme rüberschieben, debuggen und noch ein paar Dinge

    als normaler Anwender braucht man es nur selten, außer man nutzt dieses Tethering-Programm, aber so bald das usb-Modem mal stabil laufen sollte, braucht man das nicht mehr und spart sich so besser das Geld für das App ;)
     
  19. Maniac, 20.07.2009 #19
    Maniac

    Maniac Android-Experte

    Beiträge:
    609
    Erhaltene Danke:
    48
    Registriert seit:
    08.07.2009
    Psycholein, bei Dir zeigt es ja gar keine Prozesse an?

    Ich sehe bei mir komischerweise nur einen Prozess (MyBackup Pro). Liegt das am nicht-root, dass man nicht alle Prozesse sehen kann oder stimmt mit dem Treiber oder der ADB irgendwas noch nicht?

    Ist das dieser Patch den man einbauen muss?
     
  20. CJ78, 20.07.2009 #20
    CJ78

    CJ78 Fortgeschrittenes Mitglied

    Beiträge:
    271
    Erhaltene Danke:
    7
    Registriert seit:
    09.07.2009
    Danke für die Info!
     

Diese Seite empfehlen