[BUG] Flutter Multi-Bahasa Tidak Berubah Saat Startup

Jadi kali ini saya mempunyai permasalahan dimana, aplikasi produk saya membutuhkan sebuah fitur localization atau multi-bahasa yang bisa diganti dan tanpa keluar dari aplikasi terlebih dahulu. Disini saya menggunakan Getx sebagai state management nya, nah dikarenakan Getx itu mempunyai fitur localization nya juga jadi mudah buat saya merubah bahasa nya tanpa menggunakan banyak dependencies. Tapi ternyata setelah dicoba-coba ada masalah ketika set preference untuk bahasa yang digunakan, dimana permasalahannya adalah ketika setelah dipilih pilihan bahasa saat aplikasi dibuka kembali bahasa tidak terubah atau malah menggunakan FallbackLocale.

Contoh kode untuk merubah bahasa :


Ini adalah kode sebelum saya rubah kode nya kebentuk json, kenapa begitu? karena diawal saya mengira yang dibutuhkan model Locale bisa digunakan tanpa perlu sub tag negaranya.


Dengan metode diatas ini, flutter ternyata tidak mau menerima perubahan bahasa yang dilakukan oleh si pengguna. Awal saya kira karena yang bermasalah adalah pada state management nya ternyata saya salah, disini mungkin bisa dikatakan bug dikarenakan dari flutter countryCode itu merupakan optional yang seharusnya bisa tanpa menggunakan countryCode.


Kemudian saya rubah ke bentuk seperti ini yang dimana, data yang disimpan merupakan sebuah json yang mempunyai 2 data yaitu languageCode (language['id']) dan countryCode (language['code']). Apabila kalian mengalami permasalahan serupa mungkin memang karena ini penyebabnya.

Semoga membantu.


Posting Komentar

0 Komentar