커스텀 펌웨어/안드로이드
1. 개요
안드로이드의 커스텀 펌웨어를 다루는 문서이다.
2. 상세
대표적인 커스텀 펌웨어는 CyanogenMod/Lineage OS와 Omni, SlimRoms, AOKP, MIUI, Pixel Experience, AEX등이 있다.(삼성 순정도 AOSP 기반이라서 커펌이라고 볼 수 있다.) 이 롬은 수많은 파생롬이 있으며, 부트로더가 뚫린 글로벌 기종이라면 다 나온다 봐도 과언이 아닐 정도로 지원기종이 많고, 원 제작팀이 손을 안 대는 기종이어도 XDA에서 각 기기별 포럼을 중심으로 만들어지기도 한다. 아예 순수한 안드로이드인 AOSP를 기반으로 해서 만들어지기도 한다. 만약 자신의 기종이 구글 넥서스처럼 거의 모든 나라에서 발매되는 글로벌 기종이라면 저기서 여러 좋은 것들을 찾아볼 수 있을 것이다. 국내에서만 발매되는 내수 기종이라도 디벨로이드에서 일부인 경우도 있지만 만든다. XDA뿐만 아니라 맛클에서도 펌웨어를 찾을 수 있다.
아이러니하게도 커스텀 펌웨어인데 오히려 최신의 안드로이드를 순정으로(AOSP) 즐기기 위해 설치하는 유저들도 상당수 존재한다. 이는 제조사나 통신사의 애플리케이션이나 커스텀이 들어간 경우가 많기 때문. 제조사의 자체 기능과 커스텀은 그렇다 쳐도, 통신사의 악질적인 커스텀과 앱 강요는 답이 없다. 알림창이며 멀티태스킹 창이며...
요즘은 여러 개발자분 덕분에 많은 커스텀 펌웨어가 생겨났고 설치하기도 간편해졌다. 이런 개발자팀들이 팀원을 늘리고 지원 기종을 늘리면서 점점 커지면 어느 순간 돈을 번다고. 대표적인 사례가 CyanogenMod. 특히나 제조사의 순정기반의 롬들도 많이 보인다. 일부 롬들은 루트 권한이 부여되어 있지 않아 금융 앱과 루팅을 잡는 게임도 이용 가능하다.
다만, 주의할 점은 커스텀 롬을 선택할 때 롬 선택을 잘해야 한다. 다른 사람들이 좋다고 하는 롬도 실제로 사용해보면 생각보다 많이 안정화가 되지 않아서 오류가 많이 일어난다. 특히 Nightly 버전의 경우에는 크래시가 자주 일어나는 편. 또한 롬 설치시 개발자분들이 올린 설치법을 꼭 읽어보면서 하자. 당신이 지금까지 알고 있던 롬 설치법만 믿고 아무 롬이나 플래싱하다가 벽돌이 되면 정말로 우울해지지 않겠는가. 또한 IMEI가 날아가는 무시무시한 사태가 일어나서 전화/문자를 전혀 못하게 될 수도 있으니 난 안 그러겠지 하고 뻐기지 말고 백업(적어도 EFS 부분은)은 정말 잘 해두자. 이런 경우에는 초기화 순정 롬으로 밀면 복구가 되긴 하지만 이것도 안되면 서비스 센터 가서 돈을 지불하고 재발급 을 받아야 한다.
또한 제조사마다 막는 경우가 있다. 삼성은 일부 국가 모델을 제외하면 직접적으로 부트로더 락을 걸지는 않지만, 대신 삼성 Knox의 기능 중 부트로더단에 변조 바이너리 적용 시 Knox 워런티의 플래그를 0에서 1로 하드웨어적인 방법으로(eFuse) 영구적으로 재설정해버려 다시 되돌릴 수 없게 해놓았다. 이렇게 되면 Knox 기능과 삼성페이, 기타 Knox 워런티와 연동된 모든 기능에 제한이 걸리는데다 EFS 파티션이 손상되어 IMEI가 증발해도 재발급을 해주지 않는다. (하드웨어적으로 라이팅이 막히는 게 아니라 삼성 내부 정책이다.) 워런티가 손상되어도 상단에서 말한 그 외 기기 문제는 무상 AS 사유에 해당되는 문제에 한해 AS기간이 남아있다면 무상 AS는 가능하다. 이렇게 갤럭시 와이드2 공신폰을 아예 평범한 와이드2로 만들어 버릴 수도 있다! 왜냐하면 갤럭시 와이드2 공신폰은 Knox 재설정으로 인터넷을 차단시키며, Knox 워런티가 1이 되면 Knox 기능은 아예 못 쓰게 되기 때문이다. 그래서 설명서에도 공장 초기화 이후 초기 설정을 진행할 때 와이파이나 데이터 네트워크에 접속하라고 적혀 있다. 요즘은 RMM State와 KG State로 시스템 변조가 감지되면 부팅을 중단 시켜 루팅하기가 어려워졌다.
LG는 LG G4부터 한국 내수용에는 부트로더에 락을 걸어버린다. 언락이 매우 복잡한데, 언락하지 않고 롬을 올리면 Secure booting Error가 뜨면서 하드브릭이 걸린다. '''사용이 안된다.''' 이때는 QPST로, 복구 가능성이 거의 희박한 Bulk브릭이 걸린다면 메인보드 교체 그 외에 외산 제조사인 샤오미의 경우는 부트로더를 언락해도 아무 기능 영향이 없지만 대신 부트로더 언락하는 데 시간이 걸린다. 기본적으론 72시간이 걸리는데 기기마다 다르다. 어떤 기기는 360시간이나 720시간이 걸리기도 하고 심할 경우 1440시간이나 걸린다. 화웨이의 경우 2018년 5월부터 아예 부트로더 언락을 막아놨다.
2.1. 기타
'''커롬의 끝은 순정이다'''라는 말이 있듯이, 롬을 사용하다 보면 어느 순간 질리거나 금융 앱에 걸려서 다시 순정으로 내려오는 이들도 많다. 일부 커스텀 펌웨어는 금융 앱 사용이 가능하다. 다만 중국 기기 사용자의 경우는 또 다르다. 오히려 중국 순정보다 커롬이 더 나은 경우도 있고. 중국 제조사 순정은 아예 눈에 겨워보지도 않고 아예 안 돌아오는 경우도 있는 셈. 사실상 제조사마다 다르다. 공식 안드로이드 업그레이드가 중단된 폰에 최신 안드로이드를 올리기 위해서 커스텀 펌웨어를 쓰기도 한다. 공식 순정 안드로이드 업그레이드는 4.1 젤리빈에서 중단됐지만 커스텀 펌웨어를 통해 8.1 오레오까지 업그레이드 할 수 있는 갤럭시 S2가 대표적. 허나, 결국 9.0 파이는 물론 10 까지 먹게 된다 이런 여러가지 제약 때문에 중국 기기가 가격도 싸고 가성비가 좋다 보니 중국의 기기들이 개발자들한테 인기가 많아 개발이 잘되고 있다. 홍미 노트 5가 그 예.
주로 커스텀 리커버리를 사용해서 올리며, 이 커스텀 리커버리는 삼성의 경우 오딘, LG의 경우 Flashify 등의 앱 혹은 KDZ, 팬택/구글/샤오미의 경우 fastboot 등을 사용하여 올린다.
여담으로 커스텀 롬에 물든 사람은 순정 펌웨어는 전혀 사용하지 못하고, 폰을 살 때도 롬 지원이 잘 되는 넥서스 혹은 비슷한 하드웨어를 가진 원플러스 시리즈를 사는 경우가 많다. 다만 유의할 것이 있는데, 넥서스 5X나 6P혹은 VoLTE이동성을 지원하는 국내외 단말을 제외한 예전의 단말의 경우에 한해, SKT, KT는 통신규격, 주파수가 해외랑 비슷하여 글로벌 규격의 롬이 호환이 되지만 LG U+는 독자 규격의 롬을 만들어 XDA든 어디든 어떤 롬도 플래싱해서 쓸 수 없다. 즉 VoLTE이동성이 되지 않는 예전의 유플러스 단말로 유플판 순정 펌웨어는 전세계에서 유일하게 엘지 유플러스에서만 쓰기 때문이다. 다만 외산 폰인 기기들은 자급제로 구별되기 때문에 정발이 되지 않은 이상 U+에서 사용을 할 수 없다. 다만 Volte 패치를 받은 기기의 같은 AP를 탑재한 미정발 외산 기기라면 그 기기의 EFS를 사용해 패치하여 Volte를 가능하게 패치할 수 있다. 샤오미의 경우 동일 AP를 많이 쓰기때문에 패치 없이도 그냥 Volte가 되는 기기도 있으며 패치도 아주 쉽게 가능하다.
FM 수신칩을 활성화하려고 설치하는 경우도 있다. 이 경우 펌웨어 설치 후 Spirit FM앱을 이용한다.
3. 종류
문서 참조.
4. 설치 방법
커스텀 펌웨어 종류마다 설치 방식이 다른 경우가 있다. 커스텀 펌웨어 파일이 첨부되어 있는 글을 참고하거나 XDA에서 찾아보면 나올 것이다.
- CWM또는 TWRP를 리커버리 파티션으로 플래싱. 삼성의 경우 Odin, LG의 경우 루팅후 Flashfire 같은 앱[1] , 구글 또는 샤오미는 fastboot를 이용한다.
- 플래싱 후 리커버리 진입
- System, Data, Cache, Dalvik Cache를 wipe한다.
- Zip 파일 형식으로 되어 있는 커스텀 펌웨어를 플래싱한다. 개발자의 지시대로 커널 또는 Gapps를 설치해야 할 수 있다.
5. 문제점
[image]
'''XDA Memes에서 만든 현재 커스텀 펌웨어의 문제를 지적한 짤.'''
사람들이 커스텀 펌웨어를 올리는 가장 큰 이유는 다름아닌 순정 펌웨어와 다른 최적화와, 일반적으로 순정 펌웨어에서 사용할수 없는 기능들을 사용할수 있어서 올릴것이다. 하지만 시간이 지나면서 대부분의 제조사가 자신들의 UI에도 커스텀 펌웨어에 있던 기능들을 대부분 지원하기 시작했고. 시간이 지나면서 커스텀 펌웨어의 전성기 시절인 안드로이드 4.1~6.0 당시의 명성은 찾아보기 힘들어졌다. 요즘 커스텀 펌웨어를 올린다 하면 "순정 펌웨어에서 대부분 되는 기능인데 왜 올려?"라는 반응이 흔하다. 그만큼 커스텀 펌웨어는 순정 펌웨어와 다른 최적화를 원해서, 순정 펌웨어하곤 다른 AOSP의 느낌을 경험하고 싶어서가 아닌 이상 '''기존 커스텀 펌웨어가 가지고 있던 명성이 사라져 더이상 설치할 메리트가 없다는 것이다.'''
요즘 나오는 커스텀 펌웨어들이 대부분 설치해보면 똑같고, 기능도 하나같이 다를게 없다는 것도 하나의 큰 문제점이다. 커스텀 펌웨어/안드로이드/목록에 가면 매우 많은 종류의 커스텀 펌웨어가 있지만, 사실상 저 목록중 몇개를 설치해보면 이름과 로고 빼고 다를게 뭐지..? 라고 생각이 들것이다. 대부분 내세울만한 기능들이나, 특징이 없고 하나같이 AOSP 기반에 그냥 몇몇개만 추가한게 대부분이라고 생각이 들것이다. AOSPA, Resurrection Remix 같이 인지도가 높은 펌웨어 또한 예전보다 특징과 대표적인 기능들이 많이 사라지고, 달라질만한게 느껴지지 않는다는것도 한몫 한다. 이러한 문제를 인지한 개발자들도 몇몇 있나본지, UI를 자신만의 스타일로 만들거나[2] 아니면 아예 보안에만 집중한 커스텀 펌웨어를 만드는 등 여러가지 시도를 하는듯 하다.