Upload Playstore

Berikut adalah tutorial lengkap untuk mengunggah aplikasi Flutter ke Google Play Store, mulai dari persiapan awal hingga proses publikasi.

link youtube

https://www.youtube.com/watch?v=ZxjgV1YaOcQ&t=140s&ab_channel=CodeHQ

Langkah 1: Mengganti Icon Launcher

Cara termudah dan paling direkomendasikan adalah menggunakan paket flutter_launcher_icons.

  1. Tambahkan Dependensi:

    Buka file pubspec.yaml dan tambahkan flutter_launcher_icons di bawah dev_dependencies.

    YAML

    dev_dependencies:
      flutter_test:
        sdk: flutter
      flutter_launcher_icons: "^0.13.1" # Versi bisa berbeda
  2. Konfigurasi Ikon:

    Masih di pubspec.yaml, tambahkan konfigurasi berikut di level utama. Siapkan file ikon Anda (misalnya icon.png ukuran 1024x1024) dan letakkan di dalam folder assets/.

    YAML

    flutter_launcher_icons:
      android: "launcher_icon"
      ios: false
      image_path: "assets/icon.png" # Sesuaikan path ke file ikon Anda
      min_sdk_android: 21 # optional
      
  1. Jalankan Perintah:

    Buka terminal di project Anda dan jalankan perintah berikut untuk membuat semua varian ikon yang dibutuhkan.

    Bash

    flutter pub get
    flutter pub run flutter_launcher_icons

Langkah 2: Mengganti Nama Paket (Package Name)

Nama paket adalah identitas unik aplikasi Anda di Play Store (format: com.perusahaan.aplikasi). Gunakan paket change_app_package_name untuk kemudahan.

  1. Tambahkan Dependensi:

    Buka file pubspec.yaml dan tambahkan paket di dev_dependencies.

    YAML

    dev_dependencies:
      flutter_test:
        sdk: flutter
      change_app_package_name: "^1.1.0" # Versi bisa berbeda
  1. Jalankan Perintah:

    Di terminal, jalankan perintah berikut. Ganti com.new.packagename dengan nama paket yang Anda inginkan.

    Bash

    flutter pub get
    flutter pub run change_app_package_name:main com.new.packagename

Langkah 3: Menaikkan Versi Aplikasi

Setiap kali Anda mengunggah versi baru ke Play Store, Anda wajib menaikkan versionCode.

  1. Buka pubspec.yaml:

    Temukan baris version.

    YAML

    version: 1.0.0+1
    • 1.0.0 adalah versionName: Teks versi yang dilihat pengguna.

    • +1 adalah versionCode: Nomor internal yang harus selalu naik (misal: 1, 2, 3, ...) untuk setiap rilis. Google Play Store menolak unggahan dengan versionCode yang sama atau lebih rendah dari versi yang sudah ada.

Langkah 4: Membuat Keystore (Kunci Tanda Tangan Aplikasi)

PENTING: Proses ini hanya dilakukan sekali untuk setiap aplikasi. Simpan file keystore (.jks) dan password-nya di tempat yang sangat aman. Jika hilang, Anda tidak akan bisa memperbarui aplikasi Anda lagi.

  1. Jalankan Perintah Keytool:

    Buka terminal Anda dan jalankan perintah berikut. Perintah ini menggunakan keytool yang sudah termasuk dalam instalasi Java Development Kit (JDK).

    Untuk Windows (di Command Prompt atau PowerShell):

    Bash

    keytool -genkey -v -keystore upload-key.jks -storetype JKS -keyalg RSA -keysize 2048 -validity 10000 -alias upload

    Untuk macOS/Linux (di Terminal):

    Bash

    keytool -genkey -v -keystore upload-key.jks -storetype JKS -keyalg RSA -keysize 2048 -validity 10000 -alias upload
  2. Isi Informasi:

    Terminal akan meminta Anda untuk:

    • Membuat password untuk keystore.

    • Mengisi beberapa informasi (Nama, Organisasi, Kota, dll.).

    • Membuat password untuk alias 'upload' (disarankan samakan dengan password keystore).

  1. Pindahkan File Keystore:

    Setelah file upload-key.jks (atau nama lain yang Anda tentukan) berhasil dibuat, pindahkan file tersebut ke dalam folder android/app/ di dalam proyek Flutter Anda.

Langkah 5: Konfigurasi Gradle untuk Menggunakan Keystore

  1. Buat File key.properties:

    Di dalam direktori android/ proyek Anda, buat file baru bernama key.properties. Isi file tersebut dengan informasi berikut (ganti dengan password dan alias Anda):

    Properties

    storePassword=password_keystore_anda
    keyPassword=password_alias_anda
    keyAlias=upload
    storeFile=../app/upload-key.jks
  2. Tambahkan key.properties ke .gitignore:

    Buka file .gitignore di root proyek Anda dan tambahkan baris berikut agar file rahasia ini tidak terunggah ke Git.

    /android/key.properties
  3. Edit android/app/build.gradle:

    Buka file android/app/build.gradle.

    • Di bagian atas file, di bawah apply plugin: 'com.android.application', tambahkan kode untuk memuat key.properties.

// Import diletakkan di bagian paling atas file.
import java.util.Properties
import java.io.FileInputStream

plugins {
    id("com.android.application")
    id("kotlin-android")
    // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
    id("dev.flutter.flutter-gradle-plugin")
}

// Logika untuk memuat file properties diletakkan setelah blok plugins.
val keystoreProperties = Properties()
val keystorePropertiesFile = rootProject.file("key.properties")
if (keystorePropertiesFile.exists()) {
    keystoreProperties.load(FileInputStream(keystorePropertiesFile))
}

android {
    namespace = "com.example.flutter_supabase_notes_app"
    compileSdk = flutter.compileSdkVersion
    ndkVersion = flutter.ndkVersion

    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_11
        targetCompatibility = JavaVersion.VERSION_11
    }

    kotlinOptions {
        jvmTarget = JavaVersion.VERSION_11.toString()
    }

    defaultConfig {
        // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
        applicationId = "com.example.flutter_supabase_notes_app"
        // You can update the following values to match your application needs.
        // For more information, see: https://flutter.dev/to/review-gradle-config.
        minSdk = flutter.minSdkVersion
        targetSdk = flutter.targetSdkVersion
        versionCode = flutter.versionCode
        versionName = flutter.versionName
    }

    // --- BLOK YANG DIPERBAIKI ---
    signingConfigs {
        // Gunakan create("release") untuk membuat konfigurasi baru di KTS
        create("release") {
            if (keystorePropertiesFile.exists()) {
                // Gunakan '=' untuk assignment dan getProperty("...") untuk mengambil nilai
                storeFile = file(keystoreProperties.getProperty("storeFile"))
                storePassword = keystoreProperties.getProperty("storePassword")
                keyAlias = keystoreProperties.getProperty("keyAlias")
                keyPassword = keystoreProperties.getProperty("keyPassword")
            }
        }
    }

    buildTypes {
        // Gunakan getByName("release") untuk mengkonfigurasi build type yang sudah ada
        getByName("release") {
            // Mengatur agar build type 'release' menggunakan konfigurasi 'release' yang telah dibuat di atas.
            signingConfig = signingConfigs.getByName("release")
        }
    }
    // --- AKHIR BLOK YANG DIPERBAIKI ---
}

flutter {
    source = "../.."
}

Langkah 6: Membangun App Bundle (.aab)

Google Play Store mewajibkan format App Bundle (.aab) karena ukurannya lebih kecil dan efisien.

  1. Jalankan Perintah Build:

    Di terminal, jalankan perintah berikut:

    Bash

    flutter build appbundle
  2. Temukan Hasil Build:

    Setelah selesai, file rilis akan berada di:

    build/app/outputs/bundle/release/app-release.aab

Langkah 7: Mengunggah ke Google Play Console

  1. Login & Buat Aplikasi:

    • Klik Buat aplikasi.

    • Isi detail awal seperti Nama Aplikasi, Bahasa, dll.

  2. Siapkan Rilis:

    • Dari menu sebelah kiri, navigasikan ke Rilis > Produksi.

    • Klik Buat rilis baru.

  3. Unggah App Bundle:

    • Pada bagian "App bundle", unggah file app-release.aab yang telah Anda buat pada Langkah 6.

    • Play Console akan otomatis membaca versionCode dan versionName.

  4. Isi Detail Rilis:

    • Tulis "Catatan Rilis" (Apa yang baru di versi ini?).

  5. Lengkapi Detail Aplikasi (Store Listing):

    Di menu sebelah kiri, di bawah bagian Rating dan ulasan, lengkapi semua bagian yang diperlukan. Anda tidak bisa mempublikasikan aplikasi sebelum semua bagian ini memiliki tanda centang hijau. Ini termasuk:

    • Dasbor: Selesaikan semua tugas awal.

    • Konten aplikasi: Isi semua kuesioner kebijakan (Kebijakan Privasi, Iklan, Akses Aplikasi, Target Audiens, dll). Anda wajib memiliki URL Kebijakan Privasi.

    • Halaman listingan toko utama: Siapkan semua aset grafis:

      • Nama Aplikasi, Deskripsi Singkat, Deskripsi Lengkap.

      • Ikon Aplikasi: (512 x 512 piksel).

      • Grafik Fitur: (1024 x 500 piksel).

      • Screenshot: Minimal 2 screenshot untuk ponsel. Screenshot untuk tablet dan Chromebook juga sangat dianjurkan.

  6. Rilis Aplikasi:

    • Setelah semua langkah di atas selesai dan semua menu di sidebar kiri memiliki tanda centang hijau, kembali ke Rilis > Produksi.

    • Klik Edit rilis, lalu klik Tinjau rilis.

    • Jika tidak ada error, tombol Mulai peluncuran ke Produksi akan aktif. Klik tombol tersebut.

Aplikasi Anda sekarang akan masuk dalam proses peninjauan oleh tim Google, yang bisa memakan waktu beberapa jam hingga beberapa hari. Setelah disetujui, aplikasi Anda akan tersedia di Google Play Store.

Last updated

Was this helpful?