안드로이드 개발

AssertionError 해결 방법

피커 2023. 5. 6. 22:56
728x90
반응형

안드로이드 개발하면서 자주 발생하는 에러가 AssertionError 이다.

실제로는 여러가지 AssertionError이 존재해서 디버깅이 쉽지가 않다.

몇가지 시도해볼 솔루션이 있는데 가장 많이 발생하고 해결되는 순서대로 적었습니다.

 

1. 비정상 캐시가 남아있는 경우

-. 해결방법은 안드로이드 스튜디오에서 cache 삭제하는 방법입니다.

File > Invalidate Caches/Restart and select Invalidate and Restart

 

2. 안드로이드 스튜디오를 최신으로 업데이트

-. 아래 메뉴를 통해 최신으로 업데이트하며, gradle 업데이트 합니다.

 

3. 메모리 사용량을 늘려봅니다.

 

*. AssertError 백서 원문

 

Thrown to indicate that an assertion has failed.
The seven one-argument public constructors provided by this class ensure that the assertion error returned by the invocation:
 
new AssertionError(expression)
has as its detail message the string conversion of expression (as defined in section {@jls 5.1.11} of The Java Language Specification), regardless of the type of expression.

Summary

Public constructors
AssertionError()Constructs an AssertionError with no detail message.
AssertionError(Object detailMessage)Constructs an AssertionError with its detail message derived from the specified object, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
AssertionError(boolean detailMessage)Constructs an AssertionError with its detail message derived from the specified boolean, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
AssertionError(char detailMessage)Constructs an AssertionError with its detail message derived from the specified char, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
AssertionError(int detailMessage)Constructs an AssertionError with its detail message derived from the specified int, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
AssertionError(long detailMessage)Constructs an AssertionError with its detail message derived from the specified long, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
AssertionError(float detailMessage)Constructs an AssertionError with its detail message derived from the specified float, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
AssertionError(double detailMessage)Constructs an AssertionError with its detail message derived from the specified double, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
AssertionError(String message, Throwable cause)Constructs a new AssertionError with the specified detail message and cause.
Inherited methods
From class java.lang.Throwable
From class java.lang.Object

Public constructors

AssertionError

Added in API level 1
 
public AssertionError ()
Constructs an AssertionError with no detail message.

AssertionError

Added in API level 1
 
public AssertionError (Object detailMessage)
Constructs an AssertionError with its detail message derived from the specified object, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
If the specified object is an instance of Throwable, it becomes the cause of the newly constructed assertion error.
Parameters
detailMessage Object: value to be used in constructing detail message

AssertionError

Added in API level 1
 
public AssertionError (boolean detailMessage)
Constructs an AssertionError with its detail message derived from the specified boolean, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
Parameters
detailMessage boolean: value to be used in constructing detail message

AssertionError

Added in API level 1
 
public AssertionError (char detailMessage)
Constructs an AssertionError with its detail message derived from the specified char, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
Parameters
detailMessage char: value to be used in constructing detail message

AssertionError

Added in API level 1
 
public AssertionError (int detailMessage)
Constructs an AssertionError with its detail message derived from the specified int, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
Parameters
detailMessage int: value to be used in constructing detail message

AssertionError

Added in API level 1
 
public AssertionError (long detailMessage)
Constructs an AssertionError with its detail message derived from the specified long, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
Parameters
detailMessage long: value to be used in constructing detail message

AssertionError

Added in API level 1
 
public AssertionError (float detailMessage)
Constructs an AssertionError with its detail message derived from the specified float, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
Parameters
detailMessage float: value to be used in constructing detail message

AssertionError

Added in API level 1
 
public AssertionError (double detailMessage)
Constructs an AssertionError with its detail message derived from the specified double, which is converted to a string as defined in section {@jls 5.1.11} of The Java Language Specification.
Parameters
detailMessage double: value to be used in constructing detail message

AssertionError

Added in API level 19
 
public AssertionError (String message, Throwable cause)
Constructs a new AssertionError with the specified detail message and cause.
Note that the detail message associated with cause is not automatically incorporated in this error's detail message.
Parameters
message String: the detail message, may be null
cause Throwable: the cause, may be null
반응형