code-push-cli使用

https://github.com/shm-open/code-push-server/blob/master/README.cn.md

https://github.com/crazycodeboy/RNStudyNotes/tree/master/React%20Native%E5%BA%94%E7%94%A8%E9%83%A8%E7%BD%B2%E3%80%81%E7%83%AD%E6%9B%B4%E6%96%B0-CodePush%E6%9C%80%E6%96%B0%E9%9B%86%E6%88%90%E6%80%BB%E7%BB%93#%E9%9B%86%E6%88%90codepush-sdk

https://github.com/Microsoft/react-native-code-push

依賴

本地需要安裝nodejs

安裝cli

npm install -g @shm-open/code-push-cli

確認(rèn)安裝結(jié)果

code-push -v

我本地安裝成功后的版本為2.6.1

image.png

創(chuàng)建賬號

服務(wù)賬號和密碼

code-push register https://code-push-server-feature.***.com/

此時瀏覽器會自動打開生成token的頁面妻熊,同時終端會提示需要你輸入token秀又。

在網(wǎng)頁內(nèi)點擊獲取token载迄,然后點擊生成token栈妆,即可拿到token的值挽霉。

image.png

點擊獲取token按鈕,生成token

image.png
image.png

然后把token復(fù)制下來惜傲,粘貼到終端里

image.png

敲擊回車鍵妥凳,既可以看到登陸成功的提示。

身份認(rèn)證

如果是剛剛操作完register锌杀,并輸入了token甩栈。即表示身份認(rèn)證成功「庠伲可略過此步驟量没。

如果長時間未操作,不確定是否需要認(rèn)證亿鲜≡黍冢可以通過一些方法判斷是否需要認(rèn)證.

當(dāng)你從CLI登錄后,你的訪問密鑰(Access Key)就一直保存在你本地磁盤上蒿柳,所以不必每次使用帳號都需要登錄

查詢是否已登錄

可以在任何時候饶套,通過下面的命令,確認(rèn)本地是否已經(jīng)登錄

code-push whoami
image.png

如果顯示郵箱地址垒探,表示已登錄妓蛮。否則會提示當(dāng)前未登錄。

image.png

登錄

code-push login https://code-push-server-feature.***.com/

這個命令也會打開瀏覽器圾叼,然后去生成token蛤克,然后把token復(fù)制粘貼到終端里。和register命令行為差不多

退出登錄

code-push logout

主動退出登錄

查看已登錄賬號列表

code-push access-key ls

刪除某個賬號

code-push access-key rm <accessKey>

登錄多個賬號

創(chuàng)建一個賬號

如果你需要其他賬號夷蚊,也可以新建一個其他的賬號

code-push access-key add "VSTS Integration"

通過上面的命令可以生成一個新的token

登錄其他賬號

然后登錄一下

code-push login --accessKey <accessKey>

應(yīng)用管理

每一個熱更新的頁面构挤,都需要在熱更新服務(wù)里創(chuàng)建對應(yīng)的應(yīng)用。

同一個頁面惕鼓,需要分別創(chuàng)建Android和iOS的應(yīng)用筋现,不可以使用同一個。

應(yīng)用創(chuàng)建

code-push app add <appName> <os> <platform>

appName: 應(yīng)用名稱

os: 操作系統(tǒng)

platform: 支持react-native和cordova箱歧。 cordova暫時用不到

創(chuàng)建應(yīng)用的時候矾飞,推薦通過不同的后綴區(qū)分對應(yīng)的系統(tǒng)

所有新的Apps自動會出現(xiàn)兩個部署環(huán)境(StagingProduction

示例:

code-push app add MyApp-Android android react-native
code-push app add MyApp-iOS ios react-native
image.png
image.png

查詢某個app的Deployment key

code-push deployment ls <appName> -k

示例:

image.png

應(yīng)用重命名

code-push app rename <appName> <newAppName>

示例:

image.png

應(yīng)用刪除

code-push app rm <appName>

示例:

image.png

應(yīng)用合作

可以將自己賬號下的某一個應(yīng)用的操作權(quán)限,分配給其他賬號呀邢,一起合作管理應(yīng)用

code-push collaborator add <appName> <collaboratorEmail>

這里需要別人提供一個已注冊的賬號

一旦添加了洒沦,所有的合作者將立即擁有了最新分享App的如下權(quán)限:

  1. 查看App,它的合作者价淌,<u>部署管理</u>和<u>查看發(fā)布?xì)v史</u>申眼。

  2. <u>發(fā)布</u>更新到任何應(yīng)用的部署環(huán)境瞒津。

  3. <u>促進(jìn)</u>更新在任何應(yīng)用部署環(huán)境之間。

  4. <u>回滾</u>任何應(yīng)用部署豺型。

  5. <u>打補(bǔ)丁</u>在任何應(yīng)用部署里仲智。

相反的,這就意味著一個合作者不能做任何如下的事情:

  1. 重命名或刪除應(yīng)用姻氨。

  2. 轉(zhuǎn)讓應(yīng)用的所有權(quán)。

  3. 創(chuàng)建剪验,重命名或刪除新的部署環(huán)境肴焊。

  4. 清除一個部署歷史。

  5. 添加或刪除合作者功戚。

一個合作的開發(fā)者可以移除他/她自己

解除合作者關(guān)系

code-push collaborator rm <appName> <collaboratorEmail>

列出應(yīng)用的所有合作者

code-push collaborator ls <appName>

轉(zhuǎn)讓給其他開發(fā)者

code-push app transfer <appName> <newOwnerEmail>

部署管理

打包

發(fā)布更新

code-push release MyApp-iOS /Users/***/Documents/***/demos/AwesomeProject/bundles 1.0.0

code-push release <應(yīng)用名稱> <Bundles所在目錄> <對應(yīng)的應(yīng)用版本> --deploymentName: 更新環(huán)境 --description: 更新描述  --mandatory: 是否強(qiáng)制更新 

注意:

  1. CodePush默認(rèn)是更新 staging 環(huán)境的娶眷,如果是staging,則不需要填寫 deploymentName啸臀。

  2. 如果有 mandatory 則Code Push會根據(jù)mandatory 是true或false來控制應(yīng)用是否強(qiáng)制更新届宠。默認(rèn)情況下mandatory為false即不強(qiáng)制更新。

  3. 對應(yīng)的應(yīng)用版本(targetBinaryVersion)是指當(dāng)前app的版本(對應(yīng)build.gradle中設(shè)置的versionName "1.0.6")乘粒,也就是說此次更新的js/images對應(yīng)的是app的那個版本豌注。不要將其理解為這次js更新的版本。 如客戶端版本是 1.0.6灯萍,那么我們對1.0.6的客戶端更新js/images轧铁,targetBinaryVersion填的就是1.0.6。

  4. 對于對某個應(yīng)用版本進(jìn)行多次更新的情況旦棉,CodePush會檢查每次上傳的 bundle齿风,如果在該版本下如1.0.6已經(jīng)存在與這次上傳完全一樣的bundle(對應(yīng)一個版本有兩個bundle的md5完全一樣),那么CodePush會拒絕此次更新绑洛。 如圖:

image.png
  1. 所以如果我們要對某一個應(yīng)用版本進(jìn)行多次更新救斑,只需要上傳與上次不同的bundle/images即可。如: eg: 對1.0.6的版本進(jìn)行第一次更新: code-push release GitHubPopular ./bundles/index.android.bundle 1.0.6 --deploymentName Production --description "1.支持文章緩存真屯。" --mandatory true 對1.0.6的版本進(jìn)行第二次更新: code-push release GitHubPopular ./bundles/index.android.bundle 1.0.6 --deploymentName Production --description "1.新添加收藏功能脸候。" --mandatory true 在終端輸入 code-push deployment history <appName> Staging 可以看到Staging版本更新的時間、描述等等屬性讨跟。 eg: code-push release Equipment ./bundles 1.0.1

app版本號的填寫說明

image.png

發(fā)布更新&打包

code-push release-react MyApp-iOS ios

Code-push release-react <appName> <platform>

執(zhí)行該命令,會自動打包切上傳

image.png

這里可能可能會有個目錄結(jié)構(gòu)的問題纪他,執(zhí)行過程中會自動檢測ios/文件下的內(nèi)容,可能會因為目錄問題報錯

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末晾匠,一起剝皮案震驚了整個濱河市茶袒,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌凉馆,老刑警劉巖薪寓,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件亡资,死亡現(xiàn)場離奇詭異,居然都是意外死亡向叉,警方通過查閱死者的電腦和手機(jī)锥腻,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人搂橙,你說我怎么就攤上這事竹伸。” “怎么了幸斥?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長咬扇。 經(jīng)常有香客問我甲葬,道長,這世上最難降的妖魔是什么懈贺? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任经窖,我火速辦了婚禮,結(jié)果婚禮上梭灿,老公的妹妹穿的比我還像新娘画侣。我一直安慰自己,他們只是感情好胎源,可當(dāng)我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布棉钧。 她就那樣靜靜地躺著,像睡著了一般涕蚤。 火紅的嫁衣襯著肌膚如雪宪卿。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天万栅,我揣著相機(jī)與錄音佑钾,去河邊找鬼。 笑死烦粒,一個胖子當(dāng)著我的面吹牛休溶,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播扰她,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼兽掰,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了徒役?” 一聲冷哼從身側(cè)響起孽尽,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎忧勿,沒想到半個月后杉女,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瞻讽,經(jīng)...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年熏挎,在試婚紗的時候發(fā)現(xiàn)自己被綠了速勇。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡坎拐,死狀恐怖烦磁,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情哼勇,我是刑警寧澤个初,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站猴蹂,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏楣嘁。R本人自食惡果不足惜磅轻,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望逐虚。 院中可真熱鬧聋溜,春花似錦、人聲如沸叭爱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽买雾。三九已至把曼,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間漓穿,已是汗流浹背嗤军。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留晃危,地道東北人叙赚。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像僚饭,于是被迫代替她去往敵國和親震叮。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,614評論 2 353

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