ReactNative跨平臺開發系列教程:html
帶你從零學ReactNative開發跨平臺App開發(一)react
帶你從零學ReactNative開發跨平臺App開發(二)android
帶你從零學ReactNative開發跨平臺App開發(三)ios
帶你從零學ReactNative開發跨平臺App開發(四)git
帶你從零學ReactNative開發跨平臺App開發(五)github
帶你從零學ReactNative開發跨平臺App開發(六)npm
帶你從零學ReactNative開發跨平臺App開發(七)json
hot:更多>>react-native
不知不覺已經寫了七篇,expo其實比處於rn,可是比rn要簡單,現成的東西也是不少的,上次我根據版本推斷了一下,expo 17對應rn0.44,這樣算來,在rn0.27的時候,expo才推出來,一件新事物的出現,必然有必定的機遇,expo基於rn,可是開發的高效,也是許多人喜歡的緣由吧!好了很少說了,開始擼碼,你準備好了嗎?app
expo打包發佈
這篇主要說一下,如何使用expo打包發佈你作好的app,由於在打包以前,你的app都是運行在expo client的。
要用expo打包發佈項目,咱們的須要有exp命令,這個命令你能夠經過
npm install -g exp
進行全局安裝,安裝以前你能夠檢查一下你是否 曾經安裝過它。如圖:(這裏我已經安裝過了)
演示打包發佈的話,咱們新建一個項目 ,而後演示
配置項目的app.json
主要是填寫一下配置信息,這裏須要注意兩點:配置ions的時候,對icons的圖像大小是作限制的,文檔中有體現,好像必須是120*120,若是尺寸不對的話,
會發布失敗,還有一點的話,ios獨立app默認是白色的,可是當咱們用expo發佈後,他會變成黑色,咱們須要用代碼控制顏色,<StatusBar barStyle="dark-content" />
詳細的關於statusbar資料,請參考這裏。
若是配置好了之後的話,進入expo項目根目錄,咱們執行一下命令
exp start
發現有錯誤,更正後,咱們再次運行:
哈哈,給了不少警告,暫且無論他,
咱們繼續操做:另開一個窗口,運行下面命令
exp build:android
or
exp build:ios
我們在這裏詳細看一下這句話:
這裏其實就是一個友情提示一下,問你瞭解keystore嗎?若是你不知道本地如何生成它的話,或者說,你根本就不知道什麼是keystore的話,expo將替你生成它,
這裏咱們介紹一下本地如何生成他,這裏我引用情書哥的簡書
keytool命令生成一個私有密鑰。在Windows上keytool命令放在JDK的bin目錄中(好比C:\Program Files\Java\jdkx.x.x_x\bin),你可能須要在命令行中先進入那個目錄才能執行此命令。在mac上,直接進入項目根目錄輸入一下命令: $ keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000 這條命令會要求你輸入密鑰庫(keystore)和對應密鑰的密碼,而後設置一些發行相關的信息。最後它會生成一個叫作my-release-key.keystore的密鑰庫文件。 在運行上面這條語句以後,密鑰庫裏應該已經生成了一個單獨的密鑰,有效期爲10000天。--alias參數後面的別名是你未來爲應用簽名時所須要用到的,因此記得記錄這個別名。 注意:請記得妥善地保管好你的密鑰庫文件,不要上傳到版本庫或者其它的地方。嗯,這就是如何生成keystore
打包過程當中,他會給我生成一個url
這是它先把咱們的項目放到了expo官網上了,訪問這個連接,能夠看到你發佈的項目。
在打包的過程當中,咱們還能夠查看打包的進度
exp build:status
此圖顯示,正在打包中,過程有點漫長,要有耐心,.,
打包成功後,咱們會獲得 .
apk
(Android) or.ipa
(iOS)的連接包,咱們能夠複製這個連接去下載咱們打包好多apk或者ipa
拿到下載好的apk,你就能夠往各大應用商店發佈了!!
個人github地址 項目在這裏找到!
後續文章持續更新,敬請期待!
文章爲做者原創,轉載請註明出處。