The Android Developer Challenge is back! Submit your idea before December 2.

manifest에 빌드 변수 삽입

build.gradle 파일에 정의된 AndroidManifest.xml 파일에 변수를 삽입하려면 manifestPlaceholders 속성을 사용합니다. 이 속성은 아래와 같이 키-값 쌍의 맵을 사용합니다.

android {
        defaultConfig {
            manifestPlaceholders = [hostName:"www.example.com"]
        }
        ...
    }
    

그런 다음 자리표시자 중 하나를 아래와 같이 속성값으로 manifest 파일에 삽입할 수 있습니다.

<intent-filter ... >
        <data android:scheme="http" android:host="${hostName}" ... />
        ...
    </intent-filter>
    

기본적으로 빌드 도구는 ${applicationId} 자리표시자에 앱의 애플리케이션 ID도 제공합니다. 이 값은 항상 현재 빌드의 최종 애플리케이션 ID와 일치하며(빌드 변형에 따른 변경사항 포함) 빌드 변형 사이에서도 인텐트 작업과 같이 식별자에 고유한 네임스페이스를 사용하려고 할 때 유용합니다.

예를 들어 build.gradle 파일이 다음과 같은 경우

android {
        defaultConfig {
            applicationId "com.example.myapp"
        }
        productFlavors {
            free {
                applicationIdSuffix ".free"
            }
            pro {
                applicationIdSuffix ".pro"
            }
        }
    }
    

manifest 파일에 애플리케이션 ID를 다음과 같이 삽입할 수 있습니다.

<intent-filter ... >
        <action android:name="${applicationId}.TRANSMOGRIFY" />
        ...
    </intent-filter>
    

'free' 제품 버전을 빌드하는 경우 manifest는 다음과 같습니다.

<intent-filter ... >
       <action android:name="com.example.myapp.free.TRANSMOGRIFY" />
        ...
    </intent-filter>
    

자세한 정보는 애플리케이션 ID 설정을 참조하세요.