[React Native Android安利系列]搭建React Native Android環境

vocxajdi 8年前發布 | 34K 次閱讀 ReactNative 移動開發 React Native

React-Native的橫空出世,滿足了前端工程師們的愿景,擺脫了瀏覽器,前端開發者們又有了一個方向。但是本人認為,ReactNative更像是套了一層前端殼子的原生開發,要想了解RN還是需要多多理解原生開發的。廢話不多說,想了解更多的RN心靈雞湯,自己去百度就好了。

搭建react-native的文章雖然很多,但大多數都是搭建js層面的,沒有結合原生android和android開發去講。這一套教程,將會更多的結合原生的安卓去講react-native。

1. 環境

首先,我們需要搭建一個開發環境。無論是window/mac/linux中的哪一個,必須要具備的條件有以下幾點

1.1 安裝jdk

windows的話,在cmd中執行java -version看就行,mac/linux的話。在終端下,直接執行java -version命令進行查看,如果沒有,請百度"jdk安裝與環境變量配置"。直到使用java -version的時候,出現了如下圖所示的信息,則證明你安裝成功了(如圖1.1.1)。

圖1.1.1

1.2 安裝nodejs

nodejs的官網上有各個系統的下載包,window下可以直接下載exe可執行的node,然后把node.exe所在的路徑,添加到環境變量中即可,這樣安裝更加干凈。直到,在windows下的CMD,或者mac下的終端任意目錄下,輸入node,可以出現如圖2.3.1所示即可。

圖2.3.1

1.3 安裝NPM

一般來講,安裝了nodejs,也會順帶著安裝上npm,不過有的時候,我們需要單獨安裝,windows下,如果使用了node.exe的話,可以自行百度一下 "windows安裝npm" 按照說明安裝npm,并且把npm添加到環境變量中去。直到在終端或者CMD任意目錄下,執行npm出現如圖1.3.1所示信息,則意味著,你安裝成功了。

圖1.3.1

1.4 安裝react-native-cli

這個工具是react-native的命令行工具,是我們接下來運行工程的基礎。安裝的話,直接使用。

npm install -g react-native-cli

命令進行安裝即可,mac/linux下的話,可能會報錯:

npm ERR! Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/react-native-cli'

這個時候,證明你的權限不夠,可以在命令前面加上sudo:

sudo npm install -g react-native-cli

1.5 安裝android sdk

這里建議把android studio與android sdk一起安裝,android的官網上即可下載與安裝,有bundle版的話,更加的省事。

1.6 安裝安卓模擬器

如果有安卓手機的話,更推薦使用安卓手機進行真機調試,如果沒有的話,我們也可以通過安卓模擬器進行調試,windows的話,建議下載blue stack(下載安裝即可),mac/linux的話,可以使用android sdk里面自帶的avd,創建新的設備進行調試。

2. react-native的helloworld

接下來,我們從一個使用了android studio與react-native的hello world入手。開啟我們的react-native-android之旅。

2.1 創建工程

我們挑一個干凈的文件夾來初始化我們的工程。windows的話,通過dos命令行(程序中查找cmd進入)。linux/mac的話,通過bash進入到文件夾下,執行以下命令創建工程,如圖2.1.1

react-native init hellowReact

圖2.1.1

等待片刻,我們會看到生成了一個新的項目(helloReact),生成的項目里面包含了IOS版本與Android版本的默認項目。

2.2 用android studio打開

此時我們可以使用android studio打開,新建項目下的android/app文件夾,請注意,打開的是app文件夾,如圖2.2.1所示。

圖2.2.1

打開工程后,我們可以看到下方開始編譯bundle,如圖2.2.2。

圖2.2.2

等待build gradle的過程比較漫長,需要耐心等待一下。build好之后,我們就能看到在我們的andriod studio中出現了新建的工程。

如果發現沒有build,那么請看看控制臺,是否提示沒有安裝什么gradle,如果是的話,點擊進行安裝即可,如圖2.2.3。

圖2.2.3

2.3 將安卓工程編譯并安裝到機器上

在準備就緒后,工程上方的工具欄,會出現可以編譯的按鈕(如圖2.3.1所示)我們點擊綠色的運行按鈕

圖2.3.1

如果使用了bluestack的話,請把bluestack打開,如果使用手機調試的話,請把手機的開發人員選項打開,并且把USB調試選項打開。我們這里直接使用了手機調試(如圖2.3.2的調試列表中出現了我們連接的手機)。

圖2.3.2

無論你用哪種方式,在點擊完綠色的運行按鈕之后,都會看到選擇設備的列表。選擇自己的設備,然后點擊OK。開始編譯(如圖2.3.3)。

運行完成之后,我們果然看到了。。。。。。。BUG(如圖2.3.4)

圖2.3.4

不過,如果你運行到了這一步,恭喜你,你已經將react的安卓項目成功的編譯并安裝到手機上了。

出現這個BUG的原因主要是由于我們的app調試階段回去遠程尋找我們的js,而默認,它回去本地尋找,所以我們接下來要干兩件事情,1. 搭建可以訪問js的服務。 2.讓手機上的react應用去按照這個服務尋找JS

2.4 搭建服務

用windows的CMD或者MAC/linux的終端,進入到hellowReact目錄下(我們用react-native init創建的工程),然后執行,結果如圖2.4.1:

react-native start

圖2.4.1

運行成功后,我們看到react-native利用了本機的8081端口,開啟了一個js的服務,我們訪問一下(結果如圖2.4.2所示)。

http://localhost:8081/index.android.bundle?platform=android

(PS:第一次訪問編譯會有點慢)

圖2.4.2

2.5 設置app尋找js的地址

接著,我們要進行第二步---讓手機上的react應用去按照這個服務尋找JS

我們打開手機上那個報錯的APP(hellowReact),然后搖一搖。(是的,搖一搖,不過不是微信)此時會出現開發者工具,如圖2.5.1所示

圖2.5.1

當然,你要是使用bluestack的話,也行,左側工具欄里面有搖一搖。

如圖2.5.2,點擊Dev Settings,點擊最下方的Debug server host & port for device,

圖2.5.2

會彈出配置項,這個配置項就是尋找js的地址啦:

那么地址如何填呢?

如果是真機調試的話,手機最好和自己的電腦在一個局域網下(使用了同一個wifi也可以),如果是bluestack的話,則不用管這個了。

windows電腦,請在CMD命令下,輸入ipconfig查看自己的ipv4地址。或者用電腦右下角的查看網絡連接,來查看自己的ipv4地址。如果是mac/linux的話,查看一下網絡設置,上面會有寫。自己的ip地址。

在配置項里面填寫自己的ip地址:8081,如圖2.5.3

圖2.5.3

2.6 重新加載js,并運行成功

點擊確定,返回主界面。再搖一搖手機,然后點擊reload js。運行結果如圖2.6.1

圖2.6.1

于是,我們的hello world就大功告成啦,至此,我們的React-Native-Android環境也算大功告成了。

上述講解,可以在這里找到代碼例子:

https://github.com/houyu01/react-native-android-tutorial/tree/master/helloReact

不要走開,馬上回來,下一篇,我們會介紹,如何在ReactNative中利用js編寫我們想要的界面

 

系列文章

[React Native Android安利系列]搭建React Native Android環境 
[React Native Android安利系列]創建簡單 RN 應用(以js角度來看RN)
[React Native Android安利系列]原生小知識(創建activity并跳轉)

來自:https://segmentfault.com/a/1190000006037447

 

 本文由用戶 vocxajdi 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!