Столкнулся с проблемой, в режиме разработки все отлично работает, видимо потому что весь процесс запускается с корня директории.
Но когда создаю .apk
cd android
./gradlew assembleRelease
После установки теряется вся статика, картинки которые находятся в images
По структуре проекта
android
src
images
logotypes
flags
Решил попробовать изменить ситуацию с помощью babel-plugin-module-resolver
В файле babel.config.js
module.exports = {
presets: ['module:metro-react-native-babel-preset'],
plugins: [
[
"module-resolver",
{
"alias": [
{ "images": "./src/images" },
{ "flags": "./src/images/flags" },
{ "logotypes": "./src/images/logotypes" }
],
"extensions": [".png"]
}
],
['@babel/plugin-transform-flow-strip-types', { allowDeclareFields: true }],
["module:react-native-dotenv", {
"envName": "APP_ENV",
"moduleName": "@env",
"path": ".env",
"safe": false,
"allowUndefined": true,
"verbose": false
}],
[
"transform-inline-environment-variables",
{
"include": [
"NODE_ENV"
]
}
],
['react-native-reanimated/plugin']
]
};
В файле tsconfig.json
{
"extends": "@tsconfig/react-native/tsconfig.json",
"compilerOptions": {
"baseUrl": "./src",
"paths": {
"images": ["./src/images"],
"flags": ["./src/images/flags"],
"logotypes": ["./src/images/logotypes"]
}
},
"exclude": [
"babel.config.js"
]
}
В компоненте импортирую так
import Logo from "logotypes/xxxhdpi.png"
В режиме разработке все в порядке, после компиляции релиза .png не отображаются, видимо из за неправильного пути, хотя почему то сам компилятор молчит. Что не так делаю?