본문 바로가기

live Wallpaper

[ Android Opengl es 2.0 ] java.lang.IllegalArgumentException Wallpaper를 개발하는 저는.. 항상 문제점이 미리보기 부분 이었습니다. 이번에 문제도 테스트 하다 갑자기 나온 Exception 때문에.. SI 업체이다 보니 해결 못하면 고객사에 보내기가 찝찝해서 이렇게 빈번도가 낮아도 해결을 할려고 발악(?)을 하지요^^;;; 위와 같은 Exception이 발견 되는 시점은 Opengl es 1.1을 사용한 Wallpaper은 발생 하지 않거나, 빈번도가 극히 희박합니다. 하지만, Opengl es 2.0에서는 5번의 1번은 발생을 하더라구요. 테스트 방법 : 미리보기를 선택한 후, 재빠르게 취소 버튼을 누르면 발생합니다. 결국 Wallpaper에 타격은 없지만, Exception이 발생해서 Error가 뜨면 어떻게든 잡아야겠죠?ㅎㅎ 그래서 try catch문.. 더보기
[ Android Opengl es 2.0 ] LiveWallpaper 에서 사용 시 , onSurfaceCreated 문제 이 문제는 제가 코딩을 잘못 하거나, 샘플 소스를 잘못 이용한 걸 수도 있지만, 경험의 유추했을 때 결론이 나와. 이렇게 글을 남깁니다. 혹시 잘못된 부분이 있으면 주저 말고 댓글을 달아주시면 감사하겠습니다.^^ Opengl es 2.0을 사용하여 개발하는 중.. 화면을 껏다가 다시 켜면.. 뭔가 속도가 느려지다가 결국 Out of memory 오류와 함께 팅겨져 버립니다. 역시나 Out of memory 부분은 Texture 부분이 문제 이죠. 전 onSurfaceCreated 함수 내에 Texture를 셋팅 하는 소스를 코딩하였습니다. loadTexture ( mContext.getResources().openRawResource( R.raw.background) ,"mBgTexId" ); 디버깅을 .. 더보기
[ Android ] Offset까지 포함한 전체 사이즈 구하기. 제가 LiveWallpaper를 개발을 많이 해서 화면의 Offset을 자주 이용하는데요. 요새 화면이 너무 제각각이고, 더 짜증나는게 Offset의 사이즈도 제각각이 되어버렸네요;; 전에 핸드폰으로 할 때에는 540을 더해줘서 생각해주면 문제가 없었는데.. 이제는 패드.. 7.5인치 핸드폰 등등... 정말 죽을 맛이죠;; 결국 구글링을 해본 결과!!! Offset까지 포함한 Width와 Height 사이즈를 구하는 방법을 찾았습니다. 한 시간 정도? 찾았나... 역시 간단하게 제공하더라구요. WallpaperManager wm = WallpaperManager.getInstance(mContext); wm.getDesiredMinimumWidth(); 위 함수의 리턴 값이 바로! 저희들이 원하는 값입니.. 더보기
[Android] 배경화면에 이미지를 표현할 때 참고사항 배경화면에 이미지를 출력할 때, offset까지 생각을 해서 화면보다 좌우를 더 크게할 경우가 많으시죠. 그럴 경우, 이미지가 커지고 출력할 때 과부하가 생기기도 합니다. 즉, 큰 이미지의 딱 화면 크기 정도만 가져와서 표현을 하게 되면, 과부하가 생길 이유가 없겠죠. 하늘색 부분만 보이도록 하는 것이지요! 소스는 다음과 같습니다. RectF rect = new RectF(0, 0, screenSizeWidth, screenSizeHeight); // 네모 상자 크기 지정 Matrix matrix = new Matrix(); matrix.mapRect(rect); matrix.setTranslate(mOffsetX, 0); // offset설정 mainCanvas.drawBitmap(mainBmp,mat.. 더보기