Skip to Content
Android📚 Học lập trình AndroidXuất bản lên Play Store

Xuất bản ứng dụng lên Google Play Store

Sau khi hoàn thành ứng dụng, bước cuối cùng là đưa nó đến tay người dùng. Bài này hướng dẫn chi tiết quy trình xuất bản app lên Google Play Store.

1. Tổng quan quy trình

1. Chuẩn bị app → Versioning, signing 2. Tạo tài khoản Developer → $25 một lần 3. Tạo Store Listing → Icon, screenshots, mô tả 4. Upload App Bundle → .aab file 5. Review & Publish → 1-7 ngày

2. Chuẩn bị ứng dụng

2.1 Versioning (Đặt phiên bản)

Mỗi lần upload lên Play Store cần tăng version:

// app/build.gradle.kts android { defaultConfig { applicationId = "com.yourname.yourapp" // Unique ID versionCode = 1 // Số nguyên, tăng mỗi lần upload versionName = "1.0" // Hiển thị cho user } }

Giải thích:

  • applicationId: ID duy nhất trên Play Store, không đổi được sau khi publish
  • versionCode: Bắt buộc tăng mỗi lần upload (1 → 2 → 3…)
  • versionName: Hiển thị cho user, có thể tùy chọn (1.0 → 1.1 → 2.0)

2.2 Tạo Keystore (Chữ ký số)

Keystore là “chứng minh thư” của app - chứng minh bạn là chủ sở hữu.

Cách tạo trong Android Studio:

  1. Vào Build > Generate Signed Bundle/APK
  2. Chọn Android App Bundle
  3. Click Create new…
  4. Điền thông tin:
    • Key store path: Nơi lưu file .jks
    • Password: Mật khẩu keystore
    • Key alias: Tên cho key (ví dụ: release)
    • Key password: Mật khẩu cho key
    • Validity: 25 năm (mặc định)
    • Certificate: Thông tin của bạn/công ty

⚠️ QUAN TRỌNG: Lưu keystore và mật khẩu ở nơi an toàn! Mất keystore = không thể update app!

2.3 Cấu hình signing trong Gradle

// app/build.gradle.kts android { signingConfigs { create("release") { storeFile = file("path/to/your/keystore.jks") storePassword = "your_keystore_password" keyAlias = "your_key_alias" keyPassword = "your_key_password" } } buildTypes { release { isMinifyEnabled = true isShrinkResources = true proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) signingConfig = signingConfigs.getByName("release") } } }

Không commit password vào Git! Dùng cách sau:

// app/build.gradle.kts signingConfigs { create("release") { storeFile = file(project.property("KEYSTORE_FILE") as String) storePassword = project.property("KEYSTORE_PASSWORD") as String keyAlias = project.property("KEY_ALIAS") as String keyPassword = project.property("KEY_PASSWORD") as String } }
# local.properties (đã được ignore bởi .gitignore) KEYSTORE_FILE=../keystore/release.jks KEYSTORE_PASSWORD=your_password KEY_ALIAS=release KEY_PASSWORD=your_key_password

2.4 Tạo Release Bundle

  1. Vào Build > Generate Signed Bundle/APK
  2. Chọn Android App Bundle (khuyến nghị) hoặc APK
  3. Chọn keystore đã tạo
  4. Chọn release build variant
  5. Click Create

File .aab sẽ được tạo tại app/release/app-release.aab

3. Tạo tài khoản Google Play Developer

  1. Truy cập play.google.com/apps/publish 
  2. Đăng nhập với tài khoản Google
  3. Chấp nhận điều khoản
  4. Thanh toán $25 USD (một lần duy nhất)
  5. Hoàn thành xác minh danh tính

Lưu ý: Cần 24-48 giờ để tài khoản được kích hoạt

4. Tạo Store Listing

4.1 Thông tin cơ bản

  • App name: Tên ứng dụng (tối đa 30 ký tự)
  • Short description: Mô tả ngắn (tối đa 80 ký tự)
  • Full description: Mô tả đầy đủ (tối đa 4000 ký tự)

Tips viết mô tả:

  • Highlight tính năng chính
  • Dùng bullet points
  • Thêm keywords để dễ tìm kiếm
  • Viết cả tiếng Việt và tiếng Anh

4.2 Graphics Assets (Hình ảnh)

AssetKích thướcSố lượng
App icon512 x 512 px1
Feature graphic1024 x 500 px1
Phone screenshotsMin 320px, max 3840px2-8
Tablet screenshots(Optional)0-8

Tips chụp screenshots:

  • Chụp trên emulator với resolution đẹp
  • Thêm text overlay highlight tính năng
  • Dùng app như Placeit  để tạo mockup đẹp

4.3 Categorization

  • Category: Games, Education, Productivity, etc.
  • Tags: Thêm tối đa 5 tags liên quan
  • Content rating: Trả lời questionnaire về nội dung app

5. Upload App Bundle

  1. Vào Release > Production
  2. Click Create new release
  3. Chọn Google Play App Signing (khuyến nghị)
  4. Upload file .aab
  5. Thêm Release notes (ghi chú phiên bản)
  6. Click SaveReview release

6. Content Rating

Trả lời bảng câu hỏi về nội dung:

  • App có bạo lực không?
  • Có nội dung người lớn?
  • Có quảng cáo?
  • Có mua hàng in-app?

Hệ thống tự động đánh giá: Everyone, Teen, Mature, etc.

7. App Pricing

  • Free: Miễn phí (có thể thêm ads hoặc in-app purchases)
  • Paid: Đặt giá (Google giữ 15-30% commission)

Lưu ý: App trả phí KHÔNG thể chuyển thành miễn phí sau này

8. Submit và chờ Review

  1. Kiểm tra lại tất cả thông tin
  2. Click Start rollout to Production
  3. Đợi Google review (thường 1-7 ngày)

Các lý do hay bị reject:

Lý doCách fix
Thiếu Privacy PolicyThêm link privacy policy
Crash khi mở appTest kỹ trước khi submit
Mô tả không khớp với appCập nhật mô tả chính xác
Vi phạm bản quyềnXóa nội dung vi phạm
Thiếu tính năngĐảm bảo app hoàn chỉnh

9. Sau khi Publish

Theo dõi số liệu

  • Installs: Số lượt cài đặt
  • Ratings: Đánh giá từ users
  • Crashes: Báo cáo crash
  • ANRs: App Not Responding

Update app

  1. Tăng versionCode
  2. Build new .aab
  3. Upload lên Production hoặc Testing track
  4. Đợi review

Testing Tracks

TrackMục đích
InternalTeam nội bộ (20 người)
ClosedBeta testers (giới hạn)
OpenPublic beta
ProductionTất cả users

10. Checklist trước khi upload

  • versionCode đã tăng
  • Test kỹ trên nhiều devices
  • Keystore đã backup an toàn
  • Screenshots đẹp và accurate
  • Privacy Policy đã có
  • App icon rõ ràng ở size nhỏ
  • Mô tả chứa keywords phù hợp
  • Content rating đã hoàn thành

📝 Tóm tắt cho người mới

  1. Keystore = Chứng minh thư của app, phải giữ an toàn
  2. versionCode phải tăng mỗi lần update
  3. Tài khoản Developer tốn $25 một lần
  4. Screenshots và mô tả rất quan trọng cho downloads
  5. Review mất 1-7 ngày
  6. Dùng Testing tracks để test trước khi release cho tất cả
Last updated on