Android 스튜디오 모듈용 apk를 분리합니다. Android App Bundle로 앱을 게시하는 새로운 방법

소개

프로그래밍 환경의 편안함은 프로그래머가 수행해야 하는 프로그래밍과 관련되지 않은 보조 작업의 수와 개발 환경 자체에 대한 연구 깊이에 따라 크게 달라집니다. 이런 의미에서 이상적인 것은 Windows 용 응용 프로그램의 가장 단순하고 빠른 개발을 위해 날카롭게 된 Delphi 환경입니다 (공정하게 말하면 Android 및 기타 시스템 용 응용 프로그램 개발에서는 모든 것이 여전히 내가 원하는만큼 부드럽지 않습니다).

이런 의미에서 Android 영역에는 충분히 편안한 개발 환경이 없지만 무료 운영 체제 세계의 프로그램은 그래야 합니다. 최근까지 특수 플러그인이 포함된 Eclipse가 중심 개발 도구로 간주되었습니다. 그러나 2013년 여름 Google은 Eclipse의 오랜 경쟁자인 IntelliJ IDEA 시스템을 기반으로 하는 Android Studio라는 새로운 IDE를 공개했습니다. 아직 베타 단계에 진입하지 않은 초기 버전의 시스템에도 불구하고 이미 Eclipse의 편리함을 능가한다고 말해야합니다.

그럼에도 불구하고 프로그래머는 배포할 준비가 된 응용 프로그램의 최종 파일을 생성하는 특이한 단계와 환경 설정의 수많은 미묘한 차이를 모두 탐구해야 합니다. 그리고 이것은 인터페이스가 코드와 제대로 작동하도록 하기 위해 사용해야 하는 특정 클래스를 연구하는 배경에 위배됩니다.

이렇게 긴 소개 후에는 뉘앙스가 있기 때문에 Android Studio가 배포 준비가 된 최종 apk 파일을 생성하는 방법을 알려드리겠습니다. 내 기사가 초보 사용자, 아마도 오늘날 Android 프로그래밍을 위한 최고의 IDE일 수 있기를 바랍니다.

수동 방식

  1. Android Studio의 왼쪽 하단에는 화면 가장자리의 특수 레이블 표시를 제어하는 ​​작은 버튼이 있습니다. 바로 가기는 다양한 보조 창을 엽니다. 또한 마우스 포인터로 이 버튼 위로 마우스를 가져가면 이러한 모든 창 목록이 나타나 필요한 창을 빠르게 열 수 있습니다. Build Variants 창을 열고 Build Variant 필드의 모듈 앞에서 빌드 모드를 디버그에서 릴리스로 전환해 보겠습니다.
  2. 메인 메뉴에서 빌드 → 서명된 APK 생성을 엽니다. 약간의 의역을 하면 다음과 같이 번역할 수 있는 메시지가 있습니다. Gradle 유틸리티로 빌드한 프로젝트의 경우 서명 정보 및 apk 파일 서명 순서를 특수 스크립트로 작성해야 합니다. http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Signing-Configurations 사용자 가이드에 설명된 대로 스크립트를 설정합니다. 그런 다음 "Gradle assembleRelease"를 실행하고 build/apk/ 폴더에 생성된 apk 파일을 가져옵니다.» 이 메시지는 두 번째 방법을 사용하여 apk 파일을 생성할 것을 강력히 권장합니다. 정보를 기록해 두지만 확인을 클릭하여 수동 방법을 계속합니다.
  3. apk 파일에 대한 서명 생성 도우미 창이 열립니다. 우리는 이미 배포된 모든 Android 애플리케이션이 작성자에 의해 디지털 서명되어야 한다는 것을 알고 있습니다. 그렇지 않으면 애플리케이션이 사용자의 장치에 설치되지 않습니다. 생성된 서명은 컴퓨터에 있는 특수 저장 파일에 저장해야 하며, 여기에서 서명을 추출하여 apk 파일에 서명합니다. 동시에 하나의 저장소에 서로 다른 apk 파일에 대한 여러 서명을 저장할 수 있습니다. 또한 동일한 서명을 사용하여 다른 apk 파일에 서명할 수 있습니다. 따라서 리포지토리를 만들려면 새로 만들기... 버튼을 클릭하고 창에 열리는 필드를 입력합니다.
    1. 리포지토리 파일을 배치할 경로
    2. 볼트에 액세스하기 위한 암호 및 확인
    3. 호출할 서명의 이름
    4. 액세스 서명을 위한 암호 및 확인
    5. 서명 유효 기간(기본 25년, 변경하지 않음)
    6. 하나 이상의 인증서 필드. 일반적으로 이름과 성, 도시 및 국가(RU)를 입력합니다.
  4. 확인을 클릭합니다. 창이 닫히고 이전 창의 모든 필드가 입력한 데이터로 자동으로 채워지는 것을 볼 수 있습니다. 매번 암호를 입력할 필요가 없도록 암호 저장 필드에 확인 표시를 하고 확인을 클릭합니다.
  5. 다음 창에서 apk 파일의 경로와 이름을 제어합니다. 기본적으로 모듈 이름과 동일합니다. Run ProGuard 체크박스를 활성화하여 파일을 최적화하고 구성 파일 proguard-android.txt를 proguard-android-optimize.txt로 변경하여 더 엄격한 최적화를 수행할 수도 있습니다(일부 이국적인 스마트폰에서는 어려울 수 있음). 마침을 클릭하고 상태 표시줄을 보면서 기다립니다.
  6. 프로젝트 빌드가 완료되면 결과 apk 파일이 있는 폴더를 열라는 창이 나타납니다. 그것을 열고 우리 파일을 참조하십시오.

ProGuard 실행 상자를 선택했음에도 불구하고 어떤 이유로 작동하지 않으며 apk 파일이 최적화되지 않은 상태로 남아 있다고 즉시 말할 것입니다. 아마도 이들은 이전 버전의 Android Studio( 버전 0.5.4가 있습니다.). 그러나 ProGuard 유틸리티의 스크립트 파일에서 직접 이 확인란을 활성화하면 상황에서 벗어나는 것이 매우 간단합니다. 모듈 내부의 프로젝트 창에서 build.gradle 파일을 찾습니다. 릴리스 생성을 담당하는 android → buildTypes → 릴리스 섹션에서 runProguard 매개변수를 false에서 true로 변경합니다.

스크립트 파일을 편집한 후 프로젝트를 동기화하는 것을 잊지 마십시오. 이렇게 하려면 툴바에서 Sync Project with Gradle Files 버튼(녹색 원에서 아래쪽 화살표) 또는 소스 상단에 팝업되는 노란색 메시지 표시줄의 지금 동기화 링크를 클릭합니다. 동기화 후 지침의 두 번째 단락부터 시작하여 apk 파일을 다시 빌드할 수 있습니다. 이번에만 새 스토리지를 생성하는 대신 이미 생성된 스토리지를 사용합니다. 모든 암호와 설정이 저장되었으므로 팝업 창에서 확인-다음-마침을 클릭하기만 하면 됩니다. 새로 생성된 apk 파일은 지난번보다 약간 작다는 점 참고 부탁드립니다.

자동 방식

자동 방법을 사용하면 응용 프로그램이 실행을 위해 시작될 때마다 암호를 입력하지 않고 apk 파일을 생성할 수 있을 뿐만 아니라 구성 목록에 추가되고 동일한 실행 버튼으로 실행되는 assembleRelease 명령이 있습니다.

자동 모드를 활성화하려면 서명에 대한 정보가 포함된 build.gradle 스크립트 파일에 이미 익숙한 새 섹션을 추가해야 합니다.


signingConfigs( 릴리스( storeFile 파일("C:\\Users\\UserName\\KEYSTORE.jks") storePassword "StoragePassword" keyAlias ​​"SigningName" keyPassword "SigningPassword" ) buildTypes( 릴리스( minifyEnabled truesigningConfigsigningConfigs.release proguardFiles getDefaultProguardFile (" proguard-android.txt"), "proguard-rules.pro" ) ) )

설정 파일 "proguard-android.txt" 대신 훨씬 더 최적화된 설정 파일인 "proguard-android-optimize.txt"를 입력할 수 있습니다. 이렇게 하면 apk 파일의 크기가 더 줄어듭니다.

이 섹션을 설정에 추가하려면 모듈 내에 있는 build.gradle 파일을 열고 buildTypes 섹션을 주석 처리하십시오. 대신 위 섹션을 삽입하십시오. apk 파일을 수동으로 만들 때 기사의 첫 번째 부분에서 만든 키 파일의 경로를 변경하고 올바른 서명 이름과 두 암호를 모두 입력하는 것을 잊지 마십시오.

파일을 변경한 후 도구 모음에서 Sync Project with Gradle Files 버튼(녹색 원에서 아래쪽 화살표) 또는 상단에 팝업되는 노란색 정보 표시줄의 지금 동기화 링크를 클릭하여 변경된 설정을 프로젝트와 동기화합니다. . 그게 다야, 자동 모드가 설정되었습니다!

이제 애플리케이션을 실행하지 않고 apk 파일을 생성할 수 있도록 구성 목록(도구 모음의 콤보 상자)에 apk 파일 생성을 시작하는 별도의 명령을 추가해 보겠습니다. 화면 오른쪽 가장자리에 있는 Gradle 아이콘을 클릭하거나 Android Studio 왼쪽 하단에 있는 버튼의 팝업 목록에서 선택하여 Gradle 작업 창을 엽니다. 모든 작업 섹션에서 모듈에 대한 작업 목록을 확장하고 assembleRelease 작업을 마우스 오른쪽 버튼으로 클릭합니다. 표시되는 컨텍스트 메뉴에서 만들기… 항목을 선택하면 선택한 작업이 구성 목록에 추가됩니다.

이제 실행을 위해 프로그램을 시작하지 않고 릴리스를 생성할 수 있습니다. 구성 목록에서 assembleRelease 명령을 선택하고 실행 버튼을 누르기만 하면 됩니다. apk 파일 자동 생성 결과는 build/apk/ 폴더에 위치하게 됩니다. ModuleName-release-unaligned.apk 및 ModuleName-release.apk의 두 파일이 있습니다. 첫 번째 파일은 반제품입니다. 이미 서명되었지만 아직 정렬되지 않았습니다. 두 번째 파일은 이미 정렬되어 있습니다. 이것은 우리가 이미 이름을 바꾸고 자유롭게 배포할 수 있는 최종 apk 파일입니다.

파일 정렬은 압축되지 않은 모든 데이터가 파일 시작 부분에서 4바이트의 배수인 위치에서 시작하도록 합니다. 이렇게 하면 장치에서 프로그램의 성능이 최적화됩니다. 파일이 정렬되면 Android는 전체 패키지를 메모리에 로드하지 않고 필요에 따라 파일에서 정보를 읽을 수 있습니다. 결과적으로 실행 중인 애플리케이션에서 사용하는 RAM의 양이 줄어듭니다.

모듈은 모듈 수준 빌드 파일 및 Android 매니페스트 파일과 같은 앱의 소스 코드, 리소스 파일 및 앱 수준 설정을 위한 컨테이너를 제공합니다. 각 모듈은 독립적으로 빌드, 테스트 및 디버깅할 수 있습니다.

Android 스튜디오는 모듈을 사용하여 프로젝트에 새 기기를 쉽게 추가할 수 있도록 합니다. Android Studio에서 몇 가지 간단한 단계를 따르면 Wear OS 또는 Android TV와 같은 기기 유형에 특정한 코드를 포함하는 모듈을 만들 수 있습니다. Android Studio는 소스 및 리소스 디렉터리와 같은 모듈 디렉터리를 자동으로 생성하고 기기 유형에 적합한 기본 build.gradle 파일. 또한 Android Studio는 Android TV 모듈용 Leanback 라이브러리 사용과 같은 권장 빌드 구성으로 기기 모듈을 생성합니다.

이 페이지에서는 특정 장치에 대한 새 모듈을 추가하는 방법을 설명합니다.

또한 Android Studio를 사용하면 프로젝트에 라이브러리 또는 Google Cloud 모듈을 쉽게 추가할 수 있습니다. 라이브러리 모듈 생성에 대한 자세한 내용은 라이브러리 모듈 생성을 참조하십시오.

새 모듈 만들기

새 장치에 대한 프로젝트에 새 모듈을 추가하려면 다음을 수행하십시오.

  1. 딸깍 하는 소리 파일 > 새로운 > 새 모듈.
  2. 에서 새 모듈 만들기창이 표시되면 Android Studio는 다음 기기 모듈을 제공합니다.
    • 전화 및 태블릿 모듈
    • OS 모듈 착용
    • 안드로이드 TV 모듈
    • 유리 모듈
    원하는 장치의 모듈을 선택한 다음 클릭 다음.
  3. 에서 새 모듈 구성양식에 다음 세부 정보를 입력합니다.
    • 애플리케이션 이름: 이 이름은 새 모듈에 대한 앱 시작 관리자 아이콘의 제목으로 사용됩니다.
    • 모듈 이름: 이 텍스트는 소스 코드 및 리소스 파일이 표시되는 폴더의 이름으로 사용됩니다.
    • 패키지 이름: 이것은 모듈의 코드에 대한 Java 네임스페이스입니다. 모듈의 Android 매니페스트 파일에 패키지 속성으로 추가됩니다.
    • 최소 SDK: 이 설정은 앱 모듈이 지원하는 Android 플랫폼의 가장 낮은 버전을 나타냅니다. 이 값은 나중에 편집할 수 있는 build.gradle 파일의 minSdkVersion 특성을 설정합니다.

    그런 다음 클릭 다음.

  4. 선택한 장치 모듈에 따라 다음 페이지에는 기본 활동으로 사용하기 위해 선택할 수 있는 적절한 코드 템플릿이 표시됩니다. 시작할 활동 템플릿을 클릭한 다음 다음. 활동이 필요하지 않은 경우 클릭 활동 없음 추가, 클릭 마치다, 그런 다음 완료됩니다.
  5. 활동 템플릿을 선택한 경우 활동에 대한 설정을 활동 사용자 지정페이지. 대부분의 템플릿은 활동명, 레이아웃 이름, 제목, 그리고 소스 언어, 그러나 각 템플릿에는 활동별 설정이 있습니다. 딸깍 하는 소리 마치다. 활동 템플릿으로 앱 모듈을 생성하면 장치에서 즉시 모듈을 실행하고 테스트할 수 있습니다.

Android 스튜디오는 새 모듈에 필요한 모든 파일을 생성하고 프로젝트를 새 모듈 gradle 파일과 동기화합니다. 새 장치에 대한 모듈을 추가하면 대상 장치에 대한 필수 종속성도 모듈의 빌드 파일에 추가됩니다.

Gradle 프로젝트 동기화가 완료되면 새 모듈이 프로젝트왼쪽 창. 새 모듈 폴더가 보이지 않으면 창에 Android 보기가 표시되는지 확인하세요.

모듈 가져오기

기존 모듈을 프로젝트로 가져오려면 다음을 수행하십시오.

  1. 딸깍 하는 소리 파일 > 새로 만들기 > 모듈 가져오기.
  2. 에서 소스 디렉토리상자에서 가져오려는 모듈의 디렉터리를 입력하거나 선택합니다.
    • 하나의 모듈을 가져오는 경우 해당 루트 디렉터리를 나타냅니다.
    • 프로젝트에서 여러 모듈을 가져오는 경우 프로젝트 폴더를 지정합니다. 폴더 내의 각 모듈에 대해 상자가 나타나고 소스 위치그리고 모듈 이름. 확인하십시오 수입가져오려는 각 모듈에 대해 확인란이 선택되어 있습니다.
    모듈에 다른 종속성이 있는 경우 아래에 가져올 수 있도록 나열됩니다. 추가 필수 모듈.
  3. 원하는 모듈 이름을 입력하십시오. 모듈 이름필드).
  4. 딸깍 하는 소리 마치다.

다음 단계

새 모듈을 추가한 후에는 모듈 코드 및 리소스를 수정하고, 모듈 빌드 설정을 구성하고, 모듈을 빌드할 수 있습니다. 또한 다른 앱과 마찬가지로 모듈을 실행하고 디버그할 수 있습니다.

  • 모듈의 빌드 설정에 대해 알아보려면 모듈 수준 빌드 파일을 참조하십시오.
  • 특정 모듈을 빌드하고 실행하려면 다른 모듈 선택 및 빌드를 참조하십시오.

또한 새 장치를 적절하게 지원하기 위해 코드와 리소스를 추가할 수도 있습니다. 다양한 장치 유형에 대한 앱 모듈을 개발하는 방법에 대한 자세한 내용은 해당 설명서를 참조하십시오.

  • WearOS 모듈의 경우:
  • Android TV 모듈의 경우:
  • 유리 모듈의 경우: GDK 빠른 시작

새 모듈을 개발할 때 다른 앱 모듈에 이미 복제된 장치 독립적 코드를 만들 수 있습니다. 중복 코드를 유지하는 대신 공유 코드를 라이브러리 모듈로 이동하고 라이브러리를 앱 모듈에 대한 종속성으로 추가하는 것을 고려하십시오. 라이브러리 모듈 생성 및 종속성으로 추가하는 방법에 대한 자세한 내용은 다음을 참조하세요.

설치된 플러그인은 메뉴에 있습니다. 파일 | 설정... | 플러그인. 단추 저장소 찾아보기...저장소에서 플러그인을 찾을 수 있습니다. 단추 디스크에서 플러그인 설치...플러그인을 직접 다운로드한 경우 디스크에서 플러그인을 설치할 수 있습니다.

무지개 괄호

"레인보우 괄호"를 사용하면 각 괄호 쌍을 고유한 색상으로 표시할 수 있습니다. 이렇게 하면 코드 영역의 위치를 ​​시각적으로 확인할 수 있습니다.

모든 스튜디오 진행률 표시줄을 귀여운 고양이로 바꿉니다. 진지한 프로그래머라면 . 다른 IntelliJ IDEA 기반 개발 환경과 호환: PhpStorm, WebStorm, PyCharm, RubyMine, AppCode, CLion, Gogland, DataGrip, Rider, MPS.

도처에 나타납니다. 예를 들어, 프로젝트를 로드할 때.

무언가를 동기화하면서 작업하는 동안.

RoboPOJO제너레이터

GSON, FastJSON, AutoValue(GSON), Logan Square, Jackson과 같은 JSON의 기성품 Java 및 Kotlin POJO 클래스의 편리한 생성기입니다.

adb 아이디어

애플리케이션에서 빠른 작업을 위한 Android Studio/Intellij IDEA용 플러그인:

  • 앱 제거 - 기기에서 애플리케이션을 제거합니다.
  • 앱 종료 - 애플리케이션 종료(메모리에서 삭제)
  • 앱 시작 - 애플리케이션 시작
  • 앱 다시 시작 - 응용 프로그램 다시 시작
  • 앱 데이터 지우기 - 데이터 지우기
  • 앱 데이터 지우기 및 다시 시작 - 데이터 지우기 및 다시 시작

일단 설치되면 이러한 명령은 다음을 통해 찾을 수 있습니다. 도구 | 안드로이드 | ADB 아이디어.

키보드 단축키를 통해 동작 검색 창을 호출할 수도 있습니다. Ctrl+Shift+A그리고 기호로 adb특정 명령을 빠르게 찾습니다.

플러그인은 다양한 상태에서 애플리케이션의 상태를 확인하는 데 편리합니다. 예를 들어, 이전에 데이터베이스를 생성했고 애플리케이션이 빈 데이터베이스에서 어떻게 작동하는지 확인하기로 결정했습니다. 플러그인의 도움으로 데이터를 빠르게 정리하고 결과를 볼 수 있습니다.