2016-12-14 72 views
1

Iam正在開發react-native應用程序。 以前我的應用程序版本是0.25.0,但現在我升級了我的應用程序的反應原生版本。React-native項目未在ios設備上運行(版本0.39.0)

現在我的應用沒有在iOS設備上運行。 它顯示爲 '未實現loadSourceForBridge'時,'bundleURL必須爲非零。

我AppDelegate.m文件看起來像:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    NSURL *jsCodeLocation; 
    jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil]; 
    NSLog(@"JSCodelocationh=%@",jsCodeLocation); 
    RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation 
                 moduleName:@"Roger" 
               initialProperties:nil 
                launchOptions:launchOptions]; 
    rootView.backgroundColor = [[UIColor alloc] initWithRed:1.0f green:1.0f blue:1.0f alpha:1]; 

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

在此我jsCodeLocation將返回空值。 任何人都可以告訴我如何解決這個問題。

+0

當您升級您的項目時,您是否還使用'react-native update'更新了項目文件? – martinarroyo

+0

是的,我遵循反應原生文檔中給出的程序,我用'反應原生升級' –

回答

0

某些反應原生版本升級需要手動步驟。 Read official docscheck with rn-diff

+0

是的,我檢查,但我已經改變了一切,但仍然在jscodelocation中得到空。 –

+0

Tq我發現解決方案我有一些內部錯誤,我不能在控制檯中看到,因爲我的main.jsbundle沒有正確創建。清除所有錯誤後,我的main.jsbundle被正確創建,現在獲得我的jscodelocation。 –

0

我有一個類似的問題。 添加-lc++Other Linker Flags幫助。

我也更新在AppDelegate中的代碼不使用jsBundleURLForBundleRoot(它在示例項目用於反應本地導航)

檢查:(NPM 3有同樣的問題) https://github.com/wix/react-native-navigation/issues/1

+0

Tq我發現解決方案我有一些內部錯誤,我不能在控制檯中看到,因爲我的main.jsbundle沒有正確創建。清除所有錯誤後,我的main.jsbundle被正確創建,現在獲得我的jscodelocation。 –

0

謝謝你幫助我解決我的問題。 我發現解決方案我有一些內部錯誤,我不能在控制檯中看到,因爲我的main.jsbundle沒有正確創建。清除所有錯誤後,我的main.jsbundle被正確創建,現在獲得我的jscodelocation。

相關問題