각 Android 버전을 출시할 때마다 Android가 더 유용하고 안전하며 나은 성능을 발휘할 수 있도록 새로운 기능은 물론 동작 변경사항을 도입합니다. 대부분의 경우 앱은 처음부터 예상대로 정확하게 작동하지만 어떤 경우에는 개발자가 플랫폼 변경사항에 맞게 앱을 변경해야 할 수도 있습니다.
소스 코드가 AOSP (Android 오픈소스 프로젝트)에 배포되는 즉시 사용자가 새로운 플랫폼을 받을 수 있으므로 사용자의 예상대로 실행되고 새로운 기능과 API를 적절히 활용하여 새로운 플랫폼을 최대한 활용하도록 앱을 준비하는 것이 중요합니다.
이 문서에서는 플랫폼 출시 일정에 잘 맞춰 준비하도록 계획을 수립하는 데 도움을 주고 Android 11에서 사용자의 탁월한 경험을 보장하는 일반적인 개발 및 테스트 단계를 간략하게 보여줍니다.
일반적인 이전에는 동시 실행할 수 있는 다음과 같은 두 단계가 있습니다.
- 앱 호환성 보장(Android 11 최종 출시까지)
- 새로운 플랫폼 기능 및 API 타겟팅 (최종 출시 후 최대한 빨리)
이 페이지에서는 이러한 각 단계의 일반적인 절차를 간략히 설명합니다. 시작할 준비가 되면 Android 11 다운로드를 참고하세요.
Android 11과의 호환성 보장
Android 11에서 기존 앱의 기능을 테스트하여 최신 버전의 Android로 업데이트하는 사용자에게 탁월한 경험을 보장하는 것이 중요합니다. 일부 플랫폼 변경사항은 앱이 동작하는 방식에 영향을 줄 수 있으므로 조기에 철저히 테스트한 다음 필요에 따라 앱을 조정해야 합니다.
일반적으로 앱의 targetSdkVersion
을 변경할 필요 없이 앱을 조정하고 업데이트를 게시할 수 있습니다. 마찬가지로 새 API를 사용하거나 앱의 compileSdkVersion
을 변경할 필요는 없지만 앱이 빌드된 방식과 앱에서 사용하는 플랫폼 기능에 따라 달라질 수 있습니다. 다음 섹션에서는 단계를 간략히 설명합니다.
시작하기 전에 targetSdkVersion
을 변경하지 않는 경우에도 앱에 영향을 줄 수 있는 동작 변경사항을 숙지하시기 바랍니다.
호환성 테스트
대체로 Android 11 호환성 테스트는 앱 출시를 준비할 때 실행하는 테스트의 유형과 비슷합니다. 이 시점에서 핵심 앱 품질 가이드라인과 테스트 권장사항을 검토하는 것이 좋습니다.
Android 11을 실행하는 기기에 현재 게시된 앱을 설치하고 문제를 찾는 모든 흐름과 기능을 살펴봅니다. 테스트에 집중할 수 있도록 앱의 기능에 영향을 미치거나 앱이 비정상 종료될 수 있는 Android 11에서 도입된 동작 변경사항을 검토합니다. 특히 주요 개인정보 보호 변경사항을 검토하고 변경사항을 수용하기 위해 구현하는 모든 수정사항을 테스트해야 합니다.
또한 제한된 비 SDK 인터페이스의 사용을 검토 및 테스트하고 대신 공개 SDK 또는 상응하는 NDK 항목으로 이동해야 합니다. 이러한 액세스를 강조 표시하는 logcat 경고가 있는지 살펴보고 StrictMode 메서드 detectNonSdkApiUsage()
를 사용하여 프로그래매틱 방식으로 포착합니다.
마지막으로 앱에서 라이브러리와 SDK를 완전히 테스트하여 Android 11에서 예상대로 작동하는지 확인하고 개인정보 보호, 성능, UX, 데이터 처리, 권한에 관한 권장사항을 준수해야 합니다. 문제가 발견되면 SDK의 최신 버전으로 업데이트하거나 SDK 개발자에게 연락하여 도움을 받으세요.
테스트를 마치고 모든 업데이트를 완료했으면 즉시 호환 가능한 앱을 게시하는 것이 좋습니다. 이렇게 하면 사용자가 앱을 조기에 테스트할 수 있고 사용자가 Android 11로 업데이트할 때 원활하게 전환할 수 있습니다.
앱의 타겟팅 업데이트 및 새 API로 빌드
앞에서 설명한 대로 호환되는 버전의 앱을 게시하고 나면 다음 단계는 targetSdkVersion
을 업데이트하고 Android 11의 새 API 및 기능을 활용하여 Android 11을 완벽하게 지원하는 것입니다. 준비가 되는 즉시 이 작업을 실행할 수 있습니다. 새 플랫폼을 타겟팅하는 Google Play 요구사항에 유의하세요.
Android 11을 완벽하게 지원하는 작업을 계획하고 있다면 먼저 Android 11을 타겟팅하는 앱에 적용되는 동작 변경사항을 검토하는 것이 좋습니다. 이러한 타겟팅된 동작 변경사항으로 인해 해결해야 할 수 있는 기능 문제가 발생할 수 있습니다. 경우에 따라 상당한 개발이 필요할 수 있으므로 초기에 알아 두는 것이 가장 좋습니다. 영향을 쉽게 평가하려면 호환성 전환을 사용하여 선택한 변경사항을 사용 설정한 상태에서 현재 앱을 테스트해도 됩니다.
다음 단계에서는 Android 11을 완벽하게 지원하는 방법을 설명합니다.
SDK 가져오기, 타겟팅 변경, 새 API로 빌드
전체 Android 11 지원을 시작하려면 먼저 Android 11 SDK 및 기타 필요한 도구를 Android 스튜디오에 다운로드하세요.
다음으로 앱의 targetSdkVersion
과 compileSdkVersion
을 "30"
로 변경하고 앱을 다시 컴파일합니다. 자세한 내용은 설정 가이드를 참고하세요.
Android 11 앱 테스트
앱을 컴파일하고 Android 11을 실행하는 기기에 설치했다면 테스트를 시작하여 앱이 Android 11을 타겟팅할 때 적절하게 작동하는지 확인합니다. 일부 동작 변경사항은 앱이 새 플랫폼을 타겟팅하는 경우에만 적용되므로 시작하기 전에 변경사항을 검토하는 것이 좋습니다.
기본 호환성 테스트와 마찬가지로 문제를 찾는 모든 흐름과 기능을 살펴봅니다. 테스트에서 Android 11을 타겟팅하는 앱의 동작 변경사항에 초점을 둡니다. 특히 개인 정보 보호 변경사항을 검토하고 변경사항을 수용하기 위해 구현하는 모든 수정사항을 테스트해야 합니다. 핵심 앱 품질 가이드라인과 테스트 권장사항에 따라 앱을 확인하는 것도 좋습니다.
적용할 수 있는 제한된 비 SDK 인터페이스의 사용을 검토하고 테스트해야 합니다. 이러한 액세스를 강조 표시하는 logcat 경고가 있는지 살펴보고 StrictMode 메서드 detectNonSdkApiUsage()
를 사용하여 프로그래매틱 방식으로 포착합니다.
마지막으로 앱에서 라이브러리와 SDK를 완전히 테스트하여 Android 11에서 예상대로 작동하는지 확인하고 개인정보 보호, 성능, UX, 데이터 처리, 권한에 관한 권장사항을 준수해야 합니다. 문제가 발견되면 SDK의 최신 버전으로 업데이트하거나 SDK 개발자에게 연락하여 도움을 받으세요.
앱 호환성 전환을 사용하여 테스트
Android 11에서는 개발자를 위한 새로운 기능이 도입되어 앱을 타겟팅된 동작 변경사항으로 더 쉽게 테스트할 수 있습니다. 디버그 가능한 앱의 경우 전환을 통해 다음을 실행할 수 있습니다.
- 앱의 targetSdkVersion을 실제로 변경하지 않고 타겟팅된 변경사항을 테스트합니다. 전환을 사용해 타겟팅된 특정 동작 변경사항을 강제로 사용 설정하여 기존 앱에 미치는 영향을 평가할 수 있습니다.
- 테스트에서 특정 변경사항에만 중점을 둡니다. 타겟팅된 모든 변경사항을 한 번에 처리할 필요 없이 전환을 사용하면 테스트하려는 변경사항을 제외하고 타겟팅된 모든 변경사항을 사용 중지할 수 있습니다.
- adb를 통해 전환을 관리합니다. adb 명령어를 사용하여 자동화된 테스트 환경에서 전환 가능한 변경사항을 사용 설정하거나 사용 중지할 수 있습니다.
- 표준 변경 ID를 사용하여 더 빠르게 디버그합니다. 전환 가능한 각 변경사항에는 로그 출력에서 근본 원인을 빠르게 디버그하는 데 사용할 수 있는 고유 ID와 이름이 있습니다.
앱의 타겟팅 변경을 준비할 때 또는 Android 11 지원을 개발하는 동안 전환이 도움이 될 수 있습니다. 해당 문서에서 자세한 내용을 참고하세요.