2012-10-27 6 views
5

나는 android dev에 매우 익숙하다 ... 나는 안드로이드에서 이미지를 숨기는 가장 좋은 방법을 알고 싶다. 나는 사진을 찍는 앱을 가지고 있는데, 그 사진을 원한다. 내 앱 안에 만 표시 할 수있다.안드로이드에서 이미지를 숨기는 가장 좋은 방법은 무엇입니까?

+0

당신은 어떤 방법으로 이미지를 encripting 시도 할 수 충분히입니다. .nomedia가 4.0 이상에서는 작동하지 않는다는보고가 있습니다. http://stackoverflow.com/questions/10697276/android-nomedia-not-working-for-images – Doomsknight

+0

일부 API 버전에는 미디어 스캐너에 몇 가지 버그가 있지만 .nomedia는 여전히 작동합니다. 버그 중 하나는 폴더에 일부 이미지가있는 후에 .nomedia 파일을 만드는 것이 미래의 이미지는 숨기지 만 이전 이미지는 숨기지 만 모든 미디어를 다시 스캔 (단순히 데이터 및 캐시 작업을 삭제하여 고정)하여 해결할 수 있습니다. . 해결책은 더 간단합니다. 폴더에 이미지 저장을 시작하기 전에 .nomedia 파일을 추가하여 중재자가 이미지를 찍지 못하게하십시오. 이 게시물은이 모든 것을 해결하는 방법을 다룹니다. 대답은 – ZhDev

답변

3

가장 좋은 방법은 장치의 내부 저장소를 사용하는 것입니다. 개발자 사이트에 따르면 :

파일을 장치의 내부 저장소에 직접 저장할 수 있습니다. 기본적으로 내부 저장소에 저장된 파일은 응용 프로그램의 개인 파일이며 다른 응용 프로그램은 해당 파일에 액세스 할 수 없습니다 ( 사용자도 마찬가지 임).

현재 모든 세부 사항을 찾을 수 있습니다 Using the Internal Storage 마음에

곰 당신이 고려해야 할 몇 가지가 있음; 예를 들어, 언급 한 사진이 카메라 의도를 통해 찍히는 경우 이미지가 먼저 공용 폴더 (예 : 외부 저장소)에 저장되어 카메라가 제대로 작동해야하며 그런 다음 내부 저장소로 이동해야합니다 (또는 복사 한 다음 원본을 삭제하십시오).

다른 방법이 있습니다 :

  • 또한 (다른 사람 accesible) 외부 저장 에 이미지를 저장하지만, 그들에게 보이지 않게하기 위해 파일 이름에 선행하는 점으로 파일 이름을 시도해 볼 수도 있습니다, 파일 이름을 아는 경우 모든 응용 프로그램이 파일에 액세스 할 수 있으며 대부분의 파일 관리자는 숨김 파일을 표시 할 수 있습니다.
  • 갤러리에 사진이 표시되지 않도록 폴더 안에 ".nomedia"파일을 추가하십시오.
  • 확장명없는 임의의 문자열로 파일 이름을 지정하십시오. 다른 응용 프로그램에 완전히 액세스 할 수 없게하려면

은 정말 의존하거나 조금을 숨기는 경우가

+0

+1입니다. 그러나 나는 작은 의심을 품고있다. 의심은 범위를 벗어나지 만 고려되기를 바랍니다. 파일 이름 앞에 점이있는 외부 저장소에 파일을 저장하고 있다고 가정합니다. 이것은 파일을 보이지 않게하고 .nomedia 파일은 무엇입니까? Java 코드에서이 파일 (점 앞에 표시됨)을 만드는 동안 만들어야합니까? –

+0

답변에 사용 된 것과 동일한 링크에서 : "외부 파일 디렉토리에 .nomedia라는 빈 파일을 포함하십시오 (파일 이름의 점 접두어를 참고하십시오). 그러면 Android의 미디어 스캐너가 미디어 파일을 읽고 앱과 같이 갤러리 또는 음악. " 기본적으로 사진을 저장할 때 사용하는 최상위 폴더에 .nomedia라는 하나의 빈 파일 (폴더에 처음 액세스하거나 만들 때)이 있으면 갤러리에 저장된 모든 이미지가 갤러리에 표시되지 않습니다. – ZhDev

+1

그 외에도 (기본값) 갤러리에는 숨김 파일이 표시되지 않으므로 모든 파일의 이름이 ".image1.jpg", ".image2.jpg", ".reallyCoolPic.jpg"인 경우에는 모두 숨겨져 있고 .nomedia 파일이 필요하지 않습니다. – ZhDev

관련 문제