xtring.dev

[React Native] Android + Hermes? 그게 뭐야? 본문

Front-End/React Native

[React Native] Android + Hermes? 그게 뭐야?

xtring 2020. 10. 29. 13:34
반응형

 

 

 

 

React Native

 

 

 

 

 

헤르메스(Hermes)는 React Native에서 안드로이드 앱을 구동할 때 최적화하기 위해 사용합니다.

 

 

 

기존의 React Native 앱은 '실행 시점'에서 JavaScript를 bytecode로 컴파일합니다. 하지만 헤르메스를 사용하면 '빌드 시' bytecode로 컴파일을 하여 빌드 파일의 크기를 줄여주고, 실행시점에서의 컴파일이 필요없게 되어 초기 실행 속도가 개선됩니다.

 

 

 

따라서 헤르메스(Hermes)의 이점으로는 아래 세가지가 있습니다.

1. 앱 실행(launch) 속도가 빨라집니다.

2. APK 사이즈를 줄일 수 있습니다.(실제 20%까지 줄여지는 것을 눈으로 확인함)

3. 메모리 사용량을 줄일 수 있습니다.(20% 절감)

 

 

 

 

 

 

이렇게 좋은 헤르메스는 사용법도 아주 간단합니다.

 

 

 

먼저, 프로젝트의 android/app/build/gradle 파일을 엽니다. 그리고 아래 두 값을 false에서 true로 변경합니다.

...

project.ext.react = [
    entryFile: "index.js",
    enableHermes: false,  // clean and rebuild if changing
]

...

def enableHermes = project.ext.react.get("enableHermes", false);

...

이 두개의 값만 설정하면 Hermes를 사용할 준비가 완료되었습니다.

 

 

 

 

최근 RN에서 업데이트를 통해 이제 Android 뿐만 아니라 iOS도 지원을 한다고 알고 있습니다. 다음번에는 iOS 파일도 Hermes를 적용해 볼까합니다. 추후에 내용을 추가하겠습니다!

반응형
Comments