런타임 지원 SDK 빌드 및 사용

1
Key concepts
2
Set up your development environment
3
Build an RE SDK
4
Consume the RE SDK
5
Testing, and building for distribution

테스트 앱 빌드 및 구성

이 섹션에서는 로컬 테스트를 위해 런타임 지원 SDK를 사용하도록 앱을 설정하고 준비하는 방법을 설명합니다.

앱 준비

먼저 별도의 독립형 프로젝트나 모듈을 만듭니다.

이 시나리오에서 앱은 SDK 코드를 포함하지 않고 Maven 종속 항목으로 선언합니다.

런타임 지원 SDK를 사용하는 앱을 빌드하려면 Android 스튜디오 Ladybug Canary 1 이상과 Android Gradle 플러그인 (AGP) 8.7.0-alpha01 이상이 필요합니다.

  1. 앞서 설명한 것과 동일한 단계에 따라 개발 환경테스트용 기기/에뮬레이터를 설정합니다.
  2. 3단계: SDK 준비 섹션에 설명된 플래그를 사용하여 SDK 런타임을 사용 설정합니다.

    # This enables the Privacy Sandbox for your project on Android Studio.
    android.experimental.privacysandboxsdk.enable=true
    android.experimental.privacysandboxsdk.requireServices=false
    
  3. 프로젝트의 최상위 build.gradle 파일에 개인 정보 보호 샌드박스 Maven URL을 추가합니다.

        allprojects {
            repositories {
                google()
                maven {
                    url "https://maven.privacysandbox.com/v1/repository"
                    }
                }
            }
    
  4. 기존 광고 라이브러리 (런타임 인식 SDK) Maven 타겟에 대한 Maven 종속 항목을 유지합니다.

  5. SDK 라이브러리에 종속 항목이 있는 privacySandbox 블록을 프로젝트 build.gradle에 추가하고 enable을 true로 설정합니다.

    plugins {
        id 'com.android.application'
        id 'org.jetbrains.kotlin.android'
    }
    
    android {
        //...
        privacySandbox {
            enable true
        }
        //...
    }
    
    dependencies {
        // SDK library dependency
        implementation(<maven coordinates to SDK library>)
    }
    
  6. 이제 앱이 API 사용 섹션에 설명된 대로 SDK의 API를 사용할 수 있습니다.

앱 빌드

평소와 같이 Android App Bundle (AAB)로 앱을 빌드할 수 있습니다.

로컬에서 SDK 테스트

테스트 앱을 실행하려면 Android 스튜디오를 사용하여 런타임 지원 SDK와 앱을 테스트 기기나 에뮬레이터에 설치하세요.

  1. 테스트 앱의 Android 스튜디오 프로젝트를 엽니다.
  2. Run > Edit Configurations로 이동합니다. 'Run/Debug' Configuration 창이 표시됩니다. '기본 APK' 또는 '번들에서 생성된 APK'로 배포할 수 있습니다.
  3. Launch Options에서 LaunchSpecated Activity로 설정합니다.
  4. 활동 옆에 있는 점 3개로 된 메뉴를 클릭하고 클라이언트의 기본 활동을 선택합니다.
  5. Apply를 클릭한 후 OK를 클릭합니다.
  6. Run을 클릭하여 테스트 기기에 클라이언트 앱과 SDK를 설치합니다.

배포용 SDK 빌드

앱 스토어에 SDK를 게시하려면 먼저 SDK를 Android SDK 번들 (ASB)로 빌드해야 합니다. ASB는 서명되지 않은 게시 패키지로, Android App Bundle과 동일합니다.

ASB 또는 그 파생 항목인 Android SDK 보관 파일(ASAR)은 앱의 AAB와 함께 Bundletool에 의해 설치 가능한 APK 세트로 변환됩니다. 앱 개발자는 Android 스튜디오 (현재 Canary 버전)에서 BundleTool을 직접 사용하여 모든 APK 변형을 출력할 수 있습니다.

Bundletool은 AAB와 ASB를 가져와 APK 변형 집합을 출력할 수 있습니다.

  1. SDK 런타임과 호환되지 않는 기기 (Android 13 이하)를 위해 SDK 런타임 이전 버전과의 호환 모드에서 실행되도록 빌드된 APK입니다. 이 APK에는 앱과 SDK에 필요한 모든 코드가 포함되어 있습니다.
  2. SDK 런타임 (Android 14 이상)과 호환되는 기기에서 SDK 런타임 모드를 실행하기 위해 빌드된 APK입니다. 이 APK에는 런타임 지원 SDK의 API 스텁과 앱 코드만 포함되어 있습니다.
  3. 런타임 지원 SDK 코드가 포함된 SDK APK로, 이전 단계에 설명된 앱 APK보다 먼저 설치해야 합니다.

ASB는 다음 두 가지 방법으로 빌드할 수 있습니다.

  • Android 스튜디오
    1. 프로젝트를 빌드합니다. Build > Rebuild 프로젝트를 호출하면 됩니다.
    2. ASB 파일은 런타임 지원 ASB 모듈의 build/outputs/asb/single/<your-asb-module-name>.asb에 있습니다.
  • Bundletool 명령줄 - 이 안내를 따르세요.

SDK를 게시하려면 업로드 키로 서명해야 합니다. 이 업로드 키를 사용하여 SDK Console에 업로드할 ASB에 서명합니다. Google은 업로드 인증서를 사용하여 신원을 확인합니다.

다음 단계는 ASB에 서명하기 위해 해야 하는 작업의 개요입니다.

  1. 키 저장소와 업로드 키를 생성합니다. 이는 앱의 키 저장소 및 업로드 키 생성과 동일합니다.
  2. 업로드 키로 ASB에 서명합니다. 이렇게 하려면 새로 만든 키와 키 저장소를 지정하는 signingConfig 블록을 build.gradle 파일에 추가합니다.
android {
  signingConfig {
    storeFile file(path-to-keystore.jks)
    storePassword "keystorePassword"
    keyAlias "UploadKey"
    keyPassword "keyPassword"
  }
}

앱 스토어는 이러한 구성요소를 사용하여 런타임 지원 앱 배포를 지원하는 다양한 전략을 개발할 수 있습니다. SDK 런타임은 런타임 지원 SDK의 지원을 확대하기 위해 앱 스토어와 지속적으로 협력하고 있습니다.

4단계: 런타임 지원 SDK 사용