react native學(xué)習(xí)筆記0——windows環(huán)境搭建

本文基本步驟是參考RN中文官網(wǎng)結(jié)合自己實(shí)際搭建體驗(yàn)而來,由于Chocolatey被墻,所以python2和nodejs直接分別在對(duì)應(yīng)的官方網(wǎng)站下載安裝的。
下面正式介紹從零開始搭建react native的Windows開發(fā)環(huán)境。
首先準(zhǔn)備Android的環(huán)境,如果你是寫Android native的開發(fā)者可以直接忽略1,2步直接到第3步。

1. 安裝Java 的JDK

官網(wǎng)地址http://www.oracle.com/technetwork/java/javase/downloads/index.html
要求1.8及以上。你可以在命令行中輸入javac -version來查看你當(dāng)前安裝的JDK版本
然后配置Windows上JDK的變量環(huán)境,設(shè)置三個(gè)系統(tǒng)變量,分別是JAVA_HOME,Path和CLASSPATH。

  • JAVA_HOME
    先設(shè)置這個(gè)系統(tǒng)變量名稱,變量值為JDK在你電腦上的安裝路徑:C:\Program Files\Java\jdk1.8.0_20。創(chuàng)建好后則可以利用%JAVA_HOME%作為JDK安裝目錄的統(tǒng)一引用路徑。
  • Path
    PATH屬性已存在,可直接編輯,在原來變量后追加:;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin 。
  • CLASSPATH
    設(shè)置系統(tǒng)變量名為:CLASSPATH 變量值為:;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar 。

你需要關(guān)閉現(xiàn)有的命令符提示窗口然后重新打開,這樣新的環(huán)境變量才能生效。

2.安裝Android Studio

Android 中文官網(wǎng)
https://developer.android.google.cn/studio/index.html
Android Studio包含了運(yùn)行和測試React Native應(yīng)用所需的Android SDK和模擬器。

除非特別注明,請不要改動(dòng)安裝過程中的選項(xiàng)。比如Android Studio默認(rèn)安裝了 Android Support Repository,而這也是React Native必須的(否則在react-native run-android時(shí)會(huì)報(bào)appcompat-v7包找不到的錯(cuò)誤)。

  • 確定所有安裝都勾選了,尤其是Android SDKAndroid Device Emulator。
  • 安裝完成后,在Android Studio的歡迎界面中選擇Configure | SDK Manager。


  • 在SDK Platforms窗口中,選擇Show Package Details,然后在Android 6.0 (Marshmallow)中勾選Google APIs、Android SDK Platform 23Intel x86 Atom System Image、Intel x86 Atom_64 System Image以及Google APIs Intel x86 Atom_64 System Image。
  • 在SDK Tools窗口中,選擇Show Package Details,然后在Android SDK Build Tools中勾選Android SDK Build-Tools 23.0.1(必須是這個(gè)版本)。然后還要勾選最底部的Android Support Repository.

  • 確保ANDROID_HOME環(huán)境變量正確地指向了你安裝的Android SDK的路徑。
    打開控制面板 -> 系統(tǒng)和安全 -> 系統(tǒng) -> 高級(jí)系統(tǒng)設(shè)置 -> 高級(jí) -> 環(huán)境變量 -> 新建

具體的路徑可能和下圖不一致,請自行確認(rèn)。

你需要關(guān)閉現(xiàn)有的命令符提示窗口然后重新打開,這樣新的環(huán)境變量才能生效。

3.Python 2

官網(wǎng)地址:https://www.python.org/

注意目前不支持Python 3版本。

4.Node

官網(wǎng)地址:https://nodejs.org/en/
最好是4.1以上版本,可以通過node -v的命令來測試NodeJS是否安裝成功。

安裝完node后建議設(shè)置npm鏡像以加速后面的過程(或使用科學(xué)上網(wǎng)工具)。注意:不要使用cnpm!cnpm安裝的模塊路徑比較奇怪,packager不能正常識(shí)別!

npm config set registry https://registry.npm.taobao.org --global
npm config set disturl https://npm.taobao.org/dist --global

5.Yarn、React Native的命令行工具(react-native-cli)

Yarn是Facebook提供的替代npm的工具,可以加速node模塊的下載。React Native的命令行工具用于執(zhí)行創(chuàng)建、初始化、更新項(xiàng)目、運(yùn)行打包服務(wù)(packager)等任務(wù)。

npm install -g yarn react-native-cli

安裝完yarn后同理也要設(shè)置鏡像源:

yarn config set registry https://registry.npm.taobao.org --global
yarn config set disturl https://npm.taobao.org/dist --global

安裝完yarn之后就可以用yarn代替npm了,例如用yarn代替npm install命令,用yarn add 某第三方庫名代替npm install --save 某第三方庫名。

注意:目前npm5(發(fā)文時(shí)最新版本為5.0.4)存在安裝新庫時(shí)會(huì)刪除其他庫的問題,導(dǎo)致項(xiàng)目無法正常運(yùn)行。請盡量使用yarn代替npm操作。

6.推薦安裝的工具

Genymotion

比起Android Studio自帶的原裝模擬器,Genymotion是一個(gè)性能更好的選擇,但它只對(duì)個(gè)人用戶免費(fèi)。

  1. 下載和安裝Genymotion(genymotion需要依賴VirtualBox虛擬機(jī),下載選項(xiàng)中提供了包含VirtualBox和不包含的選項(xiàng),請按需選擇)。
  2. 打開Genymotion。如果你還沒有安裝VirtualBox,則此時(shí)會(huì)提示你安裝。
  3. 創(chuàng)建一個(gè)新模擬器并啟動(dòng)。
  4. 啟動(dòng)React Native應(yīng)用后,可以按下F1來打開開發(fā)者菜單。

7.測試安裝

react-native init AwesomeProject
cd AwesomeProject
react-native run-android

提示:你可以使用--version參數(shù)創(chuàng)建指定版本的項(xiàng)目。例如react-native init MyApp --version 0.44.3。注意版本號(hào)必須精確到兩個(gè)小數(shù)點(diǎn)。

成功后的界面如下:


但不幸的是,筆者首次運(yùn)行出現(xiàn)如下錯(cuò)誤:
react-native run-android installDebug failed 報(bào)DeviceException Could not create ADB Bridge錯(cuò)誤

Execution failed for task ':app:installDebug'.  
>com.android.builder.testing.api.DeviceException: Could not create ADB 
 Bridge. ADB location: /Applications/ADT/sdk/platform-tools/adb  
  • 解決方法
    這是Genymotion的默認(rèn)SDK路徑是它自己的ADB路徑,而非我們常用的ADB。修改下路徑就好了。
    Genymotion修改的地方在:settings-> ADB-> Use custom SDK tools.
adb.jpg
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容