目录
ReactNative在Android环境中运行时候会先将RN相关资源打包并合并到android应用的assets目录,相关资源包内容如下(包括但不限于一下资源,这里是demo,比较简单):
Drawable-x包下面主要是一些图片的资源
raw包配置相关资源
index.androd.bindle是js相关代码打包后的特殊格式文件,其中包含应用相关信息等,也只android应用主要加载的目标。
当apk运行起来后,需要加载RN相关资源的时候应用默认会去assets目录下找,这个目录是固定不变,而且从云端下拉的资源也无法放入,但云端下啦的资源可以放在固定的目录下,所以本地热加载RN资源的重点是重新指定资源加载路径,并让android应用将这些资源加载运行起来。
思路:
- 搭建本地服务器,事先准备好RN打包好的bundle.zip资源包;
- 下拉bundle.zip资源包并解压到指定目录;
- 重写React native相关代码指定资源包加载路径和加载逻辑
搭建服务提供下载资源
mac上相对简单,主要通过python,实现在桌面建立文件见并将bundle.zip包放入,命令行
1)$ cd /Users/xxxx/Desktop/server
2)$ python -m SimpleHTTPServer 8900
3)验证服务可用,浏览器输入: