學習日記(1) 成功執行、編譯RN-android的爬坑記錄
前言
- 從15年下半年開始,不斷的在網路上看見各路大神推薦React Native是如何神通廣大,但對於初識Android的我來說並不理解這到底是個什麼東西。最近團隊打算用這個技術實現我們客戶端App的首頁(會不定期釋出活動),這對於我來說又是一次自我的提升和學習機會。
定義
什麼是React Native?
這個也是我當初第一次接觸到這個概念的疑問,不過縱觀網上各路帖子,但一直以來都很模糊。React Native 底層是Java Script ,呼叫的是原生元件,而非HTML5元件(HTML + CSS + JavaScript)。執行時,可以做到與Native App媲美的體驗,同時因為JavaScript程式碼可以使用後端強大的Web方式管理,既可以做到高效開發,也可以做到快速部署和熱修復。通俗的話來說,就是使用js程式碼來呼叫android的原生控制元件,來解決webview在app的效能問題,並且能做到服務端快速部署和熱修復,避免不斷髮版本來更新影響使用者體驗的缺點。為什麼要使用React Native?
最初也提到了,用這個技術來改善app首頁樣式的靈活性和豐富性。雖然,現在的做法也是由服務端來控制首頁的佈局載入(首頁由很多個block來構建,類似於搭積木一樣,也類似於recycleview 通過不同的type返回的layout來組裝出一個首頁),但優缺點都顯而易見。
優點是:原生實現,體驗好。
缺點是:不夠靈活,樣式不夠豐富,只有通過每次版本升級來增加其餘樣式block(大家想想淘寶、天貓的首頁,就能體會到了)。 雖然說react-native解決了以往webview的效能問題,和服務端控制的靈活問題。但對於這樣的一個新技術,封裝出一套可維護性擴充套件效能高的框架,也是今後研究的重難點。
(阿里開源了weex,之前看過
環境搭建
建立、執行React Native專案
編譯、執行RN專案爬坑
- 關於執行react-native run-android編譯報錯的問題,這裡大家一是可以通過報錯的異常資訊提示來進行處理,二可以搜尋異常解決方案,網上都有很詳細的資訊。這裡就不重複贅述了,筆者都是這樣過來的,都能夠搜尋到。
- 這裡主要提示一下新手從網上下載的RN專案原始碼,或者自己建立的專案,開啟專案一定要遵循以下步驟,以免遇到一些莫名其妙的坑。
1.切換到專案目錄下
2.執行npm install
3.raect-native run-android
4.如果啟動報錯,執行npm start的命令
(以下是Windows環境下的截圖)