反应本机错误:重复资源,资产在android版本APK中的某些屏幕中出现,而在其他屏幕中没有出现
我正在Android中使用Gradle版本反应本机错误:重复资源,资产在android版本APK中的某些屏幕中出现,而在其他屏幕中没有出现,android,react-native,gradle,android-gradle-plugin,Android,React Native,Gradle,Android Gradle Plugin,我正在Android中使用Gradle版本3.2.0和compileSdkVersion28构建React本机应用程序的APK发行版。我正在运行以下命令: 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
3.2.0
和compileSdkVersion
28构建React本机应用程序的APK发行版。我正在运行以下命令:
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/
cd android && ./gradlew clean && ./gradlew assembleRelease && ./gradlew installRelease
我的文件夹结构是:
我的package.json
是:
{
"name": "App",
"version": "2.0.0",
"private": true,
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
},
"dependencies": {
"axios": "^0.18.0",
"native-base": "^2.8.0",
"prop-types": "^15.6.2",
"qs": "^6.5.2",
"react": "^16.5.2",
"react-native": "0.57.0",
"react-native-animatable": "^1.3.0",
"react-native-animated-icons": "^1.0.5",
"react-native-appsee": "^2.4.14",
"react-native-blur": "^3.2.2",
"react-native-cast-chrome": "1.0.0",
"react-native-cast-ui": "1.0.0",
"react-native-device-info": "^0.22.3",
"react-native-dialog": "^5.1.0",
"react-native-elements": "^0.19.1",
"react-native-email": "^1.0.1",
"react-native-fast-image": "^5.0.3",
"react-native-fbsdk": "^0.8.0",
"react-native-flurry-analytics": "^3.0.2",
"react-native-gridview": "^0.1.2",
"react-native-iap": "^2.2.1",
"react-native-iphone-x-helper": "^1.0.3",
"react-native-keyboard-aware-scroll-view": "^0.7.0",
"react-native-kochava-tracker": "^1.0.0",
"react-native-linear-gradient": "^2.4.0",
"react-native-material-dropdown": "^0.11.1",
"react-native-modal": "^6.5.0",
"react-native-orientation": "^3.1.3",
"react-native-photo-upload": "^1.3.0",
"react-native-scrollable-tab-view": "^0.8.0",
"react-native-snap-carousel": "^3.7.4",
"react-native-tab-view": "^1.2.0",
"react-native-underline-tabbar": "^1.3.6",
"react-native-vector-icons": "^5.0.0",
"react-native-video": "^3.2.1",
"react-native-video-controls": "^2.2.3",
"react-navigation": "^2.11.2",
"react-navigation-backhandler": "^1.1.1",
"react-redux": "^5.0.7",
"redux": "^4.0.0",
"redux-logger": "^3.0.6",
"redux-thunk": "^2.3.0"
},
"devDependencies": {
"@babel/plugin-external-helpers": "^7.0.0",
"ajv": "^6.5.2",
"babel-eslint": "^9.0.0",
"babel-jest": "23.4.2",
"babel-plugin-transform-remove-console": "^6.9.4",
"eslint": "^5.3.0",
"eslint-config-airbnb": "^17.1.0",
"eslint-plugin-import": "^2.14.0",
"eslint-plugin-jsx-a11y": "^6.1.1",
"eslint-plugin-react": "^7.11.0",
"jest": "23.4.2",
"metro-react-native-babel-preset": "^0.45.4",
"react-test-renderer": "16.4.1",
"schedule": "^0.4.0"
},
"jest": {
"preset": "react-native"
}
}
在运行命令时,我在任务:app:mergeReleaseResources FAILED
和error:Duplicate resources
上为我的所有资产得到了错误。从我的可绘制文件夹中删除资产时,应用程序将生成
但是在运行发行版APK时,一些图像根本没有出现,而另一些图像则出现了。此外,相同的图像在某些地方出现,而在其他地方却没有出现。从JS服务器运行调试应用程序时,这些问题都不会发生。这个问题在iOS中不会发生
如何解决此问题?根据RN 0.57更改日志: Android工具已经更新,以匹配更新的配置 需求(SDK 27、gradle 4.4和支持库27);建筑 由于gradle脚本的原因,Android插件3.2无法运行,所以 现在请继续使用Android Studio 3.1 1) 尝试根据RN更改日志设置这些
com.android.tools.build:gradle:3.1.4
应该可以工作
2) 尝试删除android构建文件夹,只运行/gradlew assembleerelease
,而不进行任何绑定
我也在使用RN 0.57,生成apk而不捆绑对我来说是可行的
如果您仍然存在问题,并且希望使用捆绑,请尝试检查:
这些答案应该可以解决这个问题:
有关0.57 android更新的更多信息,请点击此处:
您可以添加您正在使用的文件夹结构吗?您是否尝试删除“两个生成”文件夹并检查重复的命名图像?我尝试了此方法,但无效。我已经添加了我的项目结构。还要将你的package.json依赖项添加到你的问题中,至少RN版本和babel Stuff添加了package.json