[android] Android Studio의 프로젝트에서 하드 코딩 된 모든 문자열을 어떻게 찾을 수 있습니까?

Android Studio (베타) 0.84에서 내 프로젝트의 모든 하드 코딩 된 문자열을 찾아 추출해야합니다. Find Bugs와 같은 정적 분석 도구가 필요합니다. 한 번에이 작업을 수행하고 각 메시지를 단계별로 진행하고 문자열을 리소스 파일로 추출 할 수 있습니다. 전체 프로세스가 자동화된다면 더 좋을 것입니다.

Android Studio (베타) 0.84에서 File / Setting / FindBugs-IDEA는보고 탭의 옵션으로 I18N을 표시합니다. 그러나 나는 그것을 작동시키는 방법을 알 수 없습니다.

제안 해 주셔서 감사합니다.



답변

으로 @Maor 하닷 과 다른 upvotes이 나를 제안 : 그래서, 대답에 내 의견을 변환 :

Android Studio 1.2.2 이후에는 새로운 옵션이 있습니다.

"Analyse > Run inspection By Name" => "Hardcoded strings".

나는 그것을 사용했고 “hardcoded text”(xml 파일 만 확인하는)보다 현재 버전에서 훨씬 더 신뢰할 수있는 것처럼 보인다.

여기에서 본 링크


답변

“분석> 이름으로 검사 실행 …”으로 이동하여 “하드 코딩 된 텍스트”를 입력합니다. 전체 프로젝트에 대해이를 실행하면 하드 코딩 된 텍스트 인스턴스를 표시하는 검사 결과 패널이 표시됩니다.

Android 스튜디오> 환경 설정> 검사> 하드 코딩 된 텍스트로 이동하여 실행 방법과 검사에서 제외되는 특수 사례 (있는 경우)를 지정할 수도 있습니다.


답변

Windows 플랫폼의 경우 가장 좋은 방법은 다음과 같습니다.

이 단축키를 사용하여 다음 Ctrl Alt Shift I을 검색 할 수 있습니다 .

하드 코딩 된 텍스트

검색 창에서.

하드 코딩 된 문자열을 검색하려는 적절한 모듈을 선택할 수 있으며 모든 문자열 목록을 함께 제공합니다.

모듈 선택 옵션


답변

모든 레이아웃 파일에서만 하드 코딩 된 문자열을 모두 찾으려면 다음을 실행하여 매우 빠르게 검색 할 수 있습니다.

vinayak@vinayak-osx:layout $ grep -n "android:text=\"" * | grep -v "@string"

알아두기-1
. grepWindows에서 사용할 수 없습니다
. 2. 먼저 cd프로젝트 layout디렉토리
3. kcoppock 답변은 훌륭하지만 시간이 너무 많이 걸립니다.


답변

Ctrl+ Shift+ 사용FWindows의 경우 조합을 하여 모든 곳에서 검색하면 미리보기도 표시됩니다.

Ctrl+ 사용F현재 파일에서 검색 Windows에 조합을 합니다.

Shift+ 사용Shift (더블 시프트) Windows 용 조합은 프로젝트의 프로젝트 파일을 검색 할 수 있습니다.

이전 버전에서는 사용할 수 없습니다.


답변

나를 위해 잘 작동 한 것은 정규식을 사용하여 전체 프로젝트를 검색하는 것입니다.

android : text = “[az]

도구 : text = “[az]

여기에 이미지 설명 입력

이 경우 xml 파일에서만 (android : text = “…..)

위 이미지의 맨 끝에있는. * 파란색 버튼을 탭하는 것을 잊지 마십시오.


답변