ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Android] Android Studio, 여러 PC에서 같은 keystore 사용하기
    개발자/Android 2016.09.06 13:17

    이클립스에서는 custom debug keystore 를 사용해서 한개의 프로젝트를 여러 PC에서 같은 컴파일을 할 수 있게 했는데

    Android Studio에서는 해당기능이 안보이는것 같아 사용하지 않고 있다가 이제서야 방법을 찾게 되어 블로그에 올릴 수 있게 되었다.


    - Eclipse 에서 Custom debug keystore 지정화면 -

    (참고 URL : http://stackoverflow.com/questions/17189076/what-is-the-equivalent-of-eclipse-custom-debug-keystore-in-android-studio)


    Android Studio 에서는 gradle을 통해 빌드를 하기 때문에 gradle에 설정을 해야한다.


    제가 알고 있는 방법은 2가지입니다.


    (1) Project Structure 옵션을 통해 등록하기


    1. File 메뉴 클릭 후 -> Project Structure 클릭 (Ctrl + Alt + Shift + S 혹은 아래 버튼 클릭해도 됨)



    2. Modules 부분의 app 클릭, 우측의 Signing Tab 클릭



    3. 아래와 같이 입력, 보통 debug key store 파일은

    윈도우 : c:\User\사용자이름\.android\debug.keystore 이다.

    리눅스 : /home/username/.android/debug.keystore

    MAC : /Users/username/.android/debug.keystore



    4. OK 버튼을 클릭하고 나면 build.gradle (app 폴더) 파일에 아래와 같이 생성된다.


    signingConfigs {
    debug {
    keyAlias 'androiddebugkey'
    keyPassword 'android'
    storeFile file('C:/Users/Donghyun Kim/.android/debug.keystore')
    storePassword 'android'
    }
    }


    여기에서 buildTypes 부분에 아래와 같이 추가한다.

    debug {
    signingConfig signingConfigs.debug
    }


    (2) gradle.properties 파일에 경로를 따로 빼놓기


    (1) 방법의 4,5 번을 진행 후 signingConfigs에 들어가는 값을 gradle.properties로 뺀다. (서명키 보안 강화하기 방법이다)

    gradle.properties 파일은 프로젝트를 생성할때 기본으로 생성되며, 만약에 생성이 안되어있으면 프로젝트 폴더내에 생성하면 된다.


    properties 파일내에 keystore 파일에 대한 정보를 기입한다.

    (debug_keystore 는 제가 따로 사용하기 위해 네이밍한것이기 때문에 변경가능합니다)


    debug_keystore=경로
    debug_keystore_pass=android
    debug_key_alias=androiddebugkey
    debug_key_pass=android


    (2) signingConfigs 파일에 아래와 같이 기입한다.


    signingConfigs {
    def Properties props = new Properties()
    def propFile = new File('gradle.properties')
    if(propFile.canRead())
    props.load(new FileInputStream(propFile))
    debug {
    storeFile file(props['debug_keystore'])
    storePassword props['debug_keystore_pass']
    keyAlias props['debug_key_alias']
    keyPassword props['debug_key_pass']
    }
    }


    댓글 0

Designed by Tistory.