Auf dieser Seite werden die Debugging-Tools im Kameradienst zum Ansehen
Änderungen an den Erfassungsanforderungs- und Ergebniswerten, die an den und vom
Kamera-HAL. Der Kameradienst umfasst die Befehle watch
und dumpsys
.
Verfügbar auf Geräten mit Android 13 oder höher, der
Mit dem Befehl watch
können Sie steuern, wann Tags live überwacht und aufgerufen werden.
Vorschau von Tag-Monitoring-Dumps von offenen Clients und Anzeigen der im Cache gespeicherten Daten
Dumps von geschlossenen Kunden Der Befehl dumpsys
ermöglicht den Zugriff auf das Debugging
Daten, stellt aber keine Tag-Monitoring-Dumps von geschlossenen Clients bereit.
Watch-Befehl
In diesem Abschnitt wird anhand von Beispielen die Verwendung des Befehls watch
beschrieben.
Überwachungs-Tags starten
Verwenden Sie Folgendes, um das Monitoring von Tags zu starten:
adb shell cmd media.camera watch start -m <tags> [-c <clients>]
Beispiel:
adb shell cmd media.camera watch start \
-m android.control.effectMode,android.control.aeMode \
-c com.google.android.GoogleCamera,com.android.chrome
Argumente:
tags
: Durch Kommas getrennte Liste der Tags, die überwacht werden sollen. Wird auch akzeptiert die Kurzschreibweise3a
, wobei sich3a
auf die Menge allerandroid.control.*
bezieht Tags in Zusammenhang mit AF, AE und AWB (eine vollständige Liste der Tags finden Sie unterTagMonitor.cpp
)clients
: Optionales Argument. Durch Kommas getrennte Liste von Clientpaketen Namen, für die Tags überwacht werden. Beobachtet alle Clients, wenn kein Client vorhanden ist übergeben wird oderall
in der Liste der Clients vorhanden ist.
Dieser Befehl startet das Tag-Monitoring in offenen Clients und allen Clients
die anschließend geöffnet werden (bis stop
aufgerufen wird). Nachdem start
aufgerufen wurde,
Der Kameradienst speichert Tag-Monitoring-Dumps von Clients im Cache, wenn die Clients
schließen.
Sofern start
nicht aufgerufen wird, überwacht der Kameradienst keine Tags auf Tags
und speichert Tag-Monitoring-Dumps nicht im Cache. Wenn all
im Feld
clients
verwendet, überwacht der Kameradienst Tags und Caches.
von allen Kunden.
Monitoring-Informationen zu Dump-Tags
Verwenden Sie Folgendes, um Tag-Monitoring-Informationen zu sichern:
adb shell cmd media.camera watch dump
Dieser Befehl gibt die Tag-Überwachungsinformationen in der Standardausgabe aus
Exits. Sie gibt die im Cache gespeicherten Tag-Monitoring-Dumps von Clients aus, die geschlossen haben
seit start
(oder dem letzten clear
) und dem letzten Tag-Monitoring-Dump vom offenen Tag
Kundschaft.
Beispielausgabe:
$ adb shell cmd media.camera watch dump
Client: com.android.chrome (active)
1:com.android.chrome f0:532642803202286ns: REQ:android.control.aeMode: [ON] output stream ids: 0
1:com.android.chrome f0:532642803202286ns: REQ:android.control.afMode: [CONTINUOUS_PICTURE] output stream ids: 0
..
Client: com.google.android.GoogleCamera (cached)
0:com.google.android.GoogleCamera f0:532601698728552ns: REQ:android.control.aeMode: [ON] output stream ids: 0 3 1 2
0:com.google.android.GoogleCamera f0:532601698728552ns: REQ:android.control.afMode: [CONTINUOUS_PICTURE] output stream ids: 2 1 3 0
0:com.google.android.GoogleCamera f0:532601698728552ns: REQ:android.control.awbMode: [AUTO] output stream ids: 0 3 1 2
...
Vorschau von Tag-Überwachungsinformationen in Echtzeit anzeigen
So können Sie eine Vorschau der Informationen zum Tag-Monitoring in Echtzeit anzeigen lassen:
adb shell cmd media.camera watch live [-n refresh_interval_ms]
Beispiel:
adb shell cmd media.camera watch live -n 250
Argumente:
refresh_interval_ms
: Optionales Argument. Intervall in Millisekunden bis aktualisieren Sie die Informationen unter. Die Standardeinstellung ist 1.000, wenn kein Wert übergeben wird.
Mit diesem Befehl werden Informationen zum Tag-Monitoring in Echtzeit ausgegeben. Drücken Sie zum Beenden return/enter zurück.
Beispielausgabe:
$ adb shell cmd media.camera watch live
Press return to exit...
0:com.google.android.GoogleCamera f0:533016991302201ns: REQ:android.control.aeMode: [ON] output stream ids: 1 3 0 2
0:com.google.android.GoogleCamera f0:533016991302201ns: REQ:android.control.afMode: [CONTINUOUS_PICTURE] output stream ids: 2 0 3 1
...
0:com.google.android.GoogleCamera f0:533017066793915ns: RES:android.control.aeState: [SEARCHING]
0:com.google.android.GoogleCamera f0:533017066793915ns: 3 RES:android.control.aeState: [SEARCHING]
0:com.google.android.GoogleCamera f0:533017066793915ns: 2 RES:android.control.aeState: [SEARCHING]
0:com.google.android.GoogleCamera f0:533017066793915ns: RES:android.control.afState: [PASSIVE_SCAN]
Im Cache gespeicherte Dumps löschen
So löschen Sie alle im Cache gespeicherten Tag-Monitoring-Dumps:
adb shell cmd media.camera watch clear
Dieser Befehl beendet das Tag-Monitoring nicht.
Monitoring-Tags beenden
Zum Beenden des Monitorings von Tags in allen Clients und zum Löschen aller Zwischenspeicher für das Caching Tag-Monitoring-Dumps, verwenden Sie:
adb shell cmd media.camera watch stop
dumpsys-Befehl
Der Befehl dumpsys
bietet eine Reihe von Debugging-Informationen von der Kamera.
Service. Mit dem folgenden Befehl wird der gesamte Debugging-Dump aus der
Kameradienst:
adb shell dumpsys media.camera
Der Befehl dumpsys
ermöglicht auch das Erfassen von Tag-Monitoring-Dumps vom offenen
Kundschaft. dumpsys
stellt jedoch keine Tag-Monitoring-Dumps von geschlossenen
Kundschaft. Im Folgenden finden Sie Beispiele für die Verwendung von dumpsys
zum Tag-Monitoring:
Erfassen Sie Dumps der Tag-Überwachung von allen offenen Clients:
adb shell dumpsys media.camera -m 3a | grep -A50 Monitored
Livevorschau von Informationen zum Tag-Monitoring unter Linux Befehl
watch
:watch -n 1 -c 'adb shell dumpsys media.camera -m 3a | grep -A50 Monitored'