ReactNative0.70版本發佈,默認Hermes引擎

語言: CN / TW / HK

作為跨平台開發框架的明星產品React Native迎來了0.70版本的更新,此次更新主要是內容是Hermes作為默認js引擎,針對Godegen的新統一配置,支持Androi端CMake的構建以及有關新架構文檔的更新説明。

新架構文檔

更新了有關新架構的文檔介紹,可以通過這個文檔獲取有關升級指南、示例代碼及相關教程等,還有關於舊架構存在的弊端,以及為什麼採用新架構的問題説明。

Hermes作為默認js引擎

React Native 0.70是第一個默認啟用Hermes的版本。

Codegen新的統一配置選項

新版本0.70中,引入了一種統一的方式來定義iOS和Android的Codegen規範。

現在可以直接在RN原生項目的package.json中統一進行如下定義配置: "codegenConfig": { "name": "CustomAnimationView", "type": "components", "jsSrcsDir": "./src", "android": { "javaPackageName": "com.custom.animation" } } 這一改進為第三方庫維護者將他們的代碼庫遷移到新架構提供了更一致的體驗。

新架構庫支持Android Auto-linking

新版本更好的支持開發者添加第三方依賴,只需要通過使用yarn add 命令就能正確添加依賴,無需修改CocoaPods或Gradle設置。

增加Android構建的完整CMake支持

從0.70開始,開發者可以使用CMake來配置Native構建。

從0.70開始,可以使用CMakeLists.txt文件代替Android.mk文件來處理項目中與Android/Native相關的任何內容。

小知識:

什麼是CMake - 在Android Studio 2.2及以上,構建原生庫的默認工具是CMake。 - CMake是一個跨平台的構建工具,可以用簡單的語句來描述所有平台的安裝(編譯過程)。能夠輸出各種各樣的makefile或者project文件。CMake並不直接構建出最終的軟件,而是產生其他工具的腳本(如makefile),然後再依據這個工具的構建方式使用。 - CMake是一個比make更高級的編譯配置工具,它可以根據不同的平台、不同的編譯器,生成相應的makefile或vcproj項目,從而達到跨平台的目的。Android Studio利用CMake生成的是ninja。ninja是一個小型的關注速度的構建系統。我們不需要關心ninja的腳本,知道怎麼配置CMake就可以了。 - CMake其實是一個跨平台的支持產出各種不同的構建腳本的一個工具。

原文鏈接: https://reactnative.dev/blog/2022/09/05/version-070