Bu sayfada, görüntülemek için kamera hizmetindeki hata ayıklama araçları açıklanmaktadır
kamera donanım soyutlama katmanı. Kamera hizmeti, watch
ve dumpsys
komutlarını içerir.
Android 13 veya sonraki sürümleri çalıştıran cihazlarda kullanılabilen watch
komutu, etiketlerin ne zaman izleneceği ve etiketlere ne zaman erişileceği üzerinde kontrol sahibi olmanızı, açık istemcilerden gelen etiket izleme dökümlerinin canlı önizlemesini yapmanızı ve kapalı istemcilerden gelen önbelleğe alınmış dökümleri görüntülemenizi sağlar. dumpsys
komutu, hata ayıklamaya erişime olanak tanır
kapalı istemcilerden etiket izleme dökümleri sağlamaz.
watch komutu
Bu bölümde, watch
komutunun nasıl kullanılacağı açıklanmakta ve örnekler verilmektedir.
Etiketleri izlemeye başla
Etiketleri izlemeye başlamak için şunu kullanın:
adb shell cmd media.camera watch start -m <tags> [-c <clients>]
Örnek:
adb shell cmd media.camera watch start \
-m android.control.effectMode,android.control.aeMode \
-c com.google.android.GoogleCamera,com.android.chrome
Bağımsız değişkenler:
tags
: İzlenecek etiketlerin virgülle ayrılmış listesi. Şunlar da kabul edilir:3a
kısaltmasıdır; burada3a
android.control.*
AF, AE ve AWB ile ilgili etiketler (etiketlerin tam listesi için bkz.TagMonitor.cpp
) seçin.clients
: İsteğe bağlı bağımsız değişken. İstemci paketinin virgülle ayrılmış listesi izin verilen adları seçin. Müşteri yoksa tüm müşterileri izler bağımsız değişkeni iletildiğinde veya istemci listesindeall
varsa.
Bu komut, açık istemcilerde ve tüm istemcilerde etiket izlemeyi başlatır
daha sonra açılanlar (stop
çağrılana kadar). start
çağrıldıktan sonra kamera hizmeti, istemciler kapandığında istemcilerden gelen etiket izleme dökümlerini önbelleğe alır.
start
çağrılmadığı sürece kamera hizmeti, hiçbir istemci için etiketleri izlemez ve etiket izleme dökümlerini önbelleğe almaz. all
clients
parametresi, kamera hizmeti etiketleri ve izleme önbelleklerini izler
dökümleri çıkarmanız gerekir.
Etiket izleme bilgilerinin dökümü
Etiket izleme bilgilerini dökmek için şunları kullanın:
adb shell cmd media.camera watch dump
Bu komut, etiket izleme bilgilerini standart çıkışa atar ve ardından
çıkar. start
tarihinden (veya son clear
tarihinden) bu yana kapalı olan istemcilerden gelen önbelleğe alınmış etiket izleme dökümlerini ve açık istemcilerden gelen en son etiket izleme dökümünü yazdırır.
Örnek çıkış:
$ 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
...
Etiket izleme bilgilerini gerçek zamanlı olarak önizleyin
Etiket izleme bilgilerini gerçek zamanlı olarak önizlemek için şunu kullanın:
adb shell cmd media.camera watch live [-n refresh_interval_ms]
Örnek:
adb shell cmd media.camera watch live -n 250
Bağımsız değişkenler:
refresh_interval_ms
: İsteğe bağlı bağımsız değişken. Bilgilerin yenileneceği aralık (milisaniye cinsinden). Herhangi bir değer iletilmezse varsayılan olarak 1.000 değerine ayarlanır.
Bu komut, etiket izleme bilgilerini gerçek zamanlı olarak yazdırır. Çıkmak için Return/Enter tuşuna basın.
Örnek çıkış:
$ 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]
Önbelleğe alınan dökümleri temizle
Önbelleğe alınmış tüm etiket izleme dökümlerini temizlemek için:
adb shell cmd media.camera watch clear
Bu komut, etiket izlemeyi durdurmaz.
Etiketleri izlemeyi durdur
Tüm istemcilerde etiketleri izlemeyi durdurmak ve önbelleğe alma için tutulan tüm arabellekleri temizlemek etiket izleme dökümlerini kullanmak için:
adb shell cmd media.camera watch stop
dumpsys komutu
dumpsys
komutu, kameradan alınan bir dizi hata ayıklama bilgisi sunar.
geliştirmenizi sağlar. Aşağıdaki komut,
kamera hizmeti:
adb shell dumpsys media.camera
dumpsys
komutu, açık kaynaklı etiket izleme dökümlerinin yakalanmasını da sağlar
kullanabilirsiniz. Ancak dumpsys
, kapalı kaynaklardan etiket izleme dökümleri sağlamaz.
kullanabilirsiniz. Aşağıda, etiket izleme için dumpsys
kullanımıyla ilgili örnekler verilmiştir:
Tüm açık istemcilerden etiket izleme dökümlerini alın:
adb shell dumpsys media.camera -m 3a | grep -A50 Monitored
Linux
watch
komutunu kullanarak etiket izleme bilgilerinin canlı önizlemesini alın:watch -n 1 -c 'adb shell dumpsys media.camera -m 3a | grep -A50 Monitored'