해당 글에서 언급하는 프로퍼티는 안드로이드 시스템에서 관리되는android.os.SystemProperties를 의미합니다. (APK 내부에서 관리되는 System.getProperty, System.setProperty 와는 다릅니다.)
안드로이드 시스템에 시스템 속성(System Property)를 추가하거나 API로 구현하는 방법에 대해서는 아래의 안드로이드 문서에 잘 정리되어 있습니다.
다만, 위에 소개된 안드로이드 문서대로 ‘시스템 속성(System Property)’를 추가하기 위해서는 아래와 같은 사항이 동반되어야 합니다.
- 플랫폼 빌드시 같이 빌드되는 시스템 app일 경우 android.os.SystemProperties 사용 가능
- 플랫폼 빌드시 사용되는 key를 가지고 app을 signing 하여 app을 빌드하면 사용가능
만일, R&R에 따라 플랫폼 빌드 업무(패키징)와 app을 개발하는 업무가 분리되는 경우에 app 개발단에서 위와 같이 시스템 속성을 추가하는 것이 어렵습니다.
그런데 reflection을 이용하면 app 단에서도 안드로이드 시스템 프로퍼티를 get/set 할수 있습니다. 아래에 Kotlin 예제 코드를 첨부합니다.