LogNotTimber 주석을 숨기는 방법

1958 단어 안드로이드Timber
과거의 담당자가 모두 없어지고 있는 프로젝트를 보수했을 때의 이야기.

아마 당초는 android.util.Log(이하 Log 표기)로 운용되고 있었지만, 어딘가에서 누군가가 Timber를 도입했을 것입니다. 자신이 담당한 부분에만.
Timber와 Log가 공존하면 어떻게 되는가 하면, Log 모두에 노란색 물결선이 그려집니다.
앞에서 언급했듯이이 프로젝트는 Log로 시작한 프로젝트이므로 압도적으로 Log가 더 많기 때문에 물결선이 도처에 그려졌습니다. 이것은 코드 중에 노이즈가 많아 코드 리딩의 효율이 떨어집니다.

그래서 길을 찾았습니다.

린트 자체 끄기


Log 존재 확인 자체를 끄는 방법입니다.
유효하게 Timber를 이용할 수 있으면 Log 의 치환 누설을 발견할 수 없게 되는 메리트는 있습니다만, 이번은 정상화시키는 공수적 여유가 없기 때문에 무시합니다.

Preferences | Editor | Inspections

의 「Logging call to Log instead of Timber」의 체크를 해제해 적용하면 파선은 당기지 않게 됩니다.



@SuppressLint() 사용


Log 를 포함하는 메서드 or 함수에 주석을 부여하는 방법입니다.
@SuppressLint("LogNotTimber")
fun foo() {
    Log.d("bar")
}

이렇게하면 물결선이 그어지지 않습니다.

기분



Android Studio가 제안하기 때문에 소개했지만 개인적으로는 좋아하지 않는 방법입니다. 이유로는
  • 각 메소드 or 함수에 모두 기술할 필요가 있다
  • 예외를 잡고 있는 것과 같다. 치명적인 놓칠 수 있습니다

  • 의 2점입니다. 번거로움에 문제의 씨앗을 채우고 싶지 않기 때문에 기본적으로하지 않습니다.

    결론



    다른 방법이 있으면 알고 싶습니다. 예를 들어 프로젝트별로 특정 Lint를 끄는 방법이 있다면.

    마지막으로 한마디,
    기존 부분에 영향이 있는 라이브러리를 추가하는 경우는 확실히 모두 대응하거나 포기하고 기존의 방법에 따라!
    고마워요.

    좋은 웹페이지 즐겨찾기