0
我试图对我的反应原生应用程序运行KIF测试,但由于开发服务器未运行,因此它在CI上失败。显然它应该回落到本地软件包,如果它没有找到运行的开发服务器,但似乎没有工作。如何使用本地软件包而不是开发服务器运行我的应用程序
我使用react-native 0.33和xcode 8.0。
我试图对我的反应原生应用程序运行KIF测试,但由于开发服务器未运行,因此它在CI上失败。显然它应该回落到本地软件包,如果它没有找到运行的开发服务器,但似乎没有工作。如何使用本地软件包而不是开发服务器运行我的应用程序
我使用react-native 0.33和xcode 8.0。
首先,使用“react-native bundle”命令进行捆绑。现在,你会得到一个main.js束。
然后,把main.jsbundle放到你的xcode项目中,像添加资源一样添加。
最后,请确保您使用RCTBridge启动RCTRootView,实现委托“sourceUrlForBridge”。
- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
{
// NSString *jsBundlePath = @"http://localhost:8081/index.ios.bundle?platform=ios&dev=true";
// NSURL *jsBundleURL = [NSURL URLWithString:jsBundlePath];
NSString *path = [[NSBundle mainBundle] pathForResource:@"main" ofType:@"jsbundle"];
NSURL *jsBundleURL = [NSURL URLWithString:path];
return jsBundleURL;
}