回归RN,非常开心啊!
在React Native 0.49.5上开发,直接遇到一个ios模拟器的问题。这个问题很简单就是Bundle URL not present
。
在网上找了很多的解决方法,都不能用。
最后发现,其实就是访问localhost
的时候找不见地址。只要把localhost
改成127.0.0.1
就可以了。但是从哪里改呢?stackoverflow的方法并不可行,OC的文件早就移动的不知道哪里去了。
于是乎,只好从AppDelegate.m
文件里的js code location方法调用里开始往里面找。
于是就在RCTBundleURLProvider#- (BOOL)isPackagerRunning:(NSString *)host
找到了localhost。只要这么改一下就好:
// NSString *host = ipGuess ?: @"localhost"; NSString *host = ipGuess ?: @"127.0.0.1";
非常的简单。
还有在这个问题里,RN会有一个修改什么Executor的文件里的localhost的建议。这个不用考虑了。这个是在调试的时候才会遇到的,和run app的时候遇到的问题不是一个地方。
序曲结束。强势回归!!!