模擬器運行
在前面搭建RN開發(fā)環(huán)境的時候铣口,我已經(jīng)說過如何創(chuàng)建一個RN項目了。在創(chuàng)建好的項目根目錄就分別會有一個Android和iOS文件目錄觉壶,我們需要做的就是打開iOS目錄脑题,并且打開里面的xCode工程(使用xCode??)。打開之后铜靶,可以試著用模擬器運行一下叔遂,操作方法完全和原生操作一樣。
這里可能會遇到如下的錯誤:
這種情況修改一下AppDelegate.m中的方法,如下圖:
注釋掉第一行的代碼已艰,換成第二行的痊末,IP地址是本機的IP地址
這里需要說明一下、出現(xiàn)這個錯誤是因為你的工程中少一個文件main.jsbundle
這個文件在打包的時候是必不可少的哩掺,我們上面這種修改方法凿叠,是在debug模式下運行的,這樣的話便于調(diào)試疮丛。
在debug模式下幔嫂,我們可以通過模擬器的模擬搖一搖調(diào)出調(diào)試菜單,如下圖:
其中Reload是點擊刷新誊薄,Debug JS Remotely 是在網(wǎng)頁中打開JS調(diào)試(這里可以打印履恩,也可進行單步調(diào)試打斷點),Enable Hot Reloading 打開這個選項之后呢蔫,每次編輯完頁面布局的時候切心,進行保存操作之后,界面就會自動刷新片吊,這樣的話绽昏,就省去了不少原生應用不停手動開關編譯的時間。
真機運行
以上都是在模擬器上操作俏脊,那么在真機上呢全谤?
使用iPhone真機運行的話,一個最基本的條件就是遵循蘋果公司的開發(fā)者協(xié)議爷贫,在這些條件滿足的基礎上认然,你只需要滿足一個條件即可,那就是保證手機和你的電腦在同一個局域網(wǎng)下漫萄,這樣才能根據(jù)之前Appdelegate.m文件中的IP地址獲取到相應的js代碼卷员。
在真機上運行起來之后,所有的調(diào)試操作都和模擬器是相同的腾务,唯一不同的是毕骡,手機你就可勁兒晃動就行了。
打包發(fā)布
打包當然還是需要使用xCode來完成的岩瘦,那么在這之前需要幾個操作必須完成
1未巫、生成main.jsbundle文件,就是上面說到的標紅的文件担钮,這個可以直接使用如下命令橱赠,在終端中執(zhí)行即可:
運行命令打包react-native bundle --platform平臺--entry-file啟動文件--bundle-output打包js輸出文件--assets-dest資源輸出目錄--dev是否調(diào)試
eg: react-native bundle --platform ios --entry-file=./index.ios.js --bundle-output ./ios/main.jsbundle--assets-dest ./ios/bundle --dev false
這段命令執(zhí)行成功之后,再去xCode工程中查看箫津,之前標紅的文件已經(jīng)不再標紅了狭姨,說明已經(jīng)創(chuàng)建成功了宰啦。
2、確定Scheme中build選項是Release模式饼拍,如下圖:
以上兩部操作執(zhí)行結束之后赡模,你就可以根據(jù)iOS的打包經(jīng)驗開開心的打包發(fā)布了!
作者鏈接:http://www.reibang.com/p/1934710f938f(出處)