플랫폼용 Android 스튜디오 출시 노트

Platform용 Android 스튜디오 (ASfP)는 Android 플랫폼 개발을 위한 공식 IDE입니다. 이 페이지에서는 ASfP에서 사용할 수 있는 최신 기능, 플랫폼별 개선사항, 품질 개선사항을 요약합니다.

2026 플랫폼 기능 드롭 (Rabbit | 2026.2 및 Panda 2 | 2025.3.2)

IntelliJ 2026.2 기본 플랫폼을 기반으로 하는 최신 ASfP 출시 버전은 프로젝트 설정 및 시작 안정성, Soong 빌드 통합, AI 에이전트 기능, Cuttlefish 가상 기기 관리, C, C++, Rust, 하이브리드 디버깅, 플랫폼 테스트를 크게 개선합니다.

프로젝트 설정, 템플릿, 동기화 성능

  • 작업공간 모델 프로젝트 아키텍처: 프로젝트 구성이 IntelliJ 작업공간 모델 API로 이전되어 초기 프로젝트 설정이 간소화되고 대규모 AOSP 소스 트리의 IDE 안정성이 개선되었습니다.
  • 프로젝트 모델 스냅샷을 사용한 즉시 시작: ASfP는 이제 시작 시 스냅샷에서 프로젝트 모델을 캐시하고 복원하여 대규모 AOSP 작업공간을 다시 열 때 중복되는 초기 색인 생성 지연을 없앱니다.
  • 공유 가능한 프로젝트 템플릿 (가져오기 및 내보내기):
    • 템플릿에서 가져오기: 템플릿에서 가져오기 를 선택하고 공유 .asfp-project YAML 파일을 가리켜 설정 마법사에서 새 AOSP 프로젝트를 부트스트랩합니다.
    • 템플릿으로 내보내기: .asfp-project 편집기 탭을 마우스 오른쪽 버튼으로 클릭하거나 ASfP > 프로젝트 메뉴에서 템플릿으로 내보내기 를 선택하여 프로젝트 구성을 팀원과 공유합니다.
  • 향상된 설정 마법사 옵션: 프로젝트를 만드는 동안 맞춤 빌드 환경 변수를 구성하고 Soong 부분 컴파일 (SOONG_PARTIAL_COMPILE) 을 직접 사용 설정합니다.
  • 유연한 동기화 모드:
    • 부분 동기화: 전체 저장소 동기화를 실행하지 않고 특정 모듈 또는 디렉터리를 동기화합니다.
    • 빌드 없음 동기화: IDE 프로젝트 구조와 모듈 루트를 Soong 빌드를 트리거하지 않고 빠르게 새로고침합니다.
    • 동기화 및 전체 빌드: 단일 작업으로 결합된 프로젝트 동기화 및 전체 Soong 빌드를 트리거합니다.
  • 최적화된 검색 범위 및 심볼릭 링크 지원: out/ 디렉터리 내부의 콘텐츠와 생성된 gen IML은 파일 및 기호 조회를 빠르고 노이즈 없이 유지하기 위해 프로젝트 검색 범위에서 자동으로 제외됩니다. ASfP는 AOSP 저장소 전반에서 심볼릭 링크된 소스 루트도 지원합니다.

편집기 내 Android.bp 빌드, 배포, 편집기 인텔리전스

  • Android.bp의 빌드, 실행, 디버그 여백 아이콘: 모든 명명된 모듈 Android.bp에는 name: 옆에 빌드 여백 아이콘이 포함되어 있으며 테스트 모듈 (*_test 및 *_test_host)과 android_app 모듈에는 편집기에서 직접 타겟을 실행하거나 디버그하는 실행 여백 아이콘이 포함되어 있습니다.
  • 컨텍스트 배포 및 플래시 실행 구성: 실행 전 Soong 빌드 후크를 사용하여 adb, 맞춤 셸 스크립트, adevice, flashall를 통한 배포를 지원하는 Android.bp 파일의 배포 가능한 타겟에서 Soong 배포 실행 구성을 만들고 실행합니다.
  • 상응하는 Android.bp 파일 열기 및 편집기 인텔리전스: 소스 파일 또는 디렉터리를 마우스 오른쪽 버튼으로 클릭하고 상응하는 Android.bp 파일 열기를 선택하여 모듈 선언으로 이동합니다 (defaults 체인, 글로브, 심볼릭 링크 해결). Android.bp 내에서 Ctrl+클릭 모듈 또는 srcs 참조, 클릭 가능한 N Usages 인레이 힌트 보기, 포인터를 속성 (범위가 지정된 target.*, arch.*, multilib.* 속성 포함) 위로 가져가 인라인 Soong 문서를 확인합니다.
  • 전용 Soong 도구 창: 작업 상태 표시기로 Soong 동기화 및 빌드 진행 상황을 모니터링하고, 빌드 작업을 트리거하고, Soong 도구 창에서 Soong 명령어를 실행합니다.

Cuttlefish 가상 기기 관리 및 멀티스크린 미러링

  • 기기 관리도구의 다중 기기 설정: 로컬 AOSP 체크아웃을 사용하여 기기 관리도구에서 직접 다중 기기 Cuttlefish 가상 기기 설정을 만들고 관리합니다.
  • Cuttlefish 도구 창의 멀티스크린 디스플레이 미러링: 다중 디스플레이 Android Automotive OS (AAOS) 및 소프트웨어 정의 차량 (SDV) 개발을 위해 빌드된 전용 Cuttlefish 도구 창에서 기본 제공 Cuttlefish 멀티스크린 디스플레이 미러링을 사용합니다.

Android 스튜디오의 AI 및 플랫폼 개발용 기본 제공 에이전트

  • Soong 빌드 및 테스트 도구가 포함된 기본 제공 에이전트: Android 스튜디오의 AI 는 플랫폼별 Soong 빌드 및 atest 실행 도구를 기본 제공 에이전트에 통합하여 에이전트가 여러 단계 편집을 계획하고, Soong 타겟을 컴파일하고, 구조화된 결과가 인라인으로 포함된 atest 플랫폼 테스트를 실행할 수 있도록 합니다.
  • 엔터프라이즈 및 BYOM 지원: Android 스튜디오의 AI에 액세스합니다. 기본 제공 Gemini 모델, Gemini Code Assist, Gemini Enterprise 라이선스를 사용하거나 Bring Your Own Model (BYOM)을 사용하여 맞춤 모델 엔드포인트를 연결합니다. 자체 API 키를 사용합니다.

플랫폼 디버깅 (디버그 도구 창의 연결 탭 및 LLDB)

  • 고정된 연결 탭 (실행 > Android 프로세스에 연결):
    • 로드된 공유 라이브러리 (라이브러리), 빌드 ID, 기호: 연결하기 전에 로드된 .so 라이브러리와 8자 ELF 빌드 ID를 검사합니다. ASfP는 각 빌드 ID를 out/target/product/<device>/symbols (symbols/.build-id 색인)와 일치시켜 확인되면 체크표시 아이콘을 표시하고 (확인된 행 위에 포인터를 가져가면 해결된 .debug 경로가 표시됨) 기호가 누락된 경우 경고 아이콘을 표시합니다.
    • Java, C++, Rust 연결: Java 디버거, 네이티브 디버거 또는 둘 다 선택하여 연결된 <process> (<pid>) 및 <process> (<pid>)-jdwp 디버그 탭을 엽니다. C++ 또는 Rust 서비스를 선택하면 Java 디버거 가 숨겨지고 Java 디버깅을 사용할 수 없으며 Java 프로세스가 아닙니다. 가 표시됩니다.
    • 원클릭 루트 기기 및 JDWP 사용 설정: 시스템 프로세스 표시로 필터링하고 루트 기기를 클릭하여 adb root (기기가 루팅됨)를 실행하거나 JDWP 사용 설정을 클릭하여 persist.debug.dalvik.vm.jdwp.enabled=1을 설정하고 userdebug 기기를 재부팅합니다.
  • LLDB 디버거 개선사항, Rust 시각화 도구, ART 신호 통과:
    • 기본 제공 lldb-dap 세션은 조건부 중단점, C++ 및 Rust 예외 중단점, 편집기의 인라인 변수 값, 프레임 삭제, 스마트 단계별 실행, AOSP 사전 빌드의 자동 Rust pretty-printer (String, Vec, HashMap, Option)를 지원합니다.
    • LLDB를 ART 및 JNI 프로세스에 연결하면 가짜 중지 없이 내부 ART SIGSEGV 및 SIGBUS null-check 또는 GC 신호가 자동으로 통과됩니다.
    • rust-analyzer는 prebuilts/rust-toolchain/linux-x86/stable/rust-analyzer에서 자동 감지되며 (prebuilts/rust/linux-x86/stable/rust-analyzer로 대체) 생성된 out/soong/.intermediates 파일의 가짜 'proc-macro' not found 알림이 표시되지 않습니다.

플랫폼 테스트 및 cc_test, rust_test 디버깅

  • android_test cc_test, rust_test 타겟 디버그: Android.bp 또는 테스트 메서드 여백 아이콘에서 디버그 세션을 실행합니다.
    • android_test 모듈은 atest --wait-for-debugger를 사용하여 실행하고 Java 디버거를 연결합니다.
    • cc_test, cc_test_host, rust_test, rust_test_host 모듈은 실행 전 작업인 네이티브 테스트 모듈 빌드 및 atest로 배포 (atest --collect-tests-only --disable-teardown)를 사용하여 기본 제공 LLDB에서 직접 실행됩니다.
  • 듀얼 타겟 host_supported: true 및 머신별 LLDB 템플릿: cc_test 및 rust_test 모듈의 경우 host_supported: true가 있는 Soong 테스트 구성에서 실행 위치: 기기 및 호스트 라디오 버튼이 모두 사용 설정되며 타겟별 독립적인 LLDB 설정 카드, 프로그램 인수, atest 인수, JSON 실행 (DAP 설정)이 있습니다.

IDE 내 업데이트 및 플랫폼 품질

  • 자동 IDE 내 업데이트 알림: ASfP 2026.2.2 Canary 1부터 ASfP는 백그라운드에서 새 출시 버전을 자동으로 확인하고 Android 스튜디오 및 플러그인 업데이트 대화상자를 통해 IDE에서 사용자에게 알리며 최신 .deb 패키지 및 터미널 설치 안내가 포함된 다운로드 버튼을 제공합니다. Help > Check for Updates 를 사용하여 언제든지 업데이트를 확인할 수 있습니다.
  • 영구 -current-linux.deb 채널 링크: 자동화된 스크립트 및 명령줄 설정의 경우 최신 안정화 버전 및 Canary 패키지는 영구 URL https://dl.google.com/android/asfp/asfp-current-linux.deb (안정화 버전) 및 https://dl.google.com/android/asfp/asfp-canary-current-linux.deb (Canary)에서 액세스할 수 있습니다.
  • 디스크 버전 불일치 감지: ASfP는 IDE가 실행되는 동안 디스크의 기본 .deb 설치가 업데이트된 경우 이를 감지하고 깨끗하게 다시 시작하라는 알림을 표시합니다.
  • 기본 AOSP 저작권 및 커밋 검사: 플랫폼 기여에 맞게 조정된 사전 구성된 기본 AOSP 저작권 헤더 프로필 및 커밋 메시지 형식 검사가 포함되어 있습니다.
  • 기본 메모리 할당 증가: 대규모 AOSP 소스 트리를 지원하기 위해 기본 최대 힙 크기가 20GB에서 30GB로 증가했습니다.