[정보/팁] 카카오톡 리밴스드 등 직접 빌드해보자 (ㄷㅅ)
갤로그 가기


자꾸 APK 공유 방 링크를 올리니 짤려서 그냥 그 방 링크 대신 직접 패치할 수 있는 툴을 만들어 봤음


사실 매니저로 되긴하지만, 매니저는 속도도 느리고, 메모리 사용량도 꽤나 빡빡해서 정신적 건강을 위해 PC로 할것을 권장함 아니면 termux로


https://git.naijun.dev/ReVanced/revanced-build-script

revanced-build-script

revanced-build-script

git.naijun.dev


요구 사항
1. 파이썬 최소 3.8 이상 설치

2. 자바 버전 17이상 25미만 (graalvm은 몇몇 컴포넌트가 빠져서 안되는듯)

3. git 설치 (선택 사항, 있으면 좋음)

4. 당연히, 패치할 APK 필요


테스트는 Linux에서 했지만, 파이썬이랑 자바이다 보니 윈도우에서도 작동할것으로 보임, 당연히 termux에서도 작동 확인됨

파이썬이나 자바설치는 알려주는 글이 워낙 많으니 생략하겠음


윈도우 사용시 cmd보다는 파워쉘이나 윈도우 터미널을 이용할걸 추천함 CLI 환경이다 보니 그쪽이 보기에 편하거든


먼저, git이 깔려있다는 전제하에 프로젝트를 다운받아야함

git clone https://git.naijun.dev/ReVanced/revanced-build-script.git


이렇게 하면 프로젝트가 클론됨. 그 다음
cd revanced-build-script
하면 터미널로 그쪽 폴더로 들어갈 수 있음

만약 git이 없다면 직접 페이지 들어가서 프로젝트 전체를 zip으로 받고 압축풀고 cd명령어로 들어가면 됨

그 다음 터미널에 패치 명령어를 써야함


밑의 명령어는 카카오톡을 기준으로 설명할게 물론 내 패치가 있는 다른 앱들도 가능함 (ㄷㅅㅇㅅㅇㄷ)

모든 환경에서 가능

예시 명령어로는 다음과 같음

python build.py --output out --apk (패치할 앱의 경로) --package (패치할 앱의 패키지명) --run --include-universal

--output: 패치에 필요한 컴포넌트나, 패치된 apk가 저장될곳을 지정하는거임, 생략해도 무방, 기본값은 output/임

--apk: 패치할 apk 경로를 적어줘야함 아마 윈도우에선 터미널앱에 파일을 드래그드랍 하면 파일 경로가 자동으로 써지는걸로 알고있음

--package: 패치할 apk의 패키지명을 적어줘야함 카카오톡일 경우는 아래 사진 참고
--run: 실제로 패치를 진행할건지 패쳐에 알려주는거, 생략하면 패치를 할 수 있는 명령어만 주어짐

--include-universal: 패키지명을 포함하는 여러 공용 패치도 표기할건지 알려주는거, 패키지명 변경같은걸 안할거라면 생략해도 무방, 여기선 붙이겠음


이 밑에는 선택적 플래그


패치 관련 플래그로는

--exclusive: 선택된 패치만 활성화 할것인가 (기본값 true)

--no-exclusive: --exclusive를 쓰지 마세요

서명 관련 플래그로는

--keystore: keystore 경로 지정

--keystore-password: keystore의 비밀번호

--key-alias: keystore의 alias

--key-password: alias의 비밀번호


추가적으로 패키지명 변경같은 유니버셜 패치를 적용하고 싶으면 --include-universal 을 뒤에 적어주면 공용패치도 표기됨

여기서는 붙여서 패키지명을 변경한 클론 카톡을 만들겠다고 가정하겠음


나는 이런식으로 명령어 씀



24b0d121e09c28a8699fe8b115ef046a7e6eee
1



이런식으로 패치를 진행하게되면 패치에 필요한 컴포넌트들을 자동으로 받을거임 결국


1ebec223e0dc2bae61abe9e74683716c1ab782795bf63ccfac2e80f73ecd0801955b3cbe7fd3c999b3172

이런 화면이 표기됨, 위 아래 화살표로 커서를 움직일 수 있고, 스페이스바로 켜거나 끄거나 할 수 있음

일반적으로는 기본 선택된 패치만 써도 큰 문제가 없지만, 나는 클론 카톡을 만들거기때문에 Change package name을 선택해야함, 화살표로 움직여서 스페이스바를 눌러 선택

(ㄷㅅ는 안그러지만, 카카오톡의 패키지명을 변경할때는 밑에 Ignore Check Package Name 패치도 선택해줘야함, 안그러면 앱 실행시 튕김)


다 선택했으면 엔터로 다음 단계로 넘어가면 됨



1ebec223e0dc2bae61abe9e74683716c1ab782795bf63cc9ab2180f73ecd08016183a3260d2fadc8c33

옵션이 필요한 패치가 몇몇가지가 있는데 이런 패치를 선택했으면 이후 패쳐에서 옵션을 따로 지정할건지 물어볼거임, 패키지명 변경시 기본값으로 뒤에 .revanced를 붙여주니 기본값으로 충분하니 딱히 값 안주고 엔터만 쳐서 넘어가도 무방, 다른 패키지명으로 바꾸고싶다면 y를 입력하고 엔터누르면 지정 가능



1ebec223e0dc2bae61abe9e74683716c1ab782795bf63ccbaa2180f73ecd08014afd2199b5274a8e824

차례대로, updatePermissions, updateProviders가 나오는데 이것들은 y로 true로 바꿔주는게 설치 충돌 가능성을 줄여줌



1ebec223e0dc2bae61abe9e74683716c1ab782795bf63cc5ac2080f73ecd08018f437f48bcc03d300d5

알려준데로, false를 지우고 true를 입력해주자, 그 뒤에 나오는 updateProviders도 비슷하게 진행하면 됨


카카오톡을 패치한다면 기본값으로 모델 변경이 있는데, 기본 값인 SM-X926N도 서브디바이스가 활성화되니 그냥 넘어가도 무방, 바꾸고 싶다면 위의 과정이랑 비슷하게 옵션 설정해주면 됨


이런식으로 옵션을 다 지정해줬으면 자동으로 패치가 진행될거다




1ebec223e0dc2bae61abe9e74683716c1ab782795bf63dc9ae2d80f73ecd08014637cc2a76e9704a30d76

이제 out폴더로 들어가면 patched.apk가 있을거임, 이제 이걸 adb로 설치하든, 스마트폰으로 파일을 옮겨서 설치하든 하면 됨


참고로 이렇게 만든 apk는 revanced-cli에서 지정한 키스토어로 서명되어있으니 너만의 서명을 하고싶다면, 이후에 apksigner로 서명하던가 패치 명령어를 실행할때 선택적 플래그를 보고 잘 지정해주길 바람


termux도 이와 유사한 방법을 거치면 될거임


궁금한점 있으면 댓글 남겨줘

  • 0 고정닉 추천수0
  • 0
더보기

다음 검색

제공 Daum검색