React Native(簡稱RN)是Facebook於2015年4月開源的移動跨平臺開發框架,是Facebook在早先開源的React前端框架在原生移動平臺的衍生產物,目前支持iOS和Android兩大原生移動平臺。前端
目前,通過數百名貢獻者數月的努力,React Native 迎來了 0.60 版本的發佈。此版本完成了 Android 和 iOS 平臺的一些重大遷移,許多問題也獲得解決。node
可訪問性 API 有許多改進,例如 announceForAccessibility,以及對角色、動做支持、標誌等的改進。可訪問性是一門複雜的科學,但咱們但願這些改進更靠近 A11Y。能夠查看 React Native Open Source Update June 2019,瞭解有關這些更改的更多詳細信息。react
這次版本,React Native 的啓動頁面也已經更新!這個新的啓動頁面將以更加友好、引人入勝的方式歡迎用戶進入 React Native 生態系統,效果以下圖所示。
ios
AndroidX 是 Android 生態系統向前邁出的重要一步,舊的支持庫已被棄用。React Native 0.60 已遷移到了 AndroidX。這是一個破壞性變動,您的 native 代碼和依賴庫也須要遷移。git
雖然須要遷移本身的 native 代碼,但 jetifier
工具能夠用於來修補 node_modules。庫維護人員須要升級,但這個工具提供了一個臨時解決方案,讓維護人員有時間來發布 AndroidX 版本。所以,若是您發現與 AndroidX 遷移相關的錯誤,請試一試這個工具。github
CocoaPods 如今是 React Native 的 iOS 工程的一部分,說明參考。請確保從如今開始使用 xcworkspace 文件打開iOS平臺代碼(提示:在根項目目錄中嘗試 xed ios)。此外,內部軟件包的 podspecs 已更改,使其與 Xcode 項目兼容,這將有助於故障排除和調試。做爲升級到 0.60 的一部分,指望對您的 Podfile 進行一些直接的更改,以引入這個使人興奮的支持選項。請注意,咱們瞭解 use_frameworks!
的兼容性問題,咱們正在考慮變通方法和將來補丁的問題。web
WebView 和 NetInfo 之前被提取到單獨的 repo 中,在 0.60 中咱們已經完成了將它們從 React Native 的 repo 中遷移出來。此外,爲響應社區對新 App Store 策略的反饋,Geolocation 也被抽取出來。若是還須要使用這些庫,請經過向 react-native-webview,@react-native-community/netinfo 和 @react-native-community/geolocation 添加依賴項來完成遷移。若是您想要自動化解決方案,或者考慮使用 rn-upgrade-deprecated-modules。react-native
React Native CLI 的團隊已經對稱爲 autolinking 的 native module 連接進行了重大改進!大多數場景再也不須要使用 react-native link
。與此同時,該團隊對整個連接過程進行了完全改革。確保使用 react-native unlink
來取消預先存在的依賴關係,如上面的文檔中所述。前端框架
@lucasbento,@pvinis,@kelset和 @watadarkstar 構建了一個名爲 Upgrade Helper 的強大工具,使升級過程更加簡單。它能夠幫助 React Native 用戶使用 brownfield app 或複雜的自定義設置來查看版本之間的變化,詳情請查看更新的升級文檔。
參考資料:https://github.com/react-nati...app