React Native 0.70 發布,Hermes 成為默認引擎

開源中國osc 發佈 2022-09-08T08:42:39.851012+00:00

出品|開源中國React Native 0.70 版本正式發布,這個版本有幾項改進,比如 Codegen 的新的統一配置、Hermes 作為默認引擎、對 Android 構建的完整 CMake 支持,還有對新架構文檔的更新。

出品|開源中國

React Native 0.70 版本正式發布,這個版本有幾項改進,比如 Codegen 的新的統一配置、Hermes 作為默認引擎、對 Android 構建的完整 CMake 支持,還有對新架構文檔的更新。

具體更新內容如下:

New Architecture 的新文檔

在過去的幾個月里,Meta 一直在努力為文檔中的 New Architecture 部分增加更多的內容。在新的部分,你可以找到遷移指南、例子和教程,讓你儘快掌握。

同時你還可以找到新的文檔,深入了解為什麼要有一個 New Architecture 和它的各個部分。這能幫助你更好地理解新 API 背後的原理。

Hermes 作為默認引擎

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

這是 Hermes 團隊和 React Native 團隊合作的結果,Meta 將努力改進和微調 Hermes,使其性能更強,並提供社區高度要求的功能。

Codegen 的新的統一配置

在 0.70 版本中,引入了一個統一的方式來定義 iOS 和 Android 的 Codegen 規格。以前你必須把 Android 的配置放在一個單獨的 build.gradle 文件中。

現在,你可以直接在 package.json 中定義它:

這一改進為庫維護者在將其代碼庫遷移到 New Architecture 時提供了更一致的體驗。

New Architecture 庫的 Android Autolinking

在 0.70 版本中,New Architecture 的用戶能夠自動連結庫,而不需要在他們的 Android.mk 或 CMake 文件上做任何額外的配置。

自動連結(Autolinking)React Native 開發體驗的一個重要部分。它允許你用 yarn add 命令包含外部庫,而無需處理 CocoaPods 或 Gradle 設置。

雖然自動連結功能在 iOS 上的 New Architecture 庫運行良好,但在 Android 上卻並非如此。在 0.70 版本中縮小了這一差距,現在你可以繼續在你的項目中加入帶有 yarn add 的庫:它們會在任何架構上被正確連結。

對 Android 構建的全面 CMake 支持

從 0.70 開始,用戶現在可以使用 CMake 來配置他們的 Native 構建了。雖然不希望應用程式的用戶直接編寫 C++ 代碼,但你仍然需要一個本地編譯的入口。

從現在開始,你可以使用 CMakeLists.txt 文件而不是 Android.mk 文件來處理你項目中任何與 Android/Native 相關的東西。

依賴升級

  • 將 RN CLI 升級到 9.0.0 版本
  • 將 Android Gradle Plugin 升級到 7.2.1
  • 將 Gradle 升級到 7.5.1
  • 將 RCT-Folly 升級到 2021-07-22
  • 將 Metro 升級到 0.72
  • 將 SoLoader 升級到 0.10.4
關鍵字: