안드로이드 product flavor 별로 signing 적용하기


http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Signing-Configurations

에 설명이 잘 나와있기는 하지만 buildTypes 를 여러 가지로 쓸 경우에 대해 나와있고, productFlavor 에 대해서는 언급하고 있지 않다.

당연히 productFlavor 에도 적용하면 되겠지 하고 설정을 했는데..

android {
    signingConfigs {
        A {
            storeFile file(...)
            storePassword ...
            keyAlias ...
            keyPassword ...
        }

        B {
            storeFile file(...)
            storePassword ...
            keyAlias ...
            keyPassword ...
        }
    }

    productFlavors {
        main {}
        A {
            signingConfig signingConfigs.A
        }
        B {
            signingConfig signingConfigs.B
        }
    }
}



근데 실제 돌려보면 제대로 먹지를 않는다. 
돌리기 위해서는 buildTypes 에서 signingConfig 의 초기값을 지정해 줘야 한다. 
android {
    signingConfigs {
        A {
            storeFile file(...)
            storePassword ...
            keyAlias ...
            keyPassword ...
        }

        B {
            storeFile file(...)
            storePassword ...
            keyAlias ...
            keyPassword ...
        }
    }
    
    buildTypes {
        debug {
            signingConfig null
        }
        release {
            signingConfig null
        }
    }

    productFlavors {
        main {}
        A {
            signingConfig signingConfigs.A
        }
        B {
            signingConfig signingConfigs.B
        }
    }
}

이유를 더 파보고 싶었으나 시간 관계상 이정도만 하도록 하겠다.

댓글

이 블로그의 인기 게시물

Confluence 에서 Export PDF 로 내보낼 때 Code Block 에서 한글 깨짐

pandas.read_csv() 에서 왠만하면 컬럼타입을 지정하자

스프링 컨텍스트 설정파일과 URI 경로를 제대로 못찾는 삽질