티스토리 뷰

깃허브에 프로젝트 올릴때.. 서버 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

 

[안드로이드] local.properties에 API Key값 숨기기

예를 들어보자. Daum 이미지 검색 API를 안드로이드 내부에서 사용한다면... 카카오 개발 계정이 필요할 것이고 앱키를 얻기 위해 애플리케이션을 등록하고 등록된 애플리케이션으로부터 REST API

devvkkid.tistory.com

-https://www.youtube.com/watch?v=-2ckvIzs0nU

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함