2016-08-11 1 views
6

React Native 0.30으로 업그레이드 한 이래로 개발 서버가 아닌 사전 번들 파일에서 실제 iPhone을로드합니다. 변경 사항을 확인하는 유일한 방법은 앱을 다시 빌드하고 실행하는 것입니다. 이전에는 새로 고침을 통해 iPhone에서 즉시 변경 사항을 볼 수있었습니다.React Native 0.30이 iPhone 장치의 개발 서버에서 변경되지 않는 이유는 무엇입니까?

시뮬레이터를 사용하는 경우 변경 내용이 개발 서버에서 올바르게로드됩니다. 당신이 jsCodeLocation 실행 react-native upgrade를 작성할 필요가 없습니다 0.30에

#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:@"upool" 
               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; 
} 

@end 

답변

-1

마이그레이션 및 당신은 번들을 사용하는 jsCodeLocation을 설정 한

0

변경할 수 :

여기 내 AppDelegate.m입니다. 해당 행을

으로 변경하십시오.

jsCodeLocation = [NSURL URLWithString:@"http://192.168.0.7:8081/index.ios.bundle?platform=ios&dev=true"]; 

터미널에서 ifconfig를 실행하여 컴퓨터의 공용 IP를 얻을 수 있습니다. IP 주소는 아래에 나열되어 있으며 그 다음은 inet입니다.

관련 문제