반응형

2023/05 29

java.lang.ClassCastException 해결 법

안드로이드 개발중에 java.lang.ClassCastException 라는 에러를 만난다면 아래처럼 간단히 해결해보세요. 1. 에러 코드 (오류) -. 아래코드는 해당 익셉션이 발생하는 코드입니다. plusNumber 함수안에서 Object를 이용해서 Integer변수 타입을 선언하였습니다. 이후 출력할때 String 타입으로 캐스팅을 하게됩니다. 이때 에러가 발생합니다. 2. 에러 로그 -. 아래처럼 java.lang.ClassCastException 이 발생하는것을 확인 가능합니다. 3. 해결 방법 -. 아래 파란색으로 마킹된 부분처럼 선언한 변수의 타입인 integer에 맞게 출력하면 해결이 됩니다. 아주 간단한 에러이지만, 실제 코딩중에는 자주 발생하는 에러입니다. *. 에러 로그 원문 FATA..

java.lang.IllegalThreadStateException 해결 법

안드로이드 개발시 java.lang.IllegalThreadStateException 라는 에러를 마주치고는 한다. thread 를 여러번 호출할때 주로 발생하게 되는데 아래 예제 코드를 참고하면 됩니다. 해결방법은 쉽지만 어려운 케이스도 존재합니다. 여러분의 에러가 쉬운 케이스이길 바래봅니다. 1. 오류 코드 (에러) -. 아래 코드를 보면 onCreate에서 thread 를 만들고, start 함수를 이용해 2번 호출하고 있습니다. 이렇게 2번 연달아 thread를 호출하게되면 에러가 발생하게 됩니다. 2. 오류 로그 -. 아래처럼 java.lang.IllegalThreadStateException 익셉션을 안드로이드 스튜디오에서 출력하게 됩니다. 3. 해결 방법 -. 해결법은 아주 심플하게 한번만 ..

java.lang.UnsupportedOperationException 해결 법

개발중에 java.lang.UnsupportedOperationException라는 에러를 보게 된다면 아래처럼 해결해보세요. 1. 오류 코드 (문제 코드) -. 아래 코드를 보면 plusNumber함수에서 배열을 추가하고 있습니다. 2. 오류 로그 -. 실제 실행하고 나면 아래와 같이 에러를 표출하게 됩니다. 3. 해결 방법 아래처럼 코드를 수정하게 되면 문제를 깨끗이 해결됩니다. 파란색 바탕색으로 작성된 코드를 주목해주세요. 4. 해결후 logcat 내용 *. 에러 원문 FATAL EXCEPTION: main Process: com.picker.javaexception, PID: 21186 java.lang.RuntimeException: Unable to start activity Component..

java.lang.SecurityException: Permission Denial: starting Intent 해결

안드로이드 개발하다보면 마주치는 에러 exception입니다. 1. 예제 코드 (오류 포함) androidManifest.xml 2. 해결 방법 -. 해결 방법은 아주 간단합니다. androidmanifest.xml에서 아래와 같이 exported를 추가해주면 됩니다. 파란색 배경 글씨로 쓴 부분을 주목해주세요. *. 아래는 해당 익셉션의 원문입니다. 참고하세요. Thrown by the security manager to indicate a security violation. See also: SecurityManager Summary Public constructors SecurityException Added in API level 1 Constructs a SecurityException with..

StringIndexOutOfBoundsException 해결 방법

안드로이드 앱 개발중에 StringIndexOutOfBoundsException 에러를 발견하게 되는경우가 있습니다. 해당에러는 아주 단순한 에러라서 바로 해결이 가능합니다. 아래 에러 원인 및 해결 방법을 참고하세요. 1. 예제 코드 (오류 코드) -. 아래 예제 코드에서 파란색 마킹된 부분이 에러의 원인입니다. 기존 munja String은 3글자이지만, substring으로 4글자를 가져오려고 합니다. 당연히 에러가 발생하게 됩니다. 2. 에러 로그 3. 해결 방법 -. 아주 간단히 substring을 할때 문자열 길이 값인 3까지만 하면 해결됩니다. 아래 파란색 마킹된 부분을 참고하세요. *. 에러 로그 원문 FATAL EXCEPTION: main Process: com.picker.javaexc..

NumberFormatException 해결 방법

안드로이드 자바 개발을 하다보면 NumberFormatException 을 마주치는 경우가 흔하다. 이는 변수의 타입을 잘못 캐스팅할때 주로 발생하게된다. 1. 예제 (오류 코드) 아래의 오류 코드를 보면 munja라는 문자열 변수를 int 값으로 변경하기 위해 캐스팅을 시도했다. "123"과 같은 숫자형은 int 로 캐스팅이 가능하지만, 알파벳과 같은 문자열은 불가능하다. 이때 발생하는것이 NumberFormatException 이다. 2. 문제 로그 3. 해결 방법 아래처럼 타입에 맞게 숫자형으로 문자열이 입력되면 해결이 됩니다. *. 문제로그 원문 E FATAL EXCEPTION: main Process: com.picker.javaexception, PID: 19061 java.lang.Runti..

NoSuchMethodException 해결법

안드로이드 앱 개발을 하다보면 NoSuchMethodException 이라는 에러를 마주치고는 한다. 해당 에러는 관련 함수 (method)를 못찾는 경우이며, 여러 케이스가 존재한다. 이에대한 해결책은 아래와 같다. 1. 실제로 함수가 없는 경우 이 경우는 아주 쉽고 단순하여 plusNumber라는 함수를 추가로 지정해주면 바로 해결이 된다. 2. 메소드 호출시 이름 오류 아래에서는 plus 이후 n을 대문자로 작성해야하는데 소문자로 작성한 경우입니다. 3. 라이브러리의 api를 못찾는 경우 여기서부터는 난이도가 올라가게된다. 단순하게 찾을 수 없는 경우가 있으며, API의 백서(white paper)가 없으면 바로 찾기가 어려운 경우도 있다. 이럴때는 해당 라이브러리를 직접 열어보거나 참조가 잘되어있..

java.lang.ArrayStoreException 간단 해결 방법

안드로이드 개발을 하다보면 java.lang.ArrayStoreException 익셉션을 마주치는 경우가 있다. 이때 아주 간단히 해결 하는 방법을 공유합니다. 1. 문제점 발생 1-1. 예제 코드 (문제 발생) 1-2. 실행시 문제 로그 2. 해결 방법 2-1. 변수 형식에 맞게 integer로 모두 통일 시킨다. 2-2. exception 추가 해서 해결 *. 관련 코드는 아래와 같습니다. 복붙할때 쓰세요. package com.picker.javaexception; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; public class MainActivity extend..

[해결완료] java.lang.ArrayIndexOutOfBoundsException

안드로이드 앱을 개발하다보면 배열을 사용하면서 에러 (exception)이 발생하곤 합니다. 이때 간단히 에러처리하는 방법 공유합니다. 아래처럼 배열 코드를 작성했을때 실행하면 에러가 발생합니다. 실제 실행하고 나면 아래처럼 array index 에러가 발생합니다. 에러가 발생하는 사유는 실제 fruit 배열에 넣은 아이템은 4개인데, while (i < 5) 코드에서 (0,1,2,3,4) 이렇게 5개를 사용하기 때문입니다. 해결 방법1 while (i < 5) 를 while (i < 4) 로 변경합니다. 해결 방법2 이번 예제와 다르게 array값이 몇개 들어올지 모르는 경우이고, 앱이 멈추는 현상만 없으면 문제 없는 경우에는 아래처럼 exception 코드를 추가하면 간단히 해결이 됩니다. 아래는 실..

반응형