簡體   English   中英

在iPhone上運行React Native App

[英]Running React Native App on iPhone

我正在嘗試運行使用react native(v0.3)創建的應用程序,而根本沒有連接到我的計算機。 我已經將應用程序與react-native bundle --dev false --entry-file index.ios.js --bundle-output ios/main.jsbundle --platform ios並在連接的iPhone上運行(也更改為Release在Xcode上)。

即使(在啟動后)我禁用了WiFi並從Mac斷開了手機的連接,它也能正常工作。 但是,如果我完全關閉該應用程序並嘗試再次啟動它(未連接WiFi或USB),它將崩潰(顯示應用程序屏幕並在幾秒鍾后崩潰)...

在啟動時,我會看到一個標有“正在連接到192。*”(可能是我的Mac的IP地址)之類的綠色條。 如何完全禁用連接? 該連接對於調試非常有用,但是無法向他人展示該應用程序。

按照官方文檔中的建議取消對AppDelegate.mjsCodeLocation部分的注釋不是很有幫助,因為不可能生成以下代碼:

#import "AppDelegate.h"

#import "RCTBundleURLProvider.h"
#import "RCTRootView.h"

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  NSURL *jsCodeLocation;

  jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil];

  RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation
                                                      moduleName:@"weather"
                                               initialProperties:nil
                                                   launchOptions:launchOptions];
  rootView.backgroundColor = [[UIColor alloc] initWithRed:1.0f green:1.0f blue:1.0f alpha:1];

  self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
  UIViewController *rootViewController = [UIViewController new];
  rootViewController.view = rootView;
  self.window.rootViewController = rootViewController;
  [self.window makeKeyAndVisible];
  return YES;
}

還是我只是在這里想念東西?

版本:

  • OSX 10.11.5
  • Xcode 7.3.1
  • React Native 0.3
  • npm 3.10.3

一種可能的解決方案是在Release模式下運行您的應用,該模式將自動使用編譯后的捆綁包,而不是托管的捆綁包。 在開發模式下,不打包捆綁軟件並將其存儲在設備上,以縮短構建時間。 當您將配置設置為Releasereact-native-xcode.sh腳本會自動為您運行bundle命令,並准備資產和Javascript代碼以存儲在設備上。

為此,只需單擊您的項目名稱(在本例中為Basic): 在此處輸入圖片說明

然后從模式中選擇Edit Scheme並將Build configuration從Debug更改為Release。

請注意,您還可以創建一個新方案,以同時具有調試和發布模式。 為此,只需從前面提到的模式中選擇“ New Scheme ”而不是“ Edit Scheme並相應地應用相同的調整即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM