アンドロイドのデバッグとロゴのつかむ方法

6943 ワード

アンドロイドのデバッグとロゴのつかむ方法
ロゴをつかむ
  • logcat Androidを使用してログをmianのログ、systemのログ、eventのログ、kernelのログ、Radioのログ:[adb]logcat[]...-b表示するログバッファを指定します.system、events、radio、mainです.デフォルト値はsystemとmain-cの画面上のログをクリアします.
  • 上位層のログをキャプチャ:adb logcat-b system-b main-b events-b radio–v time>1.txt
  • crash logcat crashをつかむ
  • システムをつかむserver log logcat main | grep system_server
  • SELinux権限問題logcat|grep denied//拒否されたサービスの表示
  • adb使用キャプチャkernelのログ:
  •  adb shell cat /proc/kmsg > .\kmsg.log	#  log,                 
     dmesg                     #        log
     cat /proc/kmsg | tee -i kmsg.log   # kernel log    kmsg.log    
    

    ANRのログを取得するには:
    adb pull /data/anr/traces.txt D:\anr\ 
    adb shell logcat -v time -f /dev/kmsg |
    adb shell cat /proc/kmsg | tee kernel_logcat.txt
    

    すべてのseneorを閉じる
     echo 0 > /persist/sensors/sensors_settings
    
  • 読み取り専用ファイルシステム解決
  •     mount -o remount  /         
    
        mount -o remount, rw /               
    
        mount -o remount, nosuid /     suid          
    
        mount -o remount, system/     system  
    
  • Pushファイルが必要な場合は
  •     adb remount
    
        adb push ……
    
  • sensors infoを読み出し、上位層がueventイベントでsensors情報を取得
  •     sns_regedit_ssi -r
    
        getenvent event0   
    
  • sensor情報の読み出しdumpsys sensorservice , sensor
  • イベント情報取得getevent
  • システムサーバの再起動adb shell kill -9 system_server
  • SElinux権限
  • ps -Z
  • ls -Z

  • service mangerリスト
  • dumpsys -l

  • OOM_を問い合わせるADJ
  • dumpsys activity

  • ADJの表示
  • cat sys/module/lowmemorykiller/parameters/adj
  • cat sys/module/lowmemorykiller/parameters/minfree

  • メモリ使用状況
  • cat /proc/meminfo

  • 仮想メモリ表示
  • cat /proc/pid/smaps

  • DOZE
  • Dozeモードへの強制進入dumpsys deviceidle force-idle
  • Dozeモード有効dumpsys deviceidle enable
  • Dozeモードをオフdumpsys deviceidle disable
  • Dozeモードホワイトリストを見るdumpsys deviceidle whitelist
  • jobschdule
  • 全て表示adb shell dumpsys jobscheduler
  • 掛け楽屋loglogcat -b kernel -f /sdcard/kernel.log -n 1024 -r 5 &logcat -b all -f /sdcard/all.log &logcat -b
  • 点灯時間統計log
  • 高通プラットフォーム電源キー押下はPMICにバインドされている
    drivers/platform/msm/qpnp-power-on.c
    .....
    qpnp_pon_input_dispatch(struct qpnp_pon *pon,u32 pon_type){
       ....
       pr_debug("PMIC input: code=%d, sts=0x%hhx
    "
    , cfg->key_code, pon_rt_sts); .... }
  • キーロゴ
  • PMIC input-->kernel log電源キー押下
  • PowerManagerServices:Waking up from sleep(uid 10020)……-->main logフレーム起動
  • DisplayPowerController: Blocking screen on until initial contents have been drawn. --> System log描画画面
  • power_screen_broadcast_send:1-->events log明るいスクリーン放送を送信
  • power_screen_broadcast_done:[1206,1]-->events lof明るい画面で放送完了
  • mdss_dsi_panel_bklt_dcs:level=255-->kernel logバックライト点灯

  • sm命令
    usage: sm list-disks [adoptable]
     sm list-volumes [public|private|emulated|all]
     sm has-adoptable
     sm get-primary-storage-uuid
     sm set-force-adoptable [on|off|default]
     sm set-virtual-disk [true|false]
     sm partition DISK [public|private|mixed] [ratio]
     sm mount VOLUME
     sm unmount VOLUME
     sm format VOLUME
     sm benchmark VOLUME
     sm idle-maint [run|abort]
     sm fstrim
    
     sm forget [UUID|all]
    
     sm set-emulate-fbe [true|false]