4

我在尝试从 Android 设备(1+ 5t)加载应用程序时得到了这个

error: bundling failed: Invariant Violation: invalid asset resolution
    at invariant (~/project/node_modules/metro/node_modules/fbjs/lib/invariant.js:40:15)
    at ModuleResolver._getFileResolvedModule (~/project/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:175:9)
    at ModuleResolver.resolveDependency (~/project/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:116:19)
    at ResolutionRequest.resolveDependency (~/project/node_modules/metro/src/node-haste/DependencyGraph/ResolutionRequest.js:49:18)
    at DependencyGraph.resolveDependency (~/project/node_modules/metro/src/node-haste/DependencyGraph.js:218:16)
    at Object.resolve (~/project/node_modules/metro/src/lib/transformHelpers.js:141:30)
    at dependencies.map.result (~/project/node_modules/metro/src/DeltaBundler/traverseDependencies.js:373:31)
    at Array.map (<anonymous>)
at resolveDependencies (~/project/node_modules/metro/src/DeltaBundler/traverseDependencies.js:369:18)
at ~/project/node_modules/metro/src/DeltaBundler/traverseDependencies.js:188:33
BUNDLE  [android, dev] ./index.js ░░░░░░░░░░░░░░░░ 0.0% (0/1), failed.

试过:

- 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
- react-native start --reset-cache
- rm -rf node_module & yarn install

这 - 没用

任何帮助,将不胜感激

4

2 回答 2

2

修复:删除“.ios”。由于我的应用程序目前仅在 ios 上运行,因此没有图像名称,我在一些图像名称中有些剩余,例如“welcome@2.ios.png” - 所以在 android 上运行时,react native 找不到任何资源

于 2019-05-20T15:10:18.090 回答
0

当您使用 React Native Platform Api ( https://reactnative.dev/docs/platform ) 时,如果您的资产文件夹中有 2 个文件来显示不同的 UI,一个用于 Android,一个用于 Ios,当您调用图像时,您必须删除文件名中的 Os 类型。

我的意思是,buttonIcon.android.png || 按钮图标.ios.png => 按钮图标.png

React Native Platform api 将进行切换。

前任 :

var displayShareButton = () => { if(data != undefined && Platform.OS === "android") { return( <TouchableOpacity style={styles.shareButton} onPress={() => shareSomething()} > <图片样式={styles.shareImage} 来源={require("../assets/buttonIcon.png")}/>) } }

希望它能解决问题:)

于 2021-01-21T10:38:19.580 回答