创建发布包后不显示带有 URI 源的图像
Images with URI sources does not display after creating release bundle
我总是通过 运行 命令 ./gradlew bundleRelease
创建我的发布包,但是,我最近发现来自后端的源图像无法显示,而静态图像做。
之前,我误以为静态图片根本不显示。然后我得到了 运行 的建议
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
,但是这创建了我不得不删除的重复资源。事实证明这不是问题,因为静态图像已正确渲染。我还没有找到任何相关的解决方案,但很高兴听到建议。下面是我的 app/build.gradle
的一部分:
project.ext.react = [
enableHermes: true, // clean and rebuild if changing
bundleAssetName: "index.android.bundle",
bundleInRelease: true,
bundleInDebug: true
]
apply from: "../../node_modules/react-native/react.gradle"
:
:
:
apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
P.S:使用 ./gradlew assembleDebug
创建 apk 构建非常有效。
经过几天毫无结果的调试,我发现错误不是来自我的代码。
从后端提供图像的 Cloudinary 将我的图像作为 http 而不是 https 图像返回。并且 android 版本 9 及更高版本不会在发布时呈现 http 图像,除非我在我的 AndroidManifest.xml 中要求它这样做。所以,我通过这样做解决了它。您可以参考此 了解如何操作。
我总是通过 运行 命令 ./gradlew bundleRelease
创建我的发布包,但是,我最近发现来自后端的源图像无法显示,而静态图像做。
之前,我误以为静态图片根本不显示。然后我得到了 运行 的建议
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
,但是这创建了我不得不删除的重复资源。事实证明这不是问题,因为静态图像已正确渲染。我还没有找到任何相关的解决方案,但很高兴听到建议。下面是我的 app/build.gradle
的一部分:
project.ext.react = [
enableHermes: true, // clean and rebuild if changing
bundleAssetName: "index.android.bundle",
bundleInRelease: true,
bundleInDebug: true
]
apply from: "../../node_modules/react-native/react.gradle"
:
:
:
apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
P.S:使用 ./gradlew assembleDebug
创建 apk 构建非常有效。
经过几天毫无结果的调试,我发现错误不是来自我的代码。
从后端提供图像的 Cloudinary 将我的图像作为 http 而不是 https 图像返回。并且 android 版本 9 及更高版本不会在发布时呈现 http 图像,除非我在我的 AndroidManifest.xml 中要求它这样做。所以,我通过这样做解决了它。您可以参考此