카테고리 보관물: Android

Android

translatable =“false”인 strings.xml의 “여기에서 번역되었지만 기본 로케일에서 찾을 수 없음”오류 편집하는 경우 어떻게 “기본 로케일에서 찾을 수

다음은 내 values ​​\ strings.xml (기본 파일)이며 모든 것이 자명합니다.
여기에 이미지 설명 입력

내 질문 :

  1. 기본 로케일 (values ​​\ strings.xml)을 편집하는 경우 어떻게 “기본 로케일에서 찾을 수 없음”이 될 수 있습니까?
  2. 설정하면 어떻게 Lint 번역 오류가 발생할 수 translatable="false"있습니까? values-pl \ strings.xml (및 values-ru, values-iw 폴더도)에서 문자열이 존재하지 않습니까? 어쨌든 안됩니다.
  3. 러시아어 문자열에 대한 오류가 발생하지 않는 이유를 이해할 수없는 것 같습니다.

(여기에 values-ru \ string.xml 또는 values-pl \ string.xml이 표시되지만 문자열이 누락 되었기 때문에 관심있는 항목이 없습니다 …)



답변

나에게도 일어난 일

나는 2 가지 일을한다 :

  • 완료되지 않은 다른 번역을 보려면 전체 파일을 확인하십시오 (파일 en에 있지만 pt-br에 있습니다)
  • Gradle을 정리하고 업데이트하고 Android Studio를 종료하고 다시 시작하십시오.

답변

재 구축에는 시간이 오래 걸릴 수 있습니다. YMMV,하지만 …

문제가되는 줄을 제거하고 다시 추가하기 만하면됩니다.

나를 위해 일했습니다. 매우 빠릅니다.


답변

제 경우에는 이것이 도움이되었습니다.

  1. 오류를 일으키는 문자열을 선택하십시오.
  2. 잘라.
  3. 다시 붙여 넣기

작동하지 않는 경우 strings.xml(v21)파일에 동일한 문자열을 추가해보십시오 .


답변

Invalidate Caches / Restart … 를 눌러 android studio를 다시 시작하십시오 . 그것은 나를 위해 일했습니다. 실제로 이것은 다른 컴퓨터에서 파일을 복사하고 파일 탐색기를 통해 붙여 넣었을 때 발생했습니다.


답변

기본 로케일 자체와 모든 번역에서 발생한 이상한 문제와 함께 동일한 오류 메시지가 나타납니다. 내부적으로 “bla_blub”로 변환되고 “bla.blub”과 일치 할 수 없기 때문에 이름에 점을 사용해서는 안됩니다 (예 : name = “bla.blub”). 따라서 오류가 발생합니다. 기본 로케일에서 밑줄로 점을 변경하기 만하면 다른 번역 (이름의 점 포함)의 다른 모든 오류도 사라졌습니다.

그러나 다른 빌드 도구는 여전히 문제를 일으킬 수 있으므로 모든 점을 대신 밑줄로 바꾸십시오!


답변

Android Studio를 종료하고 다시 시작하면 문제가 해결되었습니다.


답변

아래 단계에 따라이 문제를 해결했습니다.

  1. 내 프로젝트 청소

  2. 재건

  3. 마지막으로 잘못된 캐시를 누르거나 파일 메뉴에서 다시 시작