마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

앱 실행 중 USB 허브 연결 후 [app] isn't responding

0 추천

오드로이드를 통해 앱을 개발하고 있습니다. 앱 실핼 중 오드로이드에 USB 허브를 연결 시키면 몇 초 뒤 "앱 이름 isn't responding 메시지가 화면 중앙에 출력이 되는 문제가 있습니다. USB 허브에는 BT동글, USB메모리, 마우스가 연결되어 있는 상태이고,

logcat으로 확인해 본 결과 로그는 아래와 같습니다.

2021-09-30 14:18:49.573 4519-4519/com.plc I/Choreographer: Skipped 362 frames!  The application may be doing too much work on its main thread.
2021-09-30 14:18:51.468 3212-3235/system_process E/ActivityManager: ANR in com.android.bluetooth
    PID: 3342
    Reason: executing service com.android.bluetooth/.btservice.AdapterService
    Load: 0.0 / 0.0 / 0.0
    CPU usage from 0ms to 10044ms later (2021-09-30 05:18:41.407 to 2021-09-30 05:18:51.451):
      13% 3914/android.process.media: 9.2% user + 4% kernel / faults: 2939 minor
      10% 3212/system_server: 5.6% user + 5% kernel / faults: 694 minor
      6.2% 3371/com.android.systemui: 5.2% user + 0.9% kernel / faults: 4067 minor 3 major
      2.9% 2153/mmcqd/1: 0% user + 2.9% kernel
      2% 3477/com.droidlogic: 1.4% user + 0.5% kernel / faults: 624 minor
      1.8% 2986/surfaceflinger: 0.7% user + 1% kernel / faults: 389 minor
      1.5% 1988/irq/51-meson-am: 0% user + 1.5% kernel
      1.5% 2962/android.hardware.audio@2.0-service: 0.3% user + 1.1% kernel / faults: 40 minor
      0.9% 2993/adbd: 0.1% user + 0.7% kernel / faults: 12302 minor
      0.7% 2984/audioserver: 0.3% user + 0.3% kernel / faults: 1 minor
      0.7% 4519/com.plc: 0.6% user + 0% kernel / faults: 526 minor 1 major
      0.3% 2960/systemcontrol: 0.1% user + 0.1% kernel / faults: 191 minor
      0.3% 2973/android.hardware.graphics.composer@2.2-service: 0.2% user + 0% kernel / faults: 85 minor
      0.3% 2976/android.hardware.memtrack@1.0-service: 0% user + 0.3% kernel / faults: 378 minor
      0.2% 2338/kworker/0:3: 0% user + 0.2% kernel
      0.1% 7/rcu_preempt: 0.1% user + 0% kernel
      0.1% 1938/kthread_di: 0.1% user + 0% kernel
      0.1% 2904/logd: 0% user + 0% kernel / faults: 10 minor
      0.1% 2958/hdmicecd: 0% user + 0% kernel / faults: 1 minor
      0.1% 4575/irq/28-ff660000: 0.1% user + 0% kernel
      0% 6/kworker/u8:0: 0% user + 0% kernel
      0% 8/rcu_sched: 0% user + 0% kernel
      0% 23/ksoftirqd/2: 0% user + 0% kernel
      0% 30/kworker/3:0: 0% user + 0% kernel
      0% 1426/kworker/2:1: 0% user + 0% kernel
      0% 2372/ueventd: 0% user + 0% kernel / faults: 44 minor
      0% 2499/kworker/u9:1: 0% user + 0% kernel
      0% 2809/jbd2/mmcblk1p21: 0% user + 0% kernel
      0% 2909/vold: 0% user + 0% kernel / faults: 163 minor
      0% 2964/android.hardware.camera.provider@2.4-service: 0% user + 0% kernel
      0% 2977/android.hardware.power@1.0-service: 0% user + 0% kernel
      0% 3004/statsd: 0% user + 0% kernel / faults: 80 minor
      0% 3010/tombstoned: 0% user + 0% kernel / faults: 23 minor
      0% 3198/aml_buf_toggle_: 0% user + 0% kernel
      0% 4009/com.estrongs.android.pop: 0% user + 0% kernel
      0% 4100/com.android.keychain: 0% user + 0% kernel / faults: 16 minor
      0% 4588/com.android.mtp: 0% user + 0% kernel / faults: 87 minor
      0% 4630/usb-storage: 0% user + 0% kernel
     +0% 4640/bioset: 0% user + 0% kernel
    35% TOTAL: 7.8% user + 6.1% kernel + 21% iowait
    CPU usage from 67195ms to 67195ms ago (1970-01-01 00:00:00.000 to 1970-01-01 00:00:00.000) with 0% awake:
    0% TOTAL: 0% user + 0% kernel
2021-09-30 14:18:51.818 4519-4536/com.plc D/BluetoothAdapter: onBluetoothServiceUp: android.bluetooth.IBluetooth$Stub$Proxy@1e9c0cb
2021-09-30 14:18:52.032 4519-4525/com.plc I/com.plc: Thread[3,tid=4525,WaitingInMainSignalCatcherLoop,Thread*=0x7bc912b000,peer=0x14040020,"Signal Catcher"]: reacting to signal 3
2021-09-30 14:18:52.519 4519-4519/com.plc V/PLC: *MainActivity::mBroadcastReceiver::onReceive(action)=android.bluetooth.adapter.action.STATE_CHANGED
2021-09-30 14:18:54.133 4519-4525/com.plc I/com.plc: Wrote stack traces to '[tombstoned]'
2021-09-30 14:18:58.760 3212-3235/system_process E/ActivityManager: ANR in com.plc (com.plc/.MainActivity)
    PID: 4519
    Reason: Input dispatching timed out (Waiting to send non-key event because the touched window has not finished processing certain input events that were delivered to it over 500.0ms ago.  Wait queue length: 2.  Wait queue head age: 5778.3ms.)
(이하 생략)
      
2021-09-30 14:18:58.772 4519-4519/com.plc V/PLC: *MainActivity::mBroadcastReceiver::onReceive(action)=android.bluetooth.adapter.action.STATE_CHANGED
2021-09-30 14:18:58.878 2986-3066/? E/BufferQueueCore: [Application Not Responding: com.plc#0] Slot 0 is in mActiveBuffers but has no buffer

 

맨 윗 줄(Skipped 362 frames!  The application may be doing too much work on its main thread.)과 맨 아래 줄([Application Not Responding: com.plc#0] Slot 0 is in mActiveBuffers but has no buffer)의 로그가

의심이 가는 부분인데 구글에 검색해 봐도 마땅한 해결책이 안 나오는 것 같습니다. 방법이 혹시 있을까요?

zokkkk (180 포인트) 님이 2021년 11월 8일 질문
AdapterService에서 데이터 처리를 메인쓰레드에서 하고 계셔서 메인쓰레드가 뷰를 업데이트를 제대로 하지 못하고 있는 걸로 추측이 됩니다. 데이터처리는 백그라운드 쓰레드에서 화면 업데이트는 메인쓰레드에서 하도록 변경해 보세요.
답변 감사드립니다. 말씀 하신대로 해보겠습니다!

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...