Init Logo, Boot Animation 변경

|
무작정 링크

http://hybridego.net/1309

http://dev.odroid.com/projects/odroid/forum/81

#./rgb2565 -rle < test.raw > initlogo.rle

<> 같이 넣어서 커맨드 입력 해주세요

frameworks\base\core\res\assets\images 

  • 시작 애니메이션 - 완료

    • 회전된 이미지 & 소스코드수정으로 완료
    • freamwork/base/cmds/bootanimation/*:277
    • frameworks\base\core\res\assets\images  : 이미지 파일 위치
    • - freamwork/base/cmds/bootanimation/BootAnimation.cpp:311 수정
                  - GLint offset = (1-(t-floorf(t))) * mAndroid[1].w;  -> GLint offset = (t-floorf(t)) * mAndroid[1].w; 수정
  • 초기 화면:

    • system/core/init/init.c:875
  •  수정 포인트

    •  무 작정 링크

      • #./rgb2565 -rle <test.raw> initlogo.rle

        • bmp 해더로 인해 이미지가 밀리는수가 있다..
    • rle 변환 수정
    • 이미지 정상 출력 확인 - H/W pormat에 맞게 수정 해야 함
              - build/tools/rgb2565/to565.c:109 수정
                  - color = to565(in[0],in[1],in[2]); -> color = to565(in[2],in[1],in[0]);
  • 화 면 로테이트

    • frameworks/policies/base/phone/com/android/internal/policy/impl/PhoneWindowManager.java : 2126

--------------------------------

out/host/linux-x86/bin 에 보면 rgb2565 이라고 그림 변환하는 툴이 있습니다.

사용법
#./rgb2565 -rle <logbmp_file> initlogo.rle 이렇게 쓰면 initlogo.rle 파일을 뱉어내네요

bitmap 형식은 24BITMAP으로 만들어야 된다고 합니다.

만들어진 initlogo.rle파일은 안드로이드 NFS로 잡혀있는 맨 상위 디렉토리에 쏙~! 집어넣고 부팅하면 그림이 보입니다. ㅋ

-------------------------------

안드로이드 logo를 만들기 위해 알아 두어야 할 사항.

기본적으로 rle(run-length-encoding)파일을 이용해서 한다.

부팅초기에 나오는 메세지를 참조하다 보니 initlogo.rle를 찾는데 이 rle 파일을 만들기 위한 방법을 찾다 보니 out/host/linux-x86/bin 에 보면 rgb2565 이 있어서 따로 구현하지 않았다.

logbmp_file은 기본적으로 gimp tools을 통해 .raw file 형태로 변환해서 아래의 작업을 해야 한다.

사용법은 간단하네.

rgb2565 -rle <logbmp_file> initlogo.rle 이런식으로 하면 만들어 진다. (< 도 같이 표현해야 한다)

android/system/core/rootdir/Android.mk 아래와같이 정의 되어있으므로 out/target/product/xxxxx/root 폴더를 지우고 다시 빌드

하면 정상적으로 카피되서 boot.img가 생성된다.

file:=$(TARGEt_ROOT_OUT)/initlogo.rle

$(file):$(LOCAL_PATH)/initlogo.rle | $(ACP)

$(transform-prebuilt-to-target)

ALL_REBUILT += $(file)

------------------------

사실 부트로더 로고 다음으로 나올 것은 커널 로고 인데요, 커널 로고는 건너 뛸 생각 입니다.

이미 저희 포럼에 멋지게 장형기 소장님께서 글을 남겨놓으셨거든요.

아래 주소를 들어가 보시면 커널 로고를 자신만의 것으로 이쁘게 바꾸는 방법을 찾아 보실 수 있습니다.

커널바꾸기 강좌 : http://forum.falinux.com/zbxe/?mid=ezboard&page=3&document_srl=461805

Step 1. Android Init Logo 준비

우리가 보드에서 안드로이드를 올리고 보면 총 4단계의 로고를 보게 될 것이라고 앞장에서 말씀드렸습니다.

Bootloader Logo → Kernel Logo → Android Init Logo → Android Animation Logo

이렇게 4단계에 거쳐서 부팅로고를 보게 됩니다.

그 그림을 BMP 파일로 저장하는데 반드시 24Bit로 저장을 합니다.

그럼 이제 준비된 BMP 파일을 가지고 RLE 파일을 생성해 봅시다.

# cp initlogo.bmp {Android_SRC}/out/host/linux-x86/bin/.
# cd {Android_SRC}/out/host/linux-x86/bin
# ./rgb2565 -rle <initlogo.bmp> initlogo.rle
384018 pixels # mv initlogo.rle {Android_RootFS}/.

자! 만들어졌어요.

그럼 우리 파일시스템에 복사해 놓고 한번 안드로이드를 껐다가 켜 볼까요?


----------------------


-------------------------


-------------------------

'Android 개발 > 팁 / 활용정보' 카테고리의 다른 글

갤럭시 넥서스 루팅  (0) 2011.12.28
android emulator 저장소 늘리기  (0) 2011.10.30
adb shell 명령어  (0) 2011.08.05
adb logcat  (0) 2011.05.31
google map api  (0) 2011.05.18
And