(一)react-native開發系列之Mac開發環境配置


寫在前面

在開始之前,先說下選擇react-native的背景原因

最近一年來,公司為了節省開發成本,以及降低維護成本,指派我開始做起前端開發app的工作,我和公司的小伙伴們就開始了漫長的app開發之旅;為了更好的結合現在使用的技術棧進行開發(現使用vue系列框架),剛開始選擇了cordova結合vue做app開發,也上線了一款應用(商城類項目),流暢度在ios設備上以及中高端android手機上還算流暢,當時也想過就確定使用這個技術棧進行app開發了,不過后來又有了新的變數。

由於公司是屬於倉儲類型的公司,平常倉庫人員揀貨理貨都是使用手持PDA進行作業,所以公司要求做一款針對PDA設備的應用,由於PDA設備系統比較老(android4.2.2),且性能低下,剛一開始還是使用cordova+vue進行項目開發,在pda上安裝測試版app的時候發現cordova使用的webview並不能很好的兼容這種低端設備,也是嘗試了主流的webview,包括騰訊的X5和Crosswalk兩個webxiew,都不能很好的解決適配問題,由於項目已用vue寫好,所以只能找其它可以提供原生webview技術;還好皇天不負有心人,最終使用hbuilder的打包平台解決了兼容性問題,重新寫了與原生交互的方法之后項目終於上線了。

如上所言,后來用hbuilder打包的應用雖然順利上線了,但是使用hbuilder雲打包並不是最佳的選擇,比如說前一段時間項目修改后要上線,然后提交雲打包,但是打包下來的包在PDA上安裝不上,和hbuilder的團隊溝通了兩天才解決掉,當時就感覺靠人不如靠自己啊,雖說使用hbuilder也可以實現線下打包,但是經過這件事之后我對他們失望了,加上打包出來的app性能優化上也有一定的難度,所以我決定是時候改變寫什么了,經過我的提議,使用react-native重構當前項目被提上了日程。

react-native技術的優越性這里就不多說了,網上有很多對次技術棧的說明以及和其它技術棧對比的文章,本次系列文章用來記錄開發過程中的一些心得,和遇到的坑,在此記錄,以防后邊又掉進坑里。

(一)react-native開發系列之開發環境搭建MAC環境配置

(二)react-native開發系列之windows開發環境配置

(三)react-native開發系列之開發環境集成

(四)react-native開發系列之debug調試

(五)react-native開發系列之原生交互

(六)react-native開發系列之打包發行app

雖說現在重構的項目只用在android設備上,但是本着技術儲備的初心,這次項目重構也會考慮到ios設備的兼容,所以這里的開發環境首先選擇的是在mac的系統上搭建,在基礎開發環境搭建完善之后,會獨立出來在windows系統上開發,所以也會搭建一套基於windows系統的開發環境,只用於開發android應用。

Mac環境搭建

因為窮,沒錢買Mac,所以就在電腦上安裝了個虛擬機湊合使用;網上有很多windows安裝os虛擬機的教程,可自行搜索安裝,我這里使用的是VMware,安裝的系統版本是10.13,如下圖

在安裝好系統之后,在新系統上安裝運行react-native的必要環境,Mac安裝node.js、yarn相對於windows系統比較簡單一點,下面開始安裝

1、安裝Homebrew

Homebrew是Mac的一個包管理工具,可以使用這個工具安裝開發工具,首先打開命令行工具,輸入以下代碼安裝Homebrew

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

然后一路回車,會讓輸入密碼,這個密碼是登陸系統的密碼,輸入密碼之后回車開始安裝,安裝完成之后如下圖

然后就可以使用Homebrew安裝node.js,react-native要求node.js版本較高,使用以下命令直接安裝即可

brew install node

安裝完成之后使用node -v查看一下node.js的版本,我這里安裝的版本是10.1.0

安裝yarn

brew install yarn 

2、安裝jdk

由於還要在Mac上開發android,所以還需要安裝jdk,下載Mac版jdk1.8安裝包,安裝jdk,安裝完成之后還需要配置下jdk的環境變量,方法如下

(1)打開命令行窗口,如果是第一次配置環境變量使用touch .bash_profile,如果之前已經生成過.bash_profile文件,則可以直接修改.bash_profile文件,打開.bash_profile文件使用open -e .bash_profile,因為我這里已經有這個文件了,現在使用open -e .bash_profile打開如下

我這里是已經配置好的環境變量,如上圖內容,在.bash文件里輸入

JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home
CLASSPAHT=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH:
export JAVA_HOME
export CLASSPATH

然后保存,關閉此窗口,使用source .bash_profile命令使剛剛配置的環境變量生效,輸入java -version查看jdk是否已經安裝成功,如果成功如下

3、安裝android-sdk

要想開發Android只有jdk還是不行的,還需要android-sdk

下載skd for Mac,點擊這里可下載

下載后解壓,命令行進入tools文件夾,輸入./android sdk,打開sdk-manager,如下圖

然后就是下載sdk build-tools和需要版本的API啦,接下來還需要配置下環境變量,同jdk的環境變量配置類似,由於已經創建過.bash_profile文件了,此處可直接打開配置文件,使用open -e .bash_profile命令打開配置文件,輸入以下內容

export PATH=${PATH}:/soft/android-sdk-macosx/platform-tools
export PATH=${PATH}:/soft/android-sdk-macosx/tools
export CLASSPATH
export PATH

輸入source .bash_profile使配置生效,驗證skd,輸入adb,出現以下內容說明配置成功

4、安裝xcode

以上幾步基本都是搭建android環境所需的,接下來再說下ios的開發所需環境,安裝xcode

由於是黑蘋果,無法從AppStore直接下載xcode,這里提供下載地址,版本為9.2,直接雙擊打開安裝包即可安裝

 5、初始化react-native項目

(1)全局安裝react-native-cli

npm install react-native-cli -g

(2)初始化項目,這里以使用0.44.3版本為例

react-native init RnDemo --version 0.44.3

稍等一會就會下載好,並且自動使用yarn下載好了依賴

進入項目目錄下面cd RnDemo,然后react-native run-android,或者react-native run-ios,剛下載下來如果不更改配置的話一般情況下run-android都會報錯,具體會出現什么報錯,后邊會另有文章提到,這里不在一一列出來,這里是我調試好的項目配置,下載下來直接運行直接可用。

(3)react-native run-ios

在已經安裝了xcode的情況下,直接運行react-native run-ios會自動開啟xcode的ios模擬器,稍等一下就會看到在模擬器上安裝的應用,並且會自動打開,如下圖

這樣去修改文件里的index.ios.js然后刷新模擬器(win+r)就會看到頁面的變化。

(4)react-native run-android

這里以android真機為例,將Android手機插入電腦,輸入adb devices查看是否連接成功,如下圖所示即表示連接成功

 

上面那一串就是所連接的設備

然后運行react-native run-android

* What went wrong:
A problem occurred configuring project ':app'.
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

額,報錯了,說SDK位置不對,目前我也不清楚原因是什么,解決方法是在android目錄下面新建一個名為local.properties的文件,里面內容指向SDK地址,如下代碼

sdk.dir=/soft/android-sdk-macosx   // 自己的sdk位置

然后重新運行react-native run-android

依然報錯,此時debug包已經打好了,只是無法安裝到手機上,此時有兩種解決方式可以選擇,一種是下面的文件目錄下的安裝包通過其它方式安裝打手機

另外一種方式是修改android的配置信息,修改內容如下

修改完這三個文件之后重新run-android就可以成功了

現在ios模擬器和Android真機都運行起來了,就可以愉快的進行開發了。windows環境配置僅用於開發android,下篇說下windows環境下的react-native配置。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM