Facebook React Native 配置小結

來源:互聯網
上載者:User

標籤:

2015 年 9 月 15 號,React Native for Android 發布。至此,React 基本完成了對多端的支援。基於 React / React Native 可以:

  • H5, Android, iOS 多端代碼複用

  • 即時熱部署

目前使用 React Native 開發只能在 Mac 系統 上進行。所以配置都是基於Mac os.

環境配置

 首先需要安裝的有:

       Homebrew(brew):

       Homebrew 是 Mac 中的一個安裝包管理器。沒有安裝的話,點擊這裡安裝 我的版本如下:

       

bogon:~ weichunsheng$ brew -vHomebrew 0.9.5 (git revision 8017; last commit 2015-10-03)bogon:~ weichunsheng$ 

  版本過低將會導致無法安裝後續幾個組件。可用 brew update 升級。

  Node.js 和 npm

      Node.js 需要 4.0 及其以上版本。安裝好之後,npm 也有了。

      通過 nvm 安裝 Node.js

      nvm 是 Node.js 的版本管理器,可以輕鬆安裝各個版本的 Node.js 版本。

      安裝 nvm 可以通過 Homebrew 安裝:

      brew install nvm

      或者 按照這裡的方法 安裝。

      然後安裝 Node.js:

  nvm install node && nvm alias default node

也可以直接下載安裝 Node.js: https://nodejs.org/en/download/

安裝 watchman 和 flow

這兩個包分別是監控檔案變化和類型檢查的。安裝如下:

brew install watchmanbrew install flow

安裝 React-Native

通過 npm 安裝即可:

npm install -g react-native-cli


APP 開發環境的設定
  • iOS

    XCode 6.3 及其以上即可。

  • Android

    這個比較麻煩。

設定環境變數:ANDROID_HOME

export ANDROID_HOME=/usr/local/opt/android-sdk

 

SDK Manager 安裝以下包:

Android SDK Build-tools version 23.0.1

Android 6.0 (API 23)

Android Support Repository

配置完畢。

 
初始化第一個hello world項目

文檔提到:

react-native init x 項目名稱

等待一段時間之後(具體視網路情況而定)時間比較長,項目初始化完成。

進入到項目目錄:

cd 項目名稱運行: ls -ltotal 24drwxr-xr-x  14 srain  staff   476 Sep 21 09:52 android-rw-r--r--   1 srain  staff  1023 Sep 21 11:47 index.android.js-rw-r--r--   1 srain  staff  1065 Sep 20 11:58 index.ios.jsdrwxr-xr-x   6 srain  staff   204 Sep 20 11:58 iosdrwxr-xr-x   5 srain  staff   170 Sep 21 10:31 node_modules-rw-r--r--   1 srain  staff   209 Sep 20 11:58 package.json

其中 android 和 ios 中分別為兩個平台的專案檔。index.android.js 和 index.ios.js 為兩個頁面對應的 js 檔案。

運行項目

不管是 iOS 還是 Android,在開發調試階段,都需要在 Mac 上啟動一個 HTTP 服務,稱為`Debug Server`,預設運行在 8081 連接埠,APP 通 Debug Server 載入 js。 iOS 和 Android 的模擬器,串連 Mac 原生服務都很方便。但是通過 USB 或者 Wifi 串連調試,就稍微麻煩一些了。

IOS

  還是非常簡單,XCode 開啟項目,點擊運行就好。修改 index.ios.js, 在模擬器中 ? + R 重新載入 js 即可看到相應的變化。

  iOS 真機調試也簡單,修改HTTP地址即可。

jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle"];

  

Android

按照官方文檔,需要一個模擬器(Genymotion模擬器也可以)。但是不像 iOS,Android 開發平時更多是直接用真機進行開發和調試,如何運行部署到真機。

運行命令

react-native run-android

 

然後就會部署到模擬器,修改 index.android.js ,調出模擬器菜單鍵,選擇重新載入 js 即可看到變化。

 

樣本 APP 直接部署到真機,紅色介面報錯,無法串連到 Debug Server。

如果是 5.0 或者以上機型,可通過 adb 反向 Proxy連接埠,將 Mac 連接埠反向 Proxy到測試機上。

adb reverse tcp:8081 tcp:8081

如果 5.0 以下機器,應用安裝到測試機上之後,搖動裝置,在快顯功能表中選擇 Dev Setting > Debug Server host for device,然後填入 Mac 的 IP 位址

 

在 Android Studio 中調試開發

在 Android Studio 開啟項目,然後編譯部署到真機。

這個時候,在命令列啟動 Debug Server 即可:

react-native start

官方文檔:https://facebook.github.io/react-native/docs/getting-started.html#content


參考:http://www.liaohuqiu.net/cn/posts/react-native-1/
https://github.com/creationix/nvm#installation
http://www.jianshu.com/p/cd2a8c5ee1c7
http://wiki.jikexueyuan.com/project/react-native/NativeComponentsAndroid.html
http://www.tuicool.com/articles/V3U3UbU
 

 

Facebook React Native 配置小結

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.