国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

React Native發布APP之打包iOS應用

2019-11-09 14:36:06
字體:
來源:轉載
供稿:網友

本文出自《React Native學習筆記》系列文章。

用React Native開發好APP之后,如何將APP發布以供用戶使用呢?一款APP的發布流程無外乎:簽名打包—>發布到各store這兩大步驟。本文將向大家分享如何簽名打包一款React Native APP。

在本文中我將為大家講解如何打包和發布React Native iOS App。

關于打包React Native Android應用請查看《React Native發布APP之簽名打包APK》

第一步:導出js bundle包和圖片資源

和打包React Native Android應用不同的是,我們無法通過命令一步進行導出React Native iOS應用。我們需要將JS部分的代碼和圖片資源等打包導出,然后通過XCode將其添加到iOS項目中。

導出js bundle的命令

在React Native項目的根目錄下執行:

react-native bundle --entry-file index.ios.js --platform ios --dev false --bundle-output release_ios/main.jsbundle --assets-dest release_ios/

通過上述命令,我們可以將JS部分的代碼和圖片資源等打包導出到release_ios目錄下:

生成jsbundle

其中,assets為項目中的JS部分所用到的圖片資源(不包括原生模塊中的圖片資源),main.jsbundle是JS部分的代碼。

在執行打包命令之前,我們需要先確保在我們項目的根目錄有release_ios文件夾,沒有的話創建一個。

第二步:將js bundle包和圖片資源導入到iOS項目中

這一步我們需要用到XCode,選擇assets文件夾與main.jsbundle文件將其拖拽到XCode的項目導航面板中即可。

導入jsbundle

然后,修改AppDelegate.m文件,添加如下代碼:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ NSURL *jsCodeLocation; //jsCodeLocation = [[RCTBundleURLPRovider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil]; +jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];#endif... return YES;}

上述代碼的作用是讓React Native去使用我們剛才導入的jsbundle,這樣以來我們就擺脫了對本地nodejs服務器的依賴。

提示:如果在項目中使用了CodePush熱更新,那么我們需要就可以直接通過CodePush來讀取本地的jsbundle,方法如下:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ NSURL *jsCodeLocation; #ifdef DEBUG jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil];#else jsCodeLocation = [CodePush bundleURL];#endif... return YES;}

到目前為止呢,我們已經將js bundle包和圖片資源導入到iOS項目中,接下來我們就可以發布我們的iOS應用了。

第三步:發布iOS應用

發布iOS應用我們需要有一個99美元的賬號用于將App上傳到AppStore,或者是299美元的企業級賬號用于將App發布到自己公司的服務器或第三方公司的服務器。

接下來我們就需要進行申請APPID ? 在Tunes Connect創建應用 ? 打包程序 ? 將應用提交到app store等幾大步驟。

因為官方文檔中有詳細的說明,在這我就不再重復了。

如果,大家在打包發布React Native iOS應用的過程中遇到問題可以在本文的下方進行留言,我看到了后會及時回復的哦。 另外也可以關注我的新浪微博,或者關注我的Github來獲取更多有關React Native開發的技術干貨

了解更多,可加入: React Native學習交流群 React Native學習交流群



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 灯塔市| 随州市| 广德县| 云梦县| 铜梁县| 贵德县| 崇明县| 随州市| 杭州市| 莫力| 博罗县| 五原县| 自贡市| SHOW| 宿州市| 镇江市| 博兴县| 奉化市| 新邵县| 阳新县| 岳阳市| 沈阳市| 鲜城| 连平县| 尖扎县| 大同市| 凌云县| 闽侯县| 商丘市| 曲靖市| 邯郸县| 夏邑县| 进贤县| 永康市| 麻城市| 湖南省| 洛宁县| 合阳县| 乐东| 东莞市| 汤阴县|