Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥

DevCoach 172: Flutter | Tingkatkan Pengalaman P...

Nad
October 14, 2024
72

DevCoach 172: Flutter | Tingkatkan Pengalaman Pengguna dengan Lokalisasi dan Aksesibilitas

Nad

October 14, 2024
Tweet

More Decks by Nad

Transcript

  1. Pokok Pembahasan • Berkenalan dengan Localization dan Accessibility • Mengulik

    Proses Localization pada Flutter • Membedah Proses Accessibility pada Flutter • Bersahabat dengan Localization dan Accessibility Multi-platform Flutter
  2. Cross-platform mobile frameworks used by software developers worldwide from 2019

    to 2023 Worldwide Software Developer Working Hours - Statista
  3. Localization Localization (l10n) atau lokalisasi merupakan upaya adaptasi keseluruhan elemen

    pada aplikasi. Hal ini bertujuan agar aplikasi dapat menyesuaikan kebutuhan budaya serta bahasa untuk suatu target pasar.
  4. Keuntungan Menerapkan Sistem Localization 1. Meningkatkan jumlah pengguna atau unduhan.

    2. Memberikan nilai lebih terhadap tampilan. 3. Meningkatkan revenue.
  5. Element yang perlu diperhatikan • Teks, seperti instruksi pengguna, syarat

    dan ketentuan, kebijakan privasi, dan lainnya. • Format angka, seperti keuangan, tanggal, format angka, dan plural. • Desain atau layout, seperti ukuran aplikasi yang adaptif terhadap bahasa right-to-left RTL atau sebaliknya. • Aset gambar, warna, icon, dan emoji yang memiliki kultural dan budaya dari negara terkait. • Audio, seperti musik, dan efek suara. • Dan masih banyak lainnya.
  6. Element yang perlu disesuaikan • Teks, seperti instruksi pengguna, syarat

    dan ketentuan, kebijakan privasi, dan lainnya. • Format angka, seperti keuangan, tanggal, format angka, dan plural. • Desain atau layout, seperti ukuran aplikasi yang adaptif terhadap bahasa right-to-left RTL atau sebaliknya. • Aset gambar, warna, icon, dan emoji yang memiliki kultural dan budaya dari negara terkait. • Audio, seperti musik, dan efek suara. • Dan masih banyak lainnya.
  7. Hal yang perlu diperhatikan • Penggunaan bahasa lokal • Ukuran

    teks akan menyusut atau bertambah • Mendukung bahasa RTL (right-to-left) • Hindari format angka secara hardcoded • Menghargai budaya negara lain
  8. Accessibility Accessibility (a11y) merupakan kemampuan untuk mendapatkan sesuatu dengan mudah.

    Ketika dikaitkan dengan pengembang aplikasi, aksesibilitas merupakan upaya aplikasi dapat memberikan informasi dengan mudah ke semua pengguna.
  9. Localization pada Flutter Aplikasi Flutter menyediakan lokalisasi dengan bahasa Inggris

    sebagai bahasa default. Untuk menambahkan bahasa lain, aplikasi memerlukan tambahan dependency khusus.
  10. Localization pada Flutter Tambahan dua dependencies. • flutter_localizations: build-in dari

    Flutter SDK. • intl: mendukung lokalisasi, penerjemahan bahasa, plural, jenis kelamin, format angka, dan arah teks.
  11. Localization pada Flutter • Memanfaatkan berkas ARB Application Resource Bundle)

    berekstensi .arb. • Berkas berisi pesan terjemahan dari lokalisasi teks.
  12. Localization pada Flutter • Memanfaatkan berkas ARB Application Resource Bundle)

    berekstensi .arb. • Berkas berisi pesan terjemahan dari lokalisasi teks. • Tambahkan berkas baru untuk terjemahan dalam bahasa lainnya.
  13. Localization pada Flutter • Lakukan clean dan build project. •

    Ada folder hasil generate di direktori .dart_tool/flutter_gen/gen_l10n. • Isi dari folder tersebut adalah hasil rekonstruksi pesan berupa katalog.
  14. Localization pada Flutter Tambahkan dua parameter di MaterialApp atau CupertinoApp.

    • localizationsDelegates: sistem yang memproduksi kumpulan nilai lokalisasi. • supportedLocales: daftar lokal yang akan mendukung aplikasi.
  15. Aspek aksesibilitas pada Flutter • Font Besar • Kontras yang

    cukup • Screen reader Pengaturan font secara default Pengaturan font paling besar
  16. Aspek aksesibilitas pada Flutter • Font Besar • Kontras yang

    cukup • Screen reader ◦ Android - Talkback ◦ iOS dan macOS - VoiceOver ◦ Windows - Narrator ◦ Linux - Orca ◦ Web - mengikuti platform
  17. Aspek Aksesibilitas pada Flutter • Font Besar • Kontras yang

    cukup • Screen reader Sudah didukung oleh perangkat. Kita dapat mengaturnya melalui tampilan widget. Bisa diatur melalui kode aplikasi.
  18. Accessibility pada Widget Cara mengaktifkan semantic debugger. • Tambahkan parameter

    showSemanticsDebugger pada MaterialApp atau CupertinoApp.
  19. Feedback! Hadiah: • 1 Token Langganan Academy 30 Hari)* *untuk

    pengisi feedback terpilih! dicoding.id/devcoachfeedback