티스토리 뷰
깃허브에 프로젝트 올릴때.. 서버 url이나 api 키를 숨겨야 되는 경우가 많다
깃허브 프로젝트에 올릴때 레포지토리에 안올라가게 하는법을 적겠다
(근데 앱을 앱스토어에 올린담에 리버싱 엔지니어링 해가지고 코드 뜯어보면 어캄? 이걸모르겠음 제발 아는분 알려주셈)
1. local.properties연다
2. local.properties에 숨길 값 적는다
단!! ""<- 안에 적어야됨 ''<- 이거 안됨 ""<- 이거
//숨길값을 가장 아래에 적는다 반드시 "" 안에 적는다
local_url="http://10.0.2.2:3333"
3. app 레벨 gradle에 아래처럼 코드 추가한다
plugins {
id 'com.android.application'
id 'com.google.gms.google-services'
}
Properties properties=new Properties()//추가
properties.load(project.rootProject.file('local.properties').newDataInputStream())//추가
android {
compileSdk 31
defaultConfig {
applicationId "com.example.rvsm"
minSdk 21
targetSdk 31
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
buildConfigField "String", "LOCAL_URL", properties['local_url']//추가
}
주석으로 추가라고 적어놓은거 추가하면 됨
그러면 위에 싱크 나우 뜸 그거 누르고 빌드를 한번 해야됨
이때!!!!!!!!!!!!!!!!!!!!!!!!!!!! 에러 날수있는데.....
buildConfigField parameter specified as non-null is null에러 발생하면 위 코드에서 5~6라인이 작성되지 않은것이다
Properties properties=new Properties()
properties.load(project.rootProject.file('local.properties').newDataInputStream())
이겅..
암튼간에.. 빌드를 하고나면...
여기 함 들가보셈
추가됐음
4. 쓰면됨
private URI uri= URI.create(BuildConfig.LOCAL_URL);
이런식으로 BuildConfig.이름
일케 쓰면됨~ 쏘이지
근데.. 근...데... 이거 앱스토어에 올릴때도 숨겨짐 ? ㅠㅠ??? ????? 암만찾아도 안나옴
아니 참고한 어떤 블로그에서는 된다는데 무슨 어떤 외국인 유튜브도 봤는데 영어라 잘 못알아듣긴 했는데 안된다는거 같은데? 뭔 서버에서 api키 알아도 못쓰게 막아야된다 머 이런식으로 말하던데 누구말이 맞음? 아 캐열받음
암튼 절케 만들었으면 팀원들한테도 이거 추가했다고 말해주고 해야됨
참고url
-https://devvkkid.tistory.com/201
-https://www.youtube.com/watch?v=-2ckvIzs0nU
'공부 > Android' 카테고리의 다른 글
socket.io 사용할때 뒤로가기 눌렀을때 앱 종료되는 이유? (0) | 2022.11.07 |
---|---|
MPAndroidChart 안드로이드에서 그래프 그리기 (0) | 2022.11.03 |
배경 그라데이션 (0) | 2022.11.02 |
안드로이드에서 socket.io 사용하기(Node.js, http, 멀티코어에서 유의점) (0) | 2022.10.29 |
AWS EC2 서버 DB데이터 php 경유하여 안드로이드로 전송하기 (0) | 2022.09.20 |