본문 바로가기
📱 Android

[Android] @IgnoredOnParcel

by 콩드로이드 2024. 2. 25.

통신을 위해 model을 설계했는데, 클라이언트에서만 사용하는 변수가 필요한 상황입니다

클라이언트에서만 사용될 값을 추가하는데, 만약 이게 서버 통신에서 쓰인다면.. 아찔한 상황입니다 T_T

이럴 경우엔,  IgnoredOnParcel 을 사용합니다 

 


@IgnoredOnParcel

- Parcelize annotation이랑 함께 사용되는데 특정 필드가 Parcelable 구현에서 제외시킵니다 

즉 Parcelable 인터페이스를 구현할 때 고려되지 않으므로, 인텐트에 데이터를 넘기거나 상태를 저장/복원하는 과정에서 이 변수는 무시되고, 클라이언트 상에서만 사용할 수 있습니다 :) 

 

@Parcelize
data class User(
val name: String, 
val age: Int, 
@IgnoredOnParcel val is_selected: Boolean) 
: Parcelable