728x90
오늘의 주제는 Android에서는 API Key처럼 외부에 유출이 되면 안 되는 정보를 어떻게 관리해야 되는지 그 방법에 대해서 알려드리고자 합니다.
방법은 간단합니다. 제목에서처럼 프로젝트 root아래의 local.properties 파일을 활용하면 됩니다.
local.properties에 사용하고 싶은 API_KEY의 key값과 value를 정의해줍니다.
buildConfigField "String", "TEST", properties['TEST']
buildConfigField 타입, 사용할 변수명, local.properties에 정의된 key
다음으로는 build.gradle(:app)에 defaultConfig라는 영역에 Field 설정을 추가해주시면 됩니다.
원래는 이 다음에 Sync now를 눌러주시면 아래 사진처럼 BuildConfig.java 파일에 우리가 추가한 변수가 매핑이 되어야 합니다.
그래야 나중에 소스 코드 상에서 이런 식으로 BuildConfig에 있는 특정 필드를 호출해서 사용할 수 있습니다.
val test = BuildConfig.TEST
그러나 저는 아무리 여러 번 Sync 해주어도 적용이 안되더라구요??
이게 무슨 SDK 버전에 따라서 안될 수 있나.. 엄청 찾아봤었습니다.
의외로 되게 간단히 해결을 할 수 있었습니다.
Build > Rebuild Project 를 진행했더니 그제야 BuildConfig.java에 새로운 properties가 적용이 되더라구요.
알고 나면 별거 아닌 방식으로 해결했지만, 2일이라는 시간을 허비했기에
이 포스팅을 보시는 분들께서는 시간 단축을 하셨으면 하는 마음에 작성했습니다.
728x90
'TechTalk' 카테고리의 다른 글
Javascript vs Typescript (0) | 2023.01.16 |
---|---|
direnv 윈도우10에서 사용하기 (0) | 2022.12.25 |
키움증권 영웅문4에서는 조건식 정보를 어떻게 관리할까? (0) | 2022.03.19 |
[Database] 데이터베이스 인덱스(Index)란? (0) | 2021.06.10 |
웹 메일도 SMTP/POP를 쓸까? (0) | 2021.06.01 |