[5] 그 외 npm run android build 에러

Simune·2024년 1월 21일
0

React Native Errors

목록 보기
5/9

1. onCreate(Bundle savedInstanceState) 에러

error: method onCreate(Bundle) is already defined in class MainActivity
protected void onCreate(Bundle savedInstanceState) {
^

해결 방법

기존 두개의 onCreate를 하나로 병합하고, super.onCreate()에 savedInstanceState 추가.

// 이전 코드
@Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate();
  }

// 새로운 코드
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    // ...
}

2. RNNaverLoginModule.initialize 에러

error: non-static method initialize() cannot be referenced from a static context
RNNaverLoginModule.initialize();
^

나의 수정 연대기

  1. RNNaverLoginModule.initialize(this);
  2. RNNaverLoginModule.initialize();
  3. RNNaverLoginModule rnNaverLoginModule = new RNNaverLoginModule();
    rnNaverLoginModule.initialize();
  4. 해결 방법
public class MainActivity extends ReactActivity {
    // ...

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

+       ReactApplicationContext reactContext = new ReactApplicationContext(this);
+       RNNaverLoginModule rnNaverLoginModule = new RNNaverLoginModule(reactContext);
+       rnNaverLoginModule.initialize();

        // ...
    }

3. new Intent(this, MainActivity.class) 에러

error: cannot find symbol
Intent intent = new Intent(this, com.프로젝트 이름.MainActivity.class);
^

해결방법

// 이전 코드
Intent intent = new Intent(this, MainActivity.class);

// 새로운 코드 (예: 패키지 경로를 확인하고 수정하세요)
Intent intent = new Intent(this, com.프로젝트 이름.MainActivity.class);

4. android:exported 에러

Apps targeting Android 12 and higher are required to specify an explicit value for android:exported when the corresponding component has an intent filter defined. See https://developer.android.com/guide/topics/manifest/activity-element#exported for details.

android/app/src/debugandroid/app/src/mainactivityandroid:exported = true 추가하면 해결 끝!

profile
👩🏻‍💻🌱

0개의 댓글