React-native项目未在ios设备上运行(版本0.39.0)
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将返回空值。 任何人都可以告诉我如何解决这个问题。
某些反应原生版本升级需要手动步骤。 Read official docs和check with rn-diff。
是的,我检查,但我已经改变了一切,但仍然在jscodelocation中得到空。 –
Tq我发现解决方案我有一些内部错误,我不能在控制台中看到,因为我的main.jsbundle没有正确创建。清除所有错误后,我的main.jsbundle被正确创建,现在获得我的jscodelocation。 –
我有一个类似的问题。 添加-lc++
在Other Linker Flags
帮助。
我也更新在AppDelegate中的代码不使用jsBundleURLForBundleRoot(它在示例项目用于反应本地导航)
检查:(NPM 3有同样的问题) https://github.com/wix/react-native-navigation/issues/1
Tq我发现解决方案我有一些内部错误,我不能在控制台中看到,因为我的main.jsbundle没有正确创建。清除所有错误后,我的main.jsbundle被正确创建,现在获得我的jscodelocation。 –
谢谢你帮助我解决我的问题。 我发现解决方案我有一些内部错误,我不能在控制台中看到,因为我的main.jsbundle没有正确创建。清除所有错误后,我的main.jsbundle被正确创建,现在获得我的jscodelocation。
当您升级您的项目时,您是否还使用'react-native update'更新了项目文件? – martinarroyo
是的,我遵循反应原生文档中给出的程序,我用'反应原生升级' –