TIM*_*MEX 5 xcode image build ios react-native
我通常显示这样的图像:
<Image source={require('../../assets/images/color/stuff.png')} />
<Image source={require('../some-other-path/picture.png')} />
Run Code Online (Sandbox Code Playgroud)
过去,我可以在任何文件夹中拥有任何我想要的任意路径。
然后,当我为发布而构建时,我会在构建 > 运行之前执行此操作:
react-native bundle --platform ios --dev false --entry-file index.js --bundle-output ./ios/main.jsbundle
Run Code Online (Sandbox Code Playgroud)
升级到 XCode 后,每当我进行发布构建时,我的图像就不再出现。在开发版本中,图像是可见的。
我试过了--assets-dest ./some-folder
,但结果是一样的。
什么可能导致这种变化?
就我而言,我使用的是 resizeMode='center',当我从 'center' 更改为 'contain' 时,它解决了我的问题。
ios
=> 创建文件夹assets
assets
=> 创建与项目中保存图像的文件夹相同的文件夹结构(在我的例子中,我将所有图像保存在
app > src > assets > image
)并将所有图像复制到此文件夹Build Phases
assets
将我们创建的文件夹拖入Copy Bundle Resources
Copy items if needed and press Finish
完毕!
PS:如果您的图像名称是这样的,my_image.ios.jpg
您需要将它们重命名为my_image.jpg
.
在“构建阶段”>“捆绑 React Native”代码和图像中,替换您为此拥有的任何行:
export NODE_BINARY=node ../node_modules/react-native/scripts/react-native-xcode.sh
Run Code Online (Sandbox Code Playgroud)
之后,从 xcode 和文件夹中删除 main.jsbundle 文件并再次重新制作:
react-native bundle --entry-file='index.js' --bundle-output='./ios/main.jsbundle' --dev=false --platform='ios' --assets-dest='./ios'
Run Code Online (Sandbox Code Playgroud)
之后,再次添加生成的main.jsbundle。再次清理、构建并运行项目。
归档时间: |
|
查看次数: |
544 次 |
最近记录: |