[android] Logcat이 내 로그 호출을 표시하지 않습니다.


Answers

다른 모든 것이 실패하면 :

나는 위의 모든 일을했고 무엇이 잘못되었는지를 알 수 없었다.

테스트 대상 :

adb logcat

내 항목이 사실상 logcat에 있었지만 twas adt의 특징은 무엇인지 알기 위해

고치다:

일식 다시 시작

이것은 그것을 고쳤던 유일한 것이었다.

Question

나는 안드로이드 프로그래밍에있어서 멍청한 사람이고, 내 애플 리케이션을 디버깅하는 법을 배우고 싶다. Log.i | d | v 호출을 LogCat에 표시 할 수없는 것 같습니다.

여기에 제가 사용하고있는 코드가 있습니다. 보시다시피 LOG_TAG 상수를 정의했지만 LogCat에서이 상수를 찾을 수 없습니다. android.util.Log를 가져 왔고 AndroidManifest에서 "디버깅 가능"을 TRUE로 설정했는지 확인했습니다.

나는 또한 http://developer.android.com/reference/android/util/Log.html 이 문제를 해결하는 행운을 확인했습니다.

내가 도대체 ​​뭘 잘못하고있는 겁니까? 나는 올바른 곳을보고 있는가? DDMS와 Debug 퍼스펙티브를 사용해 보았습니다. 이 멍청한 놈에게 도움이된다면 크게 감사 할 것입니다. 감사.

내 환경 : Windows XP IDE = 이클립스 버전 : 3.6.1, 빌드 ID : M20100909-0800 에뮬레이터 = 안드로이드 SDK 2.1 API 7을 가리킨다.

// 몇 가지 Log.i 호출을 사용하는 아주 기본적인 HELLO World 코드

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;

public class debugger extends Activity {
    private static final String LOG_TAG = "debugger";

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        Log.i(LOG_TAG, "line 13");
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Log.i(LOG_TAG, "CREATING NOW");
    }
}



감시 할 것이 한 가지 더 있습니다.

logcat의 오른쪽 상단에는 메시지를 유형별로 필터링하기위한 드롭 다운 테이블 이 있습니다. 찾고있는 레벨에 있는지 확인하십시오 (어설 션 수준에있을 경우 logcat을 비워 둡니다).




필자의 경우이 줄을 제거해야했다.

    <application
         android:debuggable="false"  <!-- Remove this line -->
         ..../>

내 Manifest 파일의 Application 태그에서.




Android Studio : 오른쪽을 가리키는 녹색 화살표를 클릭하여 로깅을 다시 시작합니다. 아이콘이 보이지 않으면 >> 아이콘을 클릭하여 찾습니다.




필자는 이클립스가 안드로이드 앱을 시작할 때 때때로 예외를 던지고 LogCat이 업데이트를 멈추는 것을 보았다. Eclipse를 다시 시작하기 만하면 문제가 해결되었습니다. 만약 당신이 그것을 시도하고 그것이 최적의 솔루션에서 멀다는 것을 나는 확신하지 못하지만, 이클립스 플러그인에는 여전히 철저한 버그가있다.




이 문제가 발생하여 로그 호출을 처리기로 옮기기 전까지 아무 것도 작동하지 않는 것 같습니다. 이제는 언제 어디서든 작동합니다.




Eclipse의 경우 : 1) ddms 관점으로 이동하십시오. 2) 올바른 장치가 선택되었는지 확인하십시오. 3) 이미 선택되어 있고 로그를 표시하지 않으면 ABD를 다시 시작하십시오. * 희망이 해결됩니다.




아마도 정확하지 않고 조금 더 길어졌지만 다음을 사용하여이 문제를 해결했습니다 (Android Studio).

System.out.println("Some text here");

이렇게 :

try {
       ...code here...
} catch(Exception e) {
  System.out.println("Error desc: " + e.getMessage());
}



LogCat을 다시 시작하면 앱을 강제 종료하십시오.

강제 종료시 사용 : D

setContentView(BIND_AUTO_CREATE);



나는이 문제와 고정, 문자열없이 공간이 태그 :

"내 태그"// 주목하는 쇼
"my_tag"// 괜찮습니다.




실행 코드를 작업 공간에 넣으려고합니다. 코드를 실행하는 코드에 넣으십시오.




빠른 수정.

이클립스를 다시 시작하십시오.

완벽하게 작동합니다.




logcat에서도 간단한 로그 출력을 보는 데 문제가있었습니다. 최신 JDK를 설치하면 문제가 해결되었습니다. 난 그냥 새로운 개발 컴퓨터를 설치하고 JRE를 설치하고 JDK를 설치하면 나를 위해 일했습니다.




adb usb 명령으로 adb usb 서비스를 다시 시작해야했습니다.

이전에는 모든 로깅을 받고 디버깅 할 수 있었지만 내 자신의 로그 라인을 얻지 못했습니다 (예, 응용 프로그램과 관련된 시스템 로깅을 얻고있었습니다).




Android Studio를 사용하여 동일한 문제가 발생하여 LogCat의 오른쪽 상단에있는 선택 상자에서 No Filters 을 선택하여 문제를 해결했습니다. 이렇게하면 내 Android 로그 수신을 포함하여 LogCat에 백그라운드에서 Android 로그가 모두 수신되기 시작했습니다.




Links