안드로이드에서 Gradle써서 signed apk파일을 릴리즈하고싶은데 어떻게하나요?

조회수 2393회

안드로이드 gradle 빌드에서 signed apk파일을 만들고 싶은데 밑의 코드가 맞는지 잘 모르겠어요.. gradle build에서 제가 뭘 빼먹었나요?

android {
    ...
    signingConfigs {
          release {
              storeFile file("release.keystore")
              storePassword "******"
              keyAlias "******"
              keyPassword "******"
         }
     }
}

gradle 빌드는 제대로 되는데요. build/apk폴더를 보면 다 ...-release-unsigned.apk...-debug-unaligned.apk 같은것 밖에 없는데.. signed apk를 만들고 싶은데 어떻게하죠?

1 답변

  • 좋아요

    0

    싫어요
    채택 취소하기

    Gradle 스크립트에서는 밑의 코드처럼 System.console().readLine메소드를 써서 유저 인풋을 받을수도 있습니다.

    소스코드

    ...
    signingConfigs {
        release {
            storeFile file(System.console().readLine("\n\$ Enter keystore path: "))
            storePassword new String(System.console().readPassword("\n\$ Enter keystore password: "))
            keyAlias System.console().readLine("\n\$ Enter key alias: ")
            keyPassword new String(System.console().readPassword("\n\$ Enter key password: "))
        }
    }
    

    각 매개변수를 입력하라고 표시됩니다. 근데 이런 상황에서는 이런 매개변수들을 환경변수로 설정해주는게 더 좋습니다. Gradle을 쓰면 환경변수에 System.getenv("<변수명>")으로 접근가능합니다.

    소스코드

    ... 
    signingConfigs {
        release {
            storeFile file(System.getenv("KEYSTORE"))
            storePassword System.getenv("KEYSTORE_PASSWORD")
            keyAlias System.getenv("KEY_ALIAS")
            keyPassword System.getenv("KEY_PASSWORD")
        }
    }
    

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)