5단계
Android 빌드
30 분
Android 빌드
Tauri 2 의 핵심 차별화. 같은 코드베이스로 APK 를 빌드.
1. 사전 준비
- Android Studio 설치
- SDK Manager → Android SDK Platform 34 · NDK (Side by side) · Cmdline-Tools
- 환경변수:
# ~/.zshrc 또는 PowerShell $PROFILE
export ANDROID_HOME=$HOME/Library/Android/sdk # macOS
export NDK_HOME=$ANDROID_HOME/ndk/26.1.10909125
export PATH=$PATH:$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools
2. Rust Android 타깃 추가
rustup target add aarch64-linux-android armv7-linux-androideabi i686-linux-android x86_64-linux-android
4 개 아키텍처. 배포 시 대부분 aarch64 (ARM64) 만 실제 사용.
3. 프로젝트 초기화
pnpm tauri android init
src-tauri/gen/android/ 에 Gradle 프로젝트 생성. 여기서는 수정 최소화 — Tauri 가 동기화.
4. 개발 실행
# 에뮬레이터 또는 USB 연결 장치 필요
pnpm tauri android dev
Android Studio 에뮬레이터 켜두고 실행. Vite HMR 이 모바일 화면에서도 동작.
5. 릴리스 빌드
pnpm tauri android build
src-tauri/gen/android/app/build/outputs/apk/ 에 APK / AAB 생성.
6. 서명 키
Google Play 제출용 서명 키 생성 (1 회).
keytool -genkey -v -keystore release-key.keystore \
-alias my-app-key -keyalg RSA -keysize 2048 -validity 10000
src-tauri/gen/android/key.properties:
password=...
keyAlias=my-app-key
storePassword=...
storeFile=../../release-key.keystore
이 파일은 반드시 git ignore. 커밋 시 앱 탈취 위험.
7. AndroidManifest.xml 권한
필요한 권한만 opt-in. src-tauri/gen/android/app/src/main/AndroidManifest.xml:
<uses-permission android:name="android.permission.INTERNET"/>
<!-- 필요한 경우만 -->
<!-- <uses-permission android:name="android.permission.CAMERA"/> -->
<!-- <uses-permission android:name="android.permission.RECORD_AUDIO"/> -->
Google Play 심사에서 각 권한의 사용 이유 설명 요구.
8. 아이콘 · 스플래시
src-tauri/icons/ # 모든 플랫폼 공용
pnpm tauri icon ./path/to/icon.png 으로 일괄 생성.
9. 자주 걸리는 자리
- NDK 버전 mismatch — Tauri 요구하는 NDK 버전이 업데이트됨. docs 확인
cargo build실패 — Rust 타깃 4 개 다 추가됐는지- 서명 키 분실 — 같은 키로만 업데이트 가능. 잃으면 새 앱으로 재등록
- manifest 권한 누락 — 런타임에 기능 작동 안 함
10. 제출 체크리스트
-
minSdkVersion≥ 24 (Google Play 요구) -
targetSdkVersion은 최신 (현재 34) - 64-bit APK 필수 (aarch64 포함)
- 서명 키 안전 보관
- 개인정보처리방침 URL 준비
하고픈 말
첫 Android 빌드는 NDK · SDK · 서명 키 셋업 때문에 반나절 잡고 시작하는 게 마음 편합니다. 두 번째부터는 pnpm tauri android build 한 줄.
Next
- 06-ocr-stt-tts