https://www.chromium.org/developers/how-tos/android-build-instructions
사실 저 위에 내용이 다 나와 있지만 헷갈리니 보기 쉽게 설명!
- depot_tools package 설치
1
| https://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html
|
- 소스코드 다운로드!
1 2
| $ mkdir ~/chromium && cd ~/chromium ~/chromium$ fetch --nohooks android
|
만약 Linux 버전으로 checkout 된 버전이 존재한다면 fetch하지 않고 .gclient 파일에 target_os = [‘android’]를 추가해주면 된다.
- 소스코드 빌드하기
Chromium을 빌드 할 수 있는 방법은 두가지가 있다.
GYP build와 GN build가 있는데, 나는 GYP build로! (원래는 GYP build도 됬었는데, 현재는 제대로 지원안하는 것 같고 GN build로 해야 제대로 되는 것 같다)
1 2
| ~/chromium$ echo "{ 'GYP_DEFINES': 'OS=android target_arch=arm', }" > chromium.gyp_env ~/chromium$ gclient runhooks
|
1 2 3
| $ export GYP_CHROMIUM_NO_ACTION=1 $ ~/chromium/src$ gn args out/Default
|
1 2 3 4
| target_os = "android" target_cpu = "arm" is_debug = true
|
1 2
| ~/chromium$ src/build/install-build-deps-android.sh
|
OpenJDK 설정 업데이트
-> 없으면 설치법은 (https://www.davidlab.net/ko/tech/how-to-setup-android-dev-env-on-ubuntu-part1/)
1 2 3 4 5 6
| sudo update-alternatives --config javac sudo update-alternatives --config java sudo update-alternatives --config javaws sudo update-alternatives --config javap sudo update-alternatives --config jar sudo update-alternatives --config jarsigner
|
1
| ~/chromium/src$ gclient sync
|
- APK 빌드& 설치
1
| ~/chromium/src$ . build/android/envsetup.sh
|
device 연결 됬는지 확인!
1
| third_party/android_tools/sdk/platform-tools/adb devices
|
빌드를 full browser, Content shell, Webview shell 버전 각각 다르게 할 수 있다.
1 2
| ~/chromium/src$ ninja -C out/Release chrome_public_apk ~/chromium/src$ build/android/adb_install_apk.py out/Release/apks/ChromePublic.apk
|
다른 버전들 빌드 방법은 위에 있는 크로미움 사이트에서 확인가능!
- 설치
1 2
| ~/chromium/src$ build/android/adb_install_apk.py out/Release/apks/ChromePublic.apk ~/chromium/src$ CHROMIUM_OUTPUT_DIR=$gndir build/android/adb_install_apk.py $gndir/apks/ChromePublic.apk
|