화면 캡쳐 후 갤러리에 이미지가 뜨지 않는다면 미디어 스캐닝을 해주고 나면 해결할 수 있다.

이 소스만 추가해주면 된다.


특정파일 미디어스캐닝

sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.parse("file://"+ "폴더위치"+"파일이름"+".파일확장자")));


특정 폴더 미디어스캐닝

sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,Uri.parse("file://"+Environment.getExternalStorageDirectory()+"/temp")));


전체 미디어스캐닝(시간이 좀 걸림)

sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,Uri.parse("file://"+Environment.getExternalStorageDirectory())));




빨간 표시를 주의하자

ACTION_MEDIA_MOUNTED 이건 줄 알고 썼다가 왜 안되나 했다.




  1. 궁금 2014.03.04 10:36

    이 소스를 실행해 보셨나요? 혹시 파일 하나만 할때도 스캔할때처럼 상태바에 아이콘이 뜨는지 아시나여?

    • yonoo88 2014.03.04 11:59 신고

      네 폰마다 다른지는 모르겠으나

      제 폰에서는 상태바에서 미디어 검색을 실행하지 않았습니다.

      그 미디어 검색 중 하면서 뜨는거 말씀하시는거죠?

      제가 테스트 해본 폰은 갤럭시S , 베가 NO 6입니다.

  2. 빡새 2014.04.17 14:10

    자료 감사합니다.

  3. 예쁜꽃이피었으면 2014.08.29 10:17 신고

    소스코그 읽는데 도움이 많이 되었습니다. 감사합니다~
    담아갈게요~



어플을 만드는데 현재화면 캡쳐가 아닌 레이아웃을 캡쳐하는 기능이 필요했다.

그것도 전체 레이아웃이 아닌 상단 바를 제외한 부분 레이아웃캡쳐였다.


그래서 인터넷에 검색하여 아주 간단한 화면캡쳐소스를 구해 돌려보았다. 


그런데 내 테스트기기 중 2.2프로요 기기에서는 잘 되는데 4.0 아이스크림 기기에서는 안되는 것이었다.

요즘 누가 2.2 쓰나 . 4.0에서 작동되는게 중요했기 때문에 계속 해결책을 찾아보았다.


소스상에는 문제가 없으나 어플을 실행하고 캡쳐버튼을 누르면 자꾸 강제종료가 되었다.

로그캣에서는 Bitmap이 널 값이 난다고 나와있었다.

container.buildDrawingCache();
container.setDrawingCacheEnabled(true);
Bitmap captureView = container.getDrawingCache();//비트맵 널 값에러나는 부분

그래서 로그로 container.getDrawingCache(); 이걸 출력해보니 이게 널 값이라고 떴다. 이게 문제였다.

그래서 위 소스를 활용한 간단한 캡쳐예제를 두 테스트기기에서 돌려보니 잘 되었다.

이 예제였다. 용돈벌기 책 예제이다.

CapturePartEx.zip


??

2.2 ,4.0 둘 다 캡쳐가 잘된다. 


이걸 그대로 따라서 적용해보았는데

뭐야 같은 방식인데  똑같이 따라한건데 왜 예제는 되고 내가하면 안되는거지..

미쳐버릴 노릇이었다. 



슈퍼삽질을 해보니 안드로이드 버전에 따른 API기능상 문제는 아니라는 결론을 내렸고

다른 방법으로 캡쳐하는 방법을 찾아보기로 했다.


그래서 온갖 구글링을 찾아 헤매다가 거의 두 달만에 해결을 했다.


https://groups.google.com/forum/#!searchin/android-developers/android$20getDrawingCache/android-developers/VQM5WmxPilM/gYHJGQZh7hMJ


여기 있는 걸 따라해봤더니 갑자기 된다..

바로 캡쳐하지않고 캔버스에 그려서 캡쳐하는 방식인 것 같았다.


 int width_container = container.getWidth() ;//캡쳐할 레이아웃 크기

 int height_container = container.getHeight() ;//캡쳐할 레이아웃 크기



container.setDrawingCacheEnabled(true);

container.buildDrawingCache(true);


/***********************핵심부분**********************************/
Bitmap captureView = Bitmap.createBitmap(container.getMeasuredWidth(), 

 container.getMeasuredHeight(), Bitmap.Config.ARGB_8888); 

Canvas screenShotCanvas = new Canvas(captureView ); 

container.draw(screenShotCanvas); 
/***********************핵심부분*****************************************/


	                FileOutputStream fos; 		

 			Intent it3=getIntent();	

 			String str_name=it3.getStringExtra("it3_name");	 			



 			File fileRoute = null;

 			fileRoute = Environment.getExternalStorageDirectory(); 		



 			try {

 				File path = new File(fileRoute,"temp");

 				if(!path.exists()){//if(!path.isDirectory()){

 					path.mkdirs();

 				} 		



 				fos = new FileOutputStream(fileRoute+"/temp/"+str_name+"-.jpeg");

 				Log.d("[screenshot]", " : " + container.getDrawingCache());

 				captureView.compress(Bitmap.CompressFormat.JPEG, 100, fos);

 				container.setDrawingCacheEnabled(false); 		



 			}catch (FileNotFoundException e) {

 				e.printStackTrace();

 			}



이 방법을 쓰니 해결이 되었다.


진짜 온갖 안드로이드 커뮤니티에 글도 올려보고 책 저자에게 메일도 보내고 별 짓 다 해봤는데 안되니까 정말 짜증났다. 진짜 번역기 돌려서 스택오버플로우에도 올려봤는데 아무도 대답을 안해주고..


진짜 90퍼 완성해놓고 남은 하나 때문에 시간낭비하는 건 도무지 못 해먹겟다.ㅜㅜ

이 글로 다른 누군가가 삽질할때 도움이 되었으면 좋겠다.




  1. 감사! 2014.04.04 21:03

    삽질의 해결책이 여기 있네요...감사합니다!

    • yonoo88 2014.04.04 22:59 신고

      오 해결되셨나요. 정말 다행입니다. 삽질만큼 짜증나는 일이 없죠..

  2. 조셉 2014.05.30 10:58

    스택오버에서 자주쓰는 코멘트를 쓰고싶네요!!

    you save my day!!

    감사합니다.

    • yonoo88 2014.05.30 21:07 신고

      감사합니다!

      저도 스택오버플로우에서 본 해결책이었네요

  3. 방문객 2014.09.04 15:46

    와..이문제로 정말 고생했었는데 ㅠㅠ감사합니다!

    • yonoo88 2014.09.04 15:52 신고

      해결되셨나요 다행입니다. 아직도 왜 많이들 쓰는 캡쳐방식은 안되는지 모르겠네요..

  4. pong 2014.09.15 16:03

    감사~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  5. 디트 2014.09.18 12:04

    정말 정말 정말 감사합니다 ㅠㅠ!!

  6. phalanx89 2014.10.21 12:12

    감사합니다!
    아쉬운건 getDrawingCache가 왜 안되는지.. 저도 못찾겠더라구요 ㅠ

  7. 양창엽 2014.12.22 09:55

    와 진짜 감사합니다 ㅠㅠ
    저도 용량이 작은 파일 들은 잘 되는데 어느 순간 용량이 큰 파일 들은 안되는 거에요 ㅠㅠ 그래서 진짜 화딱지 많이 났는데 여기서 해답의 열쇠를 찾다니 ㅠㅠ 감사합니다.
    보니깐 이걸 미리 해놓으면 좋은거 같아요. 미리 그려 놓고 바로 저장 하는 거 아닌가요 ㅠㅠ 암튼 감사합니다.
    제 블로그에 퍼가도 되죠 ㅠ?
    그리고 한가지 더 질문 좀 해도되나요?
    Bitmap.Config.ARGB_8888 무슨 뜻인지 알 수 있을까요?

    • yonoo88 2014.12.22 10:08 신고

      넴 출처만 적어주시면 퍼가셔도 됩니다. 멘붕에 빠진 사람들을 구제합시다! 저도 엄청 짱났었어요.

      그리고 저도 복붙유저라 잘은 모르지만...

      ARGB_8888는 이미지 품질?이라고 보시면 되거든요

      16Bit Bitmap : #RRRRRGGGGGGBBBBB (RGB_565)
      24Bit Bitmap : #RRRRRRRRGGGGGGGGBBBBBBBB (RGB_888)
      32Bit Bitmap : #AAAAAAAARRRRRRRRGGGGGGGGBBBBBBBB (ARGB_8888)

      이런 설명이 있는데 확실한 건 ARGB_8888 이게 품질이 제일 좋은거네요 ㅋㅋ

  8. anter 2015.01.05 17:58

    you save my day!!2 ..
    제일 어려운 문제를 가장 쉽게 풀었네요.. 감사합니다.. ^^

  9. 마파로스 2015.10.15 20:50

    저같은 경우는 핵심코드 부분이 없었을때도 잘 되었는데 어느때 부터 안되기 시작해서 해당 코드를 적용했더니 해결이 되네요..아마도 캔버스 사이즈에 관련된 오류라고 생각합니다.거길 변경한후 안되기 시작하더군요.하지만 해당코드를 적용하니 당연히 해결이 됩니다.그리는 거니까.

    • yonoo88 2016.01.18 17:09 신고

      아 다행이네요 사이즈가 넘친건지 그게 문제가 될 수도 있는거군요..

  10. 지나가는 프로그래머 2016.01.18 16:57

    너무 감사합니다 ㅜ.ㅜ 스크린 캡쳐가 구연안되서 엄청 골탕먹었는데 감사합니당

  11. 왕초보 2017.09.02 10:15

    글잘읽었습니다 그런데 도무지 이해가 안되서요 ㅜ ㅜ 실례가안된다면 죄송하지만 소스좀 얻을수있을까요?

  12. jhkim7559 2018.04.11 20:49

    혹시 홈화면같은 현재화면 캡쳐는 하는 방식도 알고 계신가요..?

다 깔았는데 에뮬레이터 실행이 안된다. 매우 짱난다.

검색 끝에 해결법을 찾았다.


윈도우-> 가상장치관리자로 간다.

 

 

 실행시킬 에뮬레이터 선택하고 옆에 Edit 클릭

 

 

 

램부분을 1024 이하로 수정해주면 작동이 된다.(800~900 정도로 두면 된다고 한다.)

 




 

PlayFramework 설치 후 새로운 작업 생성이 안될 때

웁스 메세지가 뜬다 

( 혹은  sudo play new helloworld 라고 쳐서 되면 다행이다. 난 초짜라서 그런지 이걸로는 안됐다)

알아보니 권한문제라고 한다.


그래서 권한을 살펴보니 drwxr-xr-x로 되어있다.



그래서 sudo chmod 777 /usr/local/bin 을 입력하여 bin폴더에 권한을 주었다. 

(/usr/local/bin 은 내가 작업을 생성할 폴더 경로임. 개인에 따라 알맞은 경로 입력)

드디어 즐기래 ㅠㅠ 삽질 끝..



권한 바꼈는지 확인해보니 drwxrwxrwx로 바뀌었다. 



권한에 대한 설명

출처: http://www.mireene.com/webimg/linux_tip1.htm



777 말고도 여러 조합이 있지만 급하고 안될땐 걍 모두 허용으로 하고 문제해결

이거 때문에 암것도 못하고 3시간 삽질.. 항상 이럼. 뭘 할 때마다 본격적으로 하기전부터 기본적인게 안되서..





옛시절 찾아가기

2011.08.30 01:49




올여름 한것도 없고 여행도 못갔고

문득 들은 생각
옛날에 살던데나 가보자
자전거 타고 갈려다가 무리일꺼 같아서 걍 버스타고 ㄱㄱ

거의 7~8년만인가

일단은.. 나 살던데부터
현대빌라
아직도 그대로네
어렸을때는 되게 커보였는데 지금가니 작아보인다.


경비실 왼쪽 놀이터
모래는 다 없어졌구나 비온 다음날 모래파내서 오아시스를 만들곤했었는데 


15동 주차장
노란색 선들은 다없어졌네 여기서 축구하고 야구하고 했었는데



14동 108호
우리집 입구


13동 사이
담벼락뒤로 철근회사 아예건물을 세웠네
저 벽에다 스트라이크존 그리고 한승이랑 야구했었는데
골대도 정해놓고 페널티킥하고 ㅋㅋㅋ


단지안에 슈퍼
아직도 건재하군요



 

나이먹기 했던 전봇대 ㅋㅋㅋ
진짜 나이먹기 할때마다 내 나이 프로토스급이었음
물먹고 못먹은 친구 물 반주기

 


일단 현대빌라를 둘러보고 나오고...


위에 쭉뻗은길로 가다보면 나오는 대도빌라.
레알마드리드와 바르셀로나 라면 현대빌라와 대도빌라였었음
애들끼리 현대빌라와 대도빌라 편을 갈라서 서로 다른 빌라 오면 왜오냐고 가라고 했었다
한가지일화로 대도빌라에 사는 오성욱이 현대빌라 놀이터 왔다가
현대빌라 사는 정두영이 왜 오냐고 오성욱 때려서 오성욱 울고 집에 감


일단 빌라를 빠져나오니 저멀리 시흥중학교가 보이는구나
중학교때가 제일 재밌었던거 같네.
가봐야지




오 아직도 있어 피아노학원 ㅋㅋㅋㅋ
바이엘 하 치다 그만뒀는데


우와 떡볶이 순대집도 아직도있네


음 대도슈퍼는 없어지고 헬스기구전문매장이 들어섰구나.


주유소 없었는데 생겼네?? 원래 뭐가 있었지...
아 그 장미꽃인생 레스토랑있떤건물이었는데 아예 부숴버리고 주유소를 지어놨네



조흥은행 건물은 그대로구나. 뭐 신한으로 바뀌었으니까. 기업은행은 원래 뭐였더라 ...



학교끝나고오면 여기서 술래잡기 하고 놀았는데 난간에서만 돌아다니기로 하고 ㅋㅋ
아직도 그대로네 누구랑 했었더라.. 창회랑 한승이인가???


내가 다녔떤 유치원자릴 가봤더니
없어졌네..
빌라재건축하나봐



저 언덕끝까지 올라가야 시흥중학교가 나오지


가는길에 금천고등학교..


시흥중학교. 하교시간이었는지 애들이 쏟아져 나오네 .
들어가보고싶었지만 요즘 시대가 시대인지라 그냥 왔음


천주교 성당자리에 인공폭포만들었던데 거기위에서 한방.
아파트 참높다. 한양아파트는 다 어디로가고..


여긴 폭포 상류



밑에는 이런 폭포가


짤막한 폭포영상



한양아파트 올라가는 언덕.
아직도 공사하는 중이라 트럭이 왔다갔다.



아직도 있는 넷매니아 ㅋㅋㅋ
옛날에 한시간에 800원 했을때의 충격이란. 바람의나라, 디아2 할려그랬는데 항상 자리가 없었음.



더 올라가보니 공사가 한창이다.
한양아파트 분수대 자리인데 흔적도 없구나.
한화스토어도 없고..



김영모 빵집도 없어지고 문방구도 없어지고
문백초등학교 정문으로 가는길이 공사중으로 아예 막혔다



후문으로 본 문백초등학교..
이것도 안에는 못들어가고 밖에서만 봤다.
그런데 럭키아파트는 그대로 있었다.



럭키아파트쪽으로 쭉 나가서 나와보니 크리스탈 뷔페도 아직도 있었다.
여기서 뷔페먹었던 기억이 새록새록..




이렇게 마무리
이곳저곳갈때마다 하나씩 떠오르는 기억들이 있었다
그땐 뭐가 그리 재밌었지 ㅋㅋㅋ
별 거 아닌거 같아도 지금 생각해보니 별 거 아니었다.

에이 낼부터 개강인데
마지막 여름방학을 이걸로 때웠다

옛날생각많이 나는 하루  


'이야기 > 끄적끄적' 카테고리의 다른 글

EXO - Call Me Baby MV  (0) 2015.04.03
2014 나만의 가요계 총결산  (0) 2015.01.24
드디어 LTE로 입문!  (0) 2014.02.28
2014 소치 동계올림픽 폐막...  (0) 2014.02.24
2013 나만의 가요계 총결산  (0) 2013.12.15
옛시절 찾아가기  (7) 2011.08.30
  1. 이주용 2012.05.15 01:53

    저두 옛시절이 떠올라 검색하다가 글을 읽가가...저두 시흥중 금천고 나왔는데 시흥중6회 졸업생입니다

  2. 추억의 한양 2016.03.29 02:10

    옛생각에 구글로 검색하다가 귀한 사진들 보고 갑니다. 문백 나오고 시흥에서 전학가서 사진 마다 추억이 한 가득이네요- 한양아파트여 안녕...

  3. 2017.02.20 02:04

    비밀댓글입니다

    • 2017.02.20 02:10

      비밀댓글입니다

  4. 원서니 2017.06.01 16:14

    우연히 옛시절 찾다가 보니 대도빌라가 검색되네요. 현대빌라 친구들이랑 싸우면서도 친하게 지내고 좋았는데..반가워요.

개는 역시 똥개

2011.03.04 22:55









'동물농장 > 사진' 카테고리의 다른 글

밥 값하는 개  (0) 2013.08.27
담배 뭐 줄까?  (0) 2013.08.27
생각하는 사자  (0) 2013.08.27
똑같아도 너무 똑같아!  (0) 2013.08.27
개도미노  (0) 2013.08.27
개는 역시 똥개  (0) 2011.03.04

문워크 종결자

2011.03.02 02:38


'잡동사니' 카테고리의 다른 글

14 윤형빈  (0) 2014.02.09
15가지 정렬 알고리즘을 시각화한 6분 영상  (0) 2013.11.18
공익 4급판정 세레모니 Top 3  (0) 2013.10.14
내장형 사운드  (0) 2013.09.06
문워크 종결자  (0) 2011.03.02
닭대가리의 신비  (0) 2011.02.21

개 풀 뜯어먹는 소리

2011.02.23 10:30







'동물농장 > 영상' 카테고리의 다른 글

힙합고양이  (0) 2013.09.27
똑똑한 개  (0) 2013.09.27
고양이 쎄쎄쎄  (0) 2013.09.03
고양이들이란  (0) 2013.09.03
한심한 주인 같으니라고  (0) 2013.09.03
개 풀 뜯어먹는 소리  (0) 2011.02.23

+ Recent posts