안드로이드 애플리케이션을 배포하기 위해서는 APK(안드로이드 패키지 파일)를 생성하고 서명하는 과정이 필요합니다. APK 생성과 서명 과정은 다음과 같은 단계로 이루어집니다.
1. APK 생성
APK 파일은 안드로이드 애플리케이션의 모든 코드를 포함하는 패키지 파일로, 이를 생성하기 위해 안드로이드 스튜디오를 사용합니다.
Step 1: 빌드 구성 파일 설정
build.gradle
파일에서 필요한 설정을 확인합니다. 보통 기본 설정이 되어 있지만, 필요에 따라 추가 설정을 할 수 있습니다.
android { ... buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } }
Step 2: APK 생성
- 안드로이드 스튜디오에서 상단 메뉴의 Build > Build Bundle(s) / APK(s) > Build APK(s)를 클릭합니다.
- 빌드가 완료되면, 하단에 빌드 결과가 나타나고, locate 버튼을 클릭하여 APK 파일의 위치를 확인할 수 있습니다.
2. APK 서명
안드로이드 애플리케이션을 배포하려면 APK 파일에 서명해야 합니다. 서명되지 않은 APK는 설치할 수 없습니다.
Step 1: 키스토어 생성
키스토어는 APK 파일을 서명하는 데 사용되는 키를 저장하는 파일입니다.
- 안드로이드 스튜디오에서 Build > Generate Signed Bundle / APK를 클릭합니다.
- APK를 선택하고 Next를 클릭합니다.
- Create new…를 클릭하여 새로운 키스토어를 생성합니다.
- 키스토어의 위치, 비밀번호, 키의 별칭, 키의 비밀번호, 이름, 조직 등을 입력합니다.
- OK를 클릭하여 키스토어를 생성합니다.
Step 2: APK 서명
- Build > Generate Signed Bundle / APK에서 APK를 선택하고 Next를 클릭합니다.
- 이전 단계에서 생성한 키스토어의 경로와 비밀번호를 입력하고, 키의 별칭과 비밀번호를 입력합니다.
- Next를 클릭합니다.
- 빌드 유형(예:
release
)과 프로덕트 플래버를 선택하고 Finish를 클릭합니다.
서명된 APK 파일이 생성됩니다. 서명된 APK 파일의 위치는 빌드 결과 창에서 확인할 수 있습니다.
예제: APK 생성 및 서명
다음은 실제 예제입니다.
예제 1: APK 생성
- AndroidManifest.xml 파일을 확인하고, 필요한 권한과 설정을 추가합니다.
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.myapp"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.MyApp"> <activity android:name=".MainActivity" android:exported="true"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
- build.gradle (app 수준) 파일을 확인합니다.
android { compileSdkVersion 30 defaultConfig { applicationId "com.example.myapp" minSdkVersion 16 targetSdkVersion 30 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } } dependencies { implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'androidx.constraintlayout:constraintlayout:2.0.4' testImplementation 'junit:junit:4.13.1' androidTestImplementation 'androidx.test.ext:junit:1.1.2' androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' }
- Build > Build Bundle(s) / APK(s) > Build APK(s)를 클릭하여 APK를 생성합니다.
예제 2: APK 서명
- Build > Generate Signed Bundle / APK를 클릭합니다.
- APK를 선택하고 Next를 클릭합니다.
- Create new…를 클릭하여 새로운 키스토어를 생성합니다.
- 키스토어 경로:
C:\Users\Username\keystore.jks
- 키스토어 비밀번호:
password
- 키 별칭:
mykey
- 키 비밀번호:
password
- 이름:
John Doe
- 조직 단위:
Development
- 조직:
MyCompany
- 도시:
MyCity
- 주/도:
MyState
- 국가 코드:
US
- Next를 클릭하고, 빌드 유형을 release로 선택한 후 Finish를 클릭합니다.
서명된 APK 파일이 생성되고, 위치는 빌드 결과 창에서 확인할 수 있습니다.
요약
- APK 생성: 안드로이드 스튜디오에서
Build > Build Bundle(s) / APK(s) > Build APK(s)
를 통해 APK를 생성합니다. - APK 서명:
Build > Generate Signed Bundle / APK
를 통해 키스토어를 생성하고, 서명된 APK 파일을 생성합니다.
이 과정을 통해 안드로이드 애플리케이션을 배포하기 위한 준비를 완료할 수 있습니다.