[에러] java.lang.RuntimeException: Unable to instantiate activity ComponentInfo {...}
2021. 8. 18. 14:47
728x90
에러
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo {com.example.tripplanner/com.example.tripplanner.LoginActivity}: java.lang.ClassNotFoundException...
이 에러는 Activity 시작 시 UI 화면을 로드할 수 없는 경우에 발생한다고 한다.
해결책
1. Android Studio 상단의 Build > Clean Project 클릭 후 Rebuild Project 클릭
2. Intent 부분의 문제일 수 있음. AndroidManifest.xml 파일 > 해당 activity 파일 추가하기
나는 LoginActivity가 이미 추가되어 있어서 1번 방법으로 해결되지 않았다.
/* 방법 A,B 중 한 가지 방법으로 추가해보세요. */
// 방법A
<activity
android:name=".LoginActivity"
android:exported="true" />
// 방법B
<activity android:name=".LoginActivity" />
3. Activity class를 public으로 선언 (abstract나 private으로 선언된건 아닌지 확인)
나는 2번 방법으로 해결할 수 있었다. 자세히 들여다보니까 LoginActivity 앞에 abstract 라고 적혀있길래 abstract를 지웠더니 잘 실행되었다.
class LoginActivity : AppCompatActivity() {
...
}
4. build.gradle 파일 > android > defaultConfig > applicationId 확인
"com.example.프로젝트명" 이 제대로 적혀있는지 확인해보기.
5. UI 초기화 문제. onCreate() 안에 setContentView() 이후에 UI 초기화하기.
setContentView() 이전에 초기화하면 에러나는 경우가 있다고 함.
그 외의 방법들은 stackoverflow를 참고하기!
728x90
'Android Studio > Android' 카테고리의 다른 글
[에러] RequestOptions cannot be converted to GlideOptions (0) | 2021.08.25 |
---|---|
[에러] Plugin version (1.5.21) is not the same as library version (1.3.72) (0) | 2021.08.10 |
[에러] This project uses AndroidX dependencies (0) | 2021.08.10 |
[에러] v/fa inactivity disconnecting from the service (1) | 2021.08.06 |
[에러] llegalStateException: Session is not initialized. Call KakaoSDK#init first. (0) | 2021.08.06 |