More

Cara Membuat Widget Layar Utama di Flutter dengan HomeWidget dan Back4App

31min

Pendahuluan

Widget layar beranda memungkinkan pengguna untuk mengakses informasi waktu nyata dari aplikasi Anda langsung di layar beranda perangkat mereka tanpa membuka aplikasi. Dengan Flutter, membuat widget ini memerlukan beberapa kode spesifik platform. Namun, paket home_widget menjembatani kesenjangan ini dengan memungkinkan pertukaran data antara aplikasi Flutter Anda dan widget layar beranda menggunakan kode Dart.

Dalam tutorial ini, Anda akan belajar bagaimana cara membuat widget layar beranda di Flutter menggunakan paket home_widget dan mengintegrasikannya dengan Back4App—sebuah backend-as-a-service yang didukung oleh Parse Server. Pada akhir tutorial ini, Anda akan memiliki aplikasi Flutter yang menampilkan data dari Back4App dalam widget layar beranda.

Prasyarat

Untuk menyelesaikan tutorial ini, Anda akan memerlukan:

  • Flutter SDK terinstal di mesin Anda. Anda dapat mengikuti panduan instalasi Flutter resmi untuk sistem operasi Anda.
  • Pengetahuan dasar tentang Flutter dan Dart. Jika Anda baru mengenal Flutter, pertimbangkan untuk meninjau dokumentasi Flutter untuk membiasakan diri dengan dasar-dasarnya.
  • Sebuah IDE atau editor teks seperti Visual Studio Code atau Android Studio.
  • Sebuah akun Back4App. Daftar untuk akun gratis di Back4App.
  • Parse Server SDK untuk Flutter ditambahkan ke proyek Anda. Anda dapat belajar cara mengaturnya dengan mengikuti Panduan SDK Flutter Back4App.
  • Pengaturan spesifik platform untuk widget layar utama Android dan iOS.

Langkah 1 – Menyiapkan Proyek Flutter

1.1. Buat Proyek Flutter Baru

Buka terminal Anda dan jalankan:

Bash


Navigasi ke direktori proyek:

Bash


1.2. Tambahkan Dependensi

Buka pubspec.yaml dan tambahkan dependensi berikut:

YAML


Jalankan flutter pub get untuk menginstal paket.

Langkah 2 – Menyiapkan Back4App

2.1. Buat Aplikasi Back4App Baru

  1. Masuk ke dasbor Back4App.
  2. Klik pada "Buat aplikasi baru".
  3. Masukkan nama untuk aplikasi Anda, misalnya, "HomeWidgetApp", dan klik "Buat".

2.2. Siapkan Model Data

  1. Di dasbor aplikasi Anda, navigasikan ke bagian "Database".
  2. Klik pada "Buat kelas".
  3. Di modal:
    • Pilih "Kustom".
    • Masukkan "Pesan" sebagai nama kelas.
    • Klik "Buat kelas".

2.3. Tambahkan Kolom ke Kelas

  1. Di kelas "Pesan" , klik pada "+" untuk menambahkan kolom baru.
  2. Tambahkan kolom berikut:
    • judul: Ketik String
    • konten: Ketik String
  3. Tambahkan beberapa data contoh ke kelas "Pesan". Misalnya:

2.4. Dapatkan Kredensial Aplikasi

  1. Navigasikan ke Pengaturan Aplikasi > Keamanan & Kunci.
  2. Catat ID Aplikasi dan Kunci Klien Anda.

Langkah 3 – Menginisialisasi Parse di Aplikasi Flutter Anda

Buka lib/main.dart dan ubah seperti berikut:

Dart

  • Ganti 'YOUR_APPLICATION_ID' dan 'YOUR_CLIENT_KEY' dengan kredensial Back4App Anda yang sebenarnya.

Langkah 4 – Mengambil Data dari Back4App

Buat file baru lib/home_page.dart:

Dart


Penjelasan

  • Kelas Pesan: Sebuah kelas model sederhana untuk menyimpan data pesan.
  • fetchMessage(): Mengambil data dari Kelas Pesan di Back4App dan memperbarui variabel pesan.
  • updateHomeWidget(): Menyimpan data yang diambil ke widget layar beranda menggunakan HomeWidget.saveWidgetData dan memicu pembaruan menggunakan HomeWidget.updateWidget.
  • build(): Menampilkan data pesan dan tombol untuk menyegarkan pesan.

Langkah 5 – Menyiapkan Widget Layar Beranda

5.1. Pengaturan Android

5.1.1. Buat Tata Letak Widget

Buat file tata letak XML baru di android/app/src/main/res/layout/ bernama home_widget.xml:

XML


5.1.2. Buat Penyedia Widget

Buat kelas Java baru di android/app/src/main/java/your/package/name/ bernama HomeWidgetProvider.java:

Java


Ganti your.package.name dengan nama paket Anda yang sebenarnya.

5.1.3. Perbarui Android Manifest

Tambahkan penyedia widget ke AndroidManifest.xml:

XML


5.1.4. Buat Widget Info XML

Buat file XML baru di android/app/src/main/res/xml/ bernama home_widget_info.xml:

XML


5.2. Pengaturan iOS

5.2.1. Buat Ekstensi Widget

  1. Buka proyek Flutter Anda di Xcode dengan membuka ios/Runner.xcworkspace.
  2. Klik File > New > Target.
  3. Pilih Widget Extension dan klik Next.
  4. Masukkan HomeWidget sebagai nama produk dan pastikan Include Configuration Intent tidak dicentang.
  5. Klik Finish dan Activate skema.

5.2.2. Perbarui Kode Widget

Di dalam HomeWidget ekstensi, buka HomeWidget.swift dan modifikasi:

Swift

  • Ganti YOUR_GROUP_ID dengan pengidentifikasi Grup Aplikasi Anda (misalnya, group.com.example.homeWidgetApp).

5.2.3. Atur Grup Aplikasi

  1. Di Xcode, pilih proyek Anda dan pergi ke Signing & Capabilities.
  2. Tambahkan "App Groups" ke target aplikasi utama dan ekstensi widget.
  3. Buat Grup Aplikasi baru (misalnya, group.com.example.homeWidgetApp).
  4. Pastikan kedua target memiliki Grup Aplikasi yang sama diaktifkan.

5.3. Perbarui Kode Flutter untuk Konfigurasi Spesifik Platform

Di updateHomeWidget() metode Anda di home_page.dart, perbarui nama widget:

Dart


Langkah 6 – Menjalankan Aplikasi dan Menguji Widget

6.1. Jalankan Aplikasi

Di terminal Anda, jalankan:

Bash


6.2. Tambahkan Widget ke Layar Utama Anda

Android

  1. Tekan lama pada layar utama dan pilih "Widgets".
  2. Temukan aplikasi Anda di daftar widget.
  3. Seret dan jatuhkan widget ke layar utama Anda.

iOS

  1. Masuk ke mode jiggle dengan menekan lama pada layar utama.
  2. Ketuk tombol "+" di sudut kiri atas.
  3. Cari widget Anda berdasarkan nama.
  4. Tambahkan widget ke layar utama Anda.

6.3. Pembaruan Data Uji

  • Ketuk "Refresh Message" tombol di aplikasi Anda untuk mengambil data baru dari Back4App.
  • Widget di layar beranda Anda harus diperbarui dengan data baru.

Kesimpulan

Dalam tutorial ini, Anda belajar bagaimana cara membuat widget layar beranda di Flutter menggunakan paket home_widget dan mengintegrasikannya dengan Back4App untuk menampilkan data dinamis. Ini memungkinkan Anda memberikan informasi terkini kepada pengguna langsung di layar beranda mereka, meningkatkan keterlibatan dan pengalaman pengguna.

Langkah Selanjutnya

  • Data Dinamis: Terapkan pembaruan data waktu nyata menggunakan Live Queries dari Back4App.
  • Interaktivitas: Tambahkan aksi klik pada widget Anda untuk membuka halaman tertentu di aplikasi Anda.
  • Kustomisasi: Gaya widget Anda agar sesuai dengan tema dan desain aplikasi Anda.

Sumber Daya Tambahan

Selamat Berkoding!