Почему мои родные модули не найдены на производстве двигателя JS?Android

Форум для тех, кто программирует под Android
Anonymous
Почему мои родные модули не найдены на производстве двигателя JS?

Сообщение Anonymous »

Я разрабатываю свои первые нативные модули для iOS и Android. На iOS у меня нет проблем. На Android сборка разработки работает нормально. Однако, когда я подчиняюсь для производственной сборки, приложение сбивается. Я думаю, что это связано с этой ошибкой в ​​ADB logCat :

Код: Выделить всё

2024-12-08 20:49:20.531 29294-29339 ReactNativeJS           com.identafly.preview                E  Error: Cannot find native module 'BoundingBox', js engine: hermes
2024-12-08 20:49:20.537 29294-29340 AndroidRuntime          com.identafly.preview                E  FATAL EXCEPTION: mqt_native_modules
Process: com.identafly.preview, PID: 29294
com.facebook.react.common.JavascriptException: Error: Cannot find native module 'BoundingBox', js engine: hermes, stack:
requireNativeModule@1:688911
Что может отличаться между Dev & Production Wachles, так как он импортирует мой Android Содержание:
// expo-module.config.json
{
"platforms": ["ios", "tvos", "android", "web"],
"ios": {
"modules": ["BoundingBoxModule"]
},
"android": {
"modules": ["expo.modules.boundingbox.BoundingBoxModule"]
}
}
< /code>
, который ссылается на мой слой модуля JS: < /p>
// modules/bounding-box/index.ts
import { type BoundingBoxProps } from './src/BoundingBox.types';
// Import the native module. On web, it will be resolved to BoundingBox.web.ts
// and on native platforms to BoundingBox.ts
import BoundingBoxModule from './src/BoundingBoxModule';

const drawBoundingBox = (props?: BoundingBoxProps) => {
if (
BoundingBoxModule &&
typeof BoundingBoxModule.drawBoundingBox === 'function'
) {
BoundingBoxModule.drawBoundingBox(props?.boundingBox, props?.color);
} else {
console.error('drawBoundingBox method not found');
}
};

export { BoundingBoxProps, drawBoundingBox };
< /code>
и нативные потребности: < /p>
// modules/bounding-box/src/BoundingBoxModule.ts
import { requireNativeModule } from 'expo-modules-core';

// It loads the native module object from the JSI or falls back to
// the bridge module (from NativeModulesProxy) if the remote debugger is on.
export default requireNativeModule('BoundingBox');
< /code>
Есть ли что -то другое между пакетами Dev & Prod JS? Что -то еще?


Подробнее здесь: https://stackoverflow.com/questions/792 ... tion-build

Вернуться в «Android»