해결된 질문
작성
·
267
1
npx react-native run-android
를 진행할 떄, Android APK를 빌드하면서 react-native-reanimated
의 DevMenuUtils
클래스에서 문제가 발생하는것 같아요.
해당 Java파일에서 호출하는 패키지의 문제로 보입니당.
package.json은 아래와 같이 설정되어 있습니다.
"dependencies": {
"@react-native-masked-view/masked-view": "^0.3.1",
"@react-navigation/drawer": "^6.6.15",
"@react-navigation/native": "^6.1.17",
"@react-navigation/stack": "^6.3.29",
"react": "18.2.0",
"react-native": "0.72.6",
"react-native-gesture-handler": "^2.17.1",
"react-native-reanimated": "^3.12.1",
"react-native-safe-area-context": "^4.10.7",
"react-native-screens": "^3.32.0"
},
node_module의 패키지를 직접 수정하는 방법이라 좋은것은 아닌 걸로 보이나, 실행해보는게 더 중요한것 같아서용~
원본DevMenuUtils Class
package com.swmansion.reanimated;
public class DevMenuUtils {
private void addDevMenuOption(ReactApplicationContext context, DevOptionHandler handler) {
// In Expo, `ApplicationContext` is not an instance of `ReactApplication`
if (context.getApplicationContext() instanceof ReactApplication) {
final DevSupportManager devSupportManager =
((ReactApplication) context.getApplicationContext())
.getReactNativeHost()
.getReactInstanceManager()
.getDevSupportManager();
devSupportManager.addCustomDevOption(
"Toggle slow animations (Reanimated)", handler);
}
}
}
변경한 DevMenuUtils Class
package com.swmansion.reanimated;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.ReactApplication;
import com.facebook.react.devsupport.interfaces.DevOptionHandler;
import com.facebook.react.devsupport.interfaces.DevSupportManager;
public class DevMenuUtils {
public static void addDevMenuOption(ReactApplicationContext context, DevOptionHandler handler) {
// In Expo, `ApplicationContext` is not an instance of `ReactApplication`
if (context.getApplicationContext() instanceof ReactApplication) {
final DevSupportManager devSupportManager =
((ReactApplication) context.getApplicationContext())
.getReactNativeHost()
.getReactInstanceManager()
.getDevSupportManager();
devSupportManager.addCustomDevOption(
"Toggle slow animations (Reanimated)", handler);
}
}
}
참고한 이슈 : https://github.com/software-mansion/react-native-reanimated/issues/6076
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
제공해주신 정보에는 맞지 않는 내용이지만, Android 빌드 실패 및 react-native-reanimated
관련 문제 해결을 위해서는 패키지 버전 호환성을 확인하고, 필요에 따라서 지정된 GitHub 이슈 페이지나 공식 문서를 참고하는 것이 좋습니다. 문제가 발생한 DevMenuUtils
클래스의 수정은 임시적인 해결책일 수 있으나, 이 방법이 최선의 해결책은 아닐 수 있습니다. 가능한 공식 문서와 커뮤니티를 통해 호환성 문제나 알려진 버그에 대한 해결 방법을 찾으시기 바랍니다. 또한 react-native-reanimated
와 같은 주요 라이브러리의 업데이트 내역을 주기적으로 확인하여 안정적인 버전을 사용하는 것이 중요합니다.