소프트키 활성화하기. (공통)

반응형

※ 이 내용은 안드로이드 디바이스 내에서도 루팅 (최고 권한 습득)을 필요로 하는 글입니다.

루팅에 대한 지식이 전혀 없으신 분이나 처음 접하시는 분들은 이 포스트에 있는 내용을 절대 따라하지 마세요. 따라하시다가 생긴 디바이스의 고장/결함은 '절대' 책임지지 않습니다.


준비물 : 각 디바이스별 framework-res.apk, apktool or apk manager


조건 : 안드로이드 4.0 (아이스크림 샌드위치)


소프트키란?

아이스크림 샌드위치 (안드로이드 4.0)에는 소프트키라는 것이 있습니다. 이 소프트키는 갤럭시 넥서스의 이미지를 보시면 정확하게 알 수 있습니다.



위 사진에 빨간색 상자로 가리킨 부분이 바로 소프트키입니다. 실제로 반터치버튼이 제공되어 있으면서 아이스크림 샌드위치를 업그레이드 받은 디바이스는 소프트키가 비활성화 되어 있는데요. 물론 화면이 차지하는 비중이 좁아지긴 하겠지만 자신이 꼭 소프트키를 사용해야할 이유가 있다면 참고해두시기 바랍니다.


먼저 자신의 디바이스에서 framework-res.apk를 추출해옵시다.

--> 루팅을 하시고, Root Explorer에서 /system/framework/framework-res.apk를 복사해옵니다.


복사한 framework-res.apk를 아래 사진과 같이 폴더에 삽입합니다.

--> apk manager 디렉터리 내에 modding 부분.



다음, Script를 실행시켜 디컴파일을 해보겠습니다.



 


현재 프로젝트가 framework-res.apk를 향하고 있는지 확인합니다.

향하지 않고 있다면 22번을 입력하여 프로젝트를 선택하시고, 9번을 입력하여 디컴파일 합시다.


디컴파일한 폴더는 projects 폴더이며 해당 폴더 내 \res\values\bool.xml을 메모장이나 편집기로 열도록 합시다.




그런 다음 config_showNavigationBar 부분에 false를 true로 고쳐서 저장합시다.

반드시 유형은 UTF-8로 저장하셔야 합니다.


저장이 끝났으면 다시 apk manager script를 실행시켜 해당 파일을 컴파일합니다.

컴파일 도중 오류는 정확하지 않은 저장과 잘못된 코딩으로 인해 일어나므로 반드시 log를 참고하셔서 수정해주세요~


 


컴파일이 끝나면 위와 같은 메시지가 뜹니다. n을 입력합니다.

시스템 apk이긴 하지만 y를 입력할 경우 별도의 인증방식을 부여받는데, 뜸한 디바이스의 경우 이 것을 제대로 인식하지 못해 일부 디바이스는 벽돌을 불러 일으키기도 하니 가급적이면은 하지 않는 것이 좋습니다.


모든 컴파일이 끝났으면 ...


 


처음에 들어갔었던 modding 디렉터리에서 'unsignedframework-res.apk'파일이 나타납니다. 그것을 이름을 바꾸어 저장하신 후 퍼미션 644로 적용시켜 디바이스에 넣어두도록 합시다.

반드시 퍼미션 644를 적용시키지 않으면 시스템에 문제가 있을 수 있으니 퍼미션 적용은 필히 해두도록 합시다.

반응형

Tistory Comments 21

  • DJ Noblesse

    언사인드 apk 그대로 적용하면 보통은 벽돌되지 않나요???
    저 같은 경우는 순정 framework-res.apk에다가 변경된 부분만 추가시키는 방식으로 사용합니다만....?

    • DJ Noblesse

      정정합니다..
      컴파일된 언사인드에서 수정된 부분을 추출한 뒤
      순정 framework-res에 추가,압축시키는 방식입니다.

      (암호가 맞게 입력되었는데도 불구하고 암호가 틀리다고 나오는 바람에 댓글 수정을 못 하고 있습니다.)

    • Favicon of https://blog.neonkid.xyz BlogIcon Neon K.I.D

      솔직히 어느 쪽이든 벽돌되지 않습니다. 컴파일을 마친 후 순정에서 파일을 추가하셔도 되고, 언사이드에서 그대로 파일 이름만 바꿔서 적용해도 벽돌되지 않습니다. 실제로 저는 언사이드에서 그대로 적용한 경우가 더 많았답니다. 만일 벽돌이 나더라도 컴파일 중에 오류가 났다면 예외겠지만 말이지요 ^^; 혹시 저의 디바이스만 그랬던 것일수도 있으니 참고하도록 하겠습니다.

  • 정말

    정말 죄송합니다만...
    xml파일을 어떻게 UTF-8파일로 저장하나요? ㅜㅠ

    • Favicon of https://blog.neonkid.xyz BlogIcon Neon K.I.D

      파일 메뉴에서 다른 이름으로 저장을 클릭하시면 밑에 파일 형식이라고 있습니다. 기본값으로 ANSI로 지정되어 있는데요. 이 부분을 UTF-8로 고쳐주시면 됩니다~

  • jeunue2

    cm9 에 적용중인데 부팅 시간이 원래 이렇게 긴지 궁금하여 질문드립니다

    • Favicon of https://blog.neonkid.xyz BlogIcon Neon K.I.D

      어떤 디바이스(폰)에서 적용한거신지요?
      디바이스마다 다를 수 있습니다만 framework-res.apk를 수정하셔서 제대로 컴파일이 된 하에는 부팅 시간이나 시스템 동작 속도에 영향을 미치지 않습니다.

  • 아갤럭시s2lte는왜이래

    아갤럭시s2lte는왜이럴까요 계속 벽돌되네요 하..안되는폰도잇나요?

    • Favicon of https://blog.neonkid.xyz BlogIcon Neon K.I.D

      안되는 디바이스는 없습니다. 혹여 누락이 되었다거나 이렇지는 않았는지요? 확실하고 정확한 컴파일이 되어야 벽돌이 되지 않습니다.

  • doobyeri@naver.com

    안녕하세요?? 루팅한 스마트 폰 초보 유저입니다..소프트 키를 만들기 위해 약 2일 정도를 소비해서 만들어 봣는데... 생성은되는데 많은 오류를 뿜더라고요...ㅠㅜ
    그래서 그런데 제가 저의 프래임워크 파일을 드릴테니 수정해서 보내주시면 않될까요?? 혹시나 하고 덧글 달아 봄니다... 답변은 위 아이디 주소에 보내 주셔도 되고 그냥 여기 답글써주셔도 됨니다....ㅎ

    • Favicon of https://blog.neonkid.xyz BlogIcon Neon K.I.D

      웬만해서 다른거 안건드린다면 오류가 나지 않을텐데요. 혹시 그 framework-res.apk 파일이 원본이 아닌 경우라면 원본을 통해서 수정 바랍니다~

    • doobyeri@naver.com

      Crt 효과를 적용한것과 아닌건(순정) 으로 해보앗는데... 컴파일에서 문제가 잇엇는지... 않되네요..ㅠㅜ.......ㅠㅜㅠㅜ 제발 부탁 드릴께요..ㅠㅜ 제 프웍 보내 드릴테니 만들어 주실순 없나요??

    • Favicon of https://blog.neonkid.xyz BlogIcon Neon K.I.D

      제가 쓰는 디바이스가 아니면 그 구조가 어떻게 되어있는지 정확하게 모르기 때문에 제가 섯불리 손을 대드릴 수는 없습니다. 정확하게 UTF-8로 저장하신거 맞으시다면 안될리가 없답니다.. ㅎㅎ 정확하게 framework-res.apk에서 어떤 부분이 어떤 오류로 났는지는 모르겠지만 다시 한 번 해보세요~

    • doobyeri@naver.com

      제 기종은 kt 갤럭시s2 이고요 빌드번호는 UE18 입니다 ㅎㅎ

    • Favicon of https://blog.neonkid.xyz BlogIcon Neon K.I.D

      보냈습니다~ 확인해보세요.

  • kbg06247

    루트익스플로러로도 수정가능하나요?

    • Favicon of https://blog.neonkid.xyz BlogIcon Neon K.I.D

      안됩니다.. ㅎㅎ Root Explorer로 수정하시게 되면 충돌 가능성도 있고 apk manager를 거치지 않으면 사람이 읽을 수 없는 언어로 인식이 되어 수정을 할 수 없게 됩니다.

  • Favicon of http://macju.styx.in BlogIcon blisslu

    빌딩하고 단말기에 복사하고 644 먹이고 재부팅중.....

    과연.....

    일단 부팅로고 빙글빙글 ...

    무한부팅이네여 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

    젠장............퓨.........

    • Favicon of https://blog.neonkid.xyz BlogIcon Neon K.I.D

      일부 디바이스에서 빌딩 후 무한 부팅현상이 있어 말씀드립니다. 무한부팅이 일어나시는 디바이스는 빌딩 후 빌딩된 unsigned..apk에서 resources.arsc파일을 원본 framework-res.apk에 끼워넣으시고 끼워넣으신 framework-res.apk를 644 조정 후 적용하시면 됩니다~

  • 김기한

    안녕하세요! 소프트키를 제가 개발한 어플을 실행시에만 제거하고, 그 어플을 종료할때 다시 되돌려 놓고 싶은데.. config_showNavigationBar 를 true로 바꿀 수 있는 코드가 가능할까요?...
    물론 루팅을 한 상태입니다.... 으으으.. 제 어플에서만 없애버리고 싶은데.. 잘 안되네요 ㅠ

    • Favicon of https://blog.neonkid.xyz BlogIcon Neon K.I.D

      소프트키는 framework-res의 한 리소스로, 그를 제거하기 위해서는 SDK의 API에 등록된 소스가 있어야 하는데, 글쎄요. 아직까지 그런 소스를 발견한 바는 없다고 합니다 ㅠㅠ
      아마 풀스크린 API를 등록해 개발한다면 없어질 것 같기도 한데, 글쎄요. 저는 소프트키를 사용하지 않고 하드웨어 키를 사용하는 유저인지라 아예 설정하지 않고 사용해서 거기까지는 정확하게 설명해 드릴수가 없군요..