mac下搭建react-native-android環(huán)境

react-native源碼地址
react-native需要環(huán)境支持菠剩,首先來配置java sdk捧弃,android sdk

下載java sdk

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
接受協(xié)議违霞,并下載mac os版本

安裝brew

安裝命令如下:curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip 1
當(dāng)brew安裝成功后,就可以隨意安裝自己想要的軟件了
例如android-sdk涧郊,命令如下:sudo brew install android-sdk
卸載的話妆艘,命令如下:sudo brew uninstall android-sdk
查看安裝軟件的話,命令如下:sudo brew search /apache/注意/apache/是使用的正則表達(dá)式批旺,用/分割汽煮。

我第一次安裝的時候提示

error: unable to unlink old '.github/CONTRIBUTING.md' (Permission         denied)
error: unable to unlink old '.github/ISSUE_TEMPLATE.md' (Permission denied)
error: unable to unlink old '.github/PULL_REQUEST_TEMPLATE.md' (Permission denied)
error: unable to create symlink Library/ENV/3.2.6 (Permission denied)
error: unable to create symlink Library/ENV/4.2 (Permission denied)
fatal: cannot create directory at 'Library/ENV/4.3': Permission denied

然后執(zhí)行

sudo chown -R $USER /usr/local;
brew update

安裝成功

安裝android sdk

brew安裝成功后端仰,在Mac終端輸入 brew install android-sdk
在 .bash_profile中 配置環(huán)境變量

export ANDROID_HOME=查找到到sdk路徑export     
PATH=${PATH}:${ANDROID_HOME}/tools export   
PATH=${PATH}:${ANDROID_HOME}/platform-tools

命令行敲入以下,生效命令

$source ~/.bash_profile

在命令行中輸入:$ adb 查看是否配置成功

react native環(huán)境搭建

安裝nvm, node.js, watchman, flow

安裝nvm
nvm是node.js的版本管理器鞋囊,可以用nvm來安裝node.js

$brew install nvm

安裝node.js

node.js 是一個基于 Chrome V8 引擎的 JavaScript 運(yùn)行環(huán)境。Node.js 使用了一個事件驅(qū)動译株、非阻塞式 I/O 的模型古戴,使其輕量又高效矩肩。Node.js 的包管理器 npm肃续,是全球最大的開源庫生態(tài)系統(tǒng)

直接在官網(wǎng)上下載nodejs安裝包始锚,node.js下載地址

安裝watchman,flow
Watchman 是 facebook 的一個開源項(xiàng)目棵里,它開源用來監(jiān)視文件并且記錄文件的改動情況姐呐,當(dāng)文件變更它可以觸發(fā)一些操作,例如執(zhí)行一些命令等等
Flow:Facebook 的 JavaScript 靜態(tài)類型檢查器 點(diǎn)擊了解flow更多

$brew install watchman 
$brew install flow

安裝React-native-cli
React-native-cli是用來開發(fā)react native到命令行工具(比如后面用到的react-native命令)

$sudo npm install -g react-native-cli

npm是安裝成功node.js后到包管理器

環(huán)境搭建成功曙砂,接下里就要開始第一個react native的例子了

創(chuàng)建項(xiàng)目

到你的工作目錄下,敲入以下命令

$react-native init MyFirstReactNativeDemo

掛著vpn我執(zhí)行了好幾次柱告,前幾次都執(zhí)行了超過半個小時還沒動勁,切換了一個更好的網(wǎng)絡(luò)葵袭,關(guān)閉了vpn乖菱,一下子就執(zhí)行成功了

進(jìn)入到項(xiàng)目目錄下

$cd MyFirstReactNativeDemo
$react-native run-android

一開始用as的模擬器打開運(yùn)行后報錯
com.android.ddmlib.InstallException: Failed to establish session,

換成真機(jī)块请,又報錯
InstallException: Unable to upload some APKs

http://www.hacksparrow.com/react-native-android-unable-to-upload-some-apks.html

說是gradle版本有bug,我把project-gradle的版本改為2.1.2

dependencies {    classpath 'com.android.tools.build:gradle:2.1.2' }

并且把
/myReactNativeDemo/android/gradle/wrapper/gradle-wrapper.properties
里面的distributionUrl 改為最新的配置地址后贸弥,又出現(xiàn)了新的錯誤- -|||

**com.android.ddmlib.InstallException: Failed to install all **

發(fā)現(xiàn)是安裝包無法安裝绵疲,有兩個解決辦法:
1.我試著從myReactNativeDemo/android/app/build/outputs/apk 把包拷到手機(jī)上臣疑,可以安裝運(yùn)行
2.將gradle中的classpath 'com.android.tools.build:gradle:2.1.2'改為1.2.3讯沈。不過在華為6plus android4.4上可以安裝,在華為p8 android 5.0上不能安裝问慎,具體原因還沒找到挤茄,挺奇怪的

could not connect to development server android

如果是真機(jī)調(diào)試,確保usb調(diào)試打開笼恰,在終端輸入命令

adb reverse tcp:8081 tcp:8081

運(yùn)行成功社证。電腦自動打開server網(wǎng)頁练湿,設(shè)備上顯示W(wǎng)elcome toReact Native。
第一個例子就運(yùn)行成功了

搖一搖搖出菜單辽俗,選擇enable live reload,在android.index.js中的改動榴捡,都是在app上進(jìn)行刷新

找資料的時候發(fā)現(xiàn)
http://reactnative.cn/docs/0.28/running-on-device-android.html#content
這個網(wǎng)站里面的中文資料比較全

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末吊圾,一起剝皮案震驚了整個濱河市项乒,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌檀何,老刑警劉巖频鉴,帶你破解...
    沈念sama閱讀 218,682評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件垛孔,死亡現(xiàn)場離奇詭異,居然都是意外死亡周荐,警方通過查閱死者的電腦和手機(jī)悯姊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評論 3 395
  • 文/潘曉璐 我一進(jìn)店門悯许,熙熙樓的掌柜王于貴愁眉苦臉地迎上來辉阶,“玉大人谆甜,你說我怎么就攤上這事∽还祝” “怎么了?”我有些...
    開封第一講書人閱讀 165,083評論 0 355
  • 文/不壞的土叔 我叫張陵碍岔,是天一觀的道長朵夏。 經(jīng)常有香客問我仰猖,道長,這世上最難降的妖魔是什么饥侵? 我笑而不...
    開封第一講書人閱讀 58,763評論 1 295
  • 正文 為了忘掉前任躏升,我火速辦了婚禮,結(jié)果婚禮上盗温,老公的妹妹穿的比我還像新娘卖局。我一直安慰自己,他們只是感情好砚偶,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,785評論 6 392
  • 文/花漫 我一把揭開白布染坯。 她就那樣靜靜地躺著丘逸,像睡著了一般。 火紅的嫁衣襯著肌膚如雪仲锄。 梳的紋絲不亂的頭發(fā)上湃鹊,一...
    開封第一講書人閱讀 51,624評論 1 305
  • 那天币呵,我揣著相機(jī)與錄音,去河邊找鬼哈垢。 笑死,一個胖子當(dāng)著我的面吹牛温赔,可吹牛的內(nèi)容都是我干的鬼癣。 我是一名探鬼主播,決...
    沈念sama閱讀 40,358評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼拜秧,長吁一口氣:“原來是場噩夢啊……” “哼枉氮!你這毒婦竟也來了暖庄?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,261評論 0 276
  • 序言:老撾萬榮一對情侶失蹤惹悄,失蹤者是張志新(化名)和其女友劉穎肩钠,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體当纱,經(jīng)...
    沈念sama閱讀 45,722評論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡踩窖,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年廉沮,在試婚紗的時候發(fā)現(xiàn)自己被綠了徐矩。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片叁幢。...
    茶點(diǎn)故事閱讀 40,030評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡鳞骤,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出豫尽,到底是詐尸還是另有隱情,我是刑警寧澤渤滞,帶...
    沈念sama閱讀 35,737評論 5 346
  • 正文 年R本政府宣布妄呕,位于F島的核電站嗽测,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏疏魏。R本人自食惡果不足惜大莫,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,360評論 3 330
  • 文/蒙蒙 一葵硕、第九天 我趴在偏房一處隱蔽的房頂上張望贯吓。 院中可真熱鬧,春花似錦介评、人聲如沸爬舰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,941評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽椅文。三九已至喂很,卻和暖如春皆刺,著一層夾襖步出監(jiān)牢的瞬間羡蛾,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,057評論 1 270
  • 我被黑心中介騙來泰國打工忙干, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留豪直,地道東北人珠移。 一個月前我還...
    沈念sama閱讀 48,237評論 3 371
  • 正文 我出身青樓弓乙,卻偏偏與公主長得像,于是被迫代替她去往敵國和親钧惧。 傳聞我的和親對象是個殘疾皇子暇韧,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,976評論 2 355

推薦閱讀更多精彩內(nèi)容