Cara Upload File Di WebView Kotlin

Ini merupakan catatanku setelah beberapa jam mencari cara untuk upload file di Webview menggunakan kotlin akhirnya bisa juga. Kode yang aku share di sini hanya untuk handling pemilihan file saja. Tidak termasuk kodingan untuk upload di sisi server. Untuk kodingan upload file di sisi server mungkin bisa melihat tutorial Cara Upload Gambar Menggunakan Ajax dan PHP.

Permasalahan

Ketika kita menggunakan WebView di sebuah aplikasi android untuk menampilkan form yang di dalamnya terdapat input type file  maka kita tidak bisa memilih file yang akan diupload. Aku tidak tahu apakah itu merupakah bug dari WebView atau memang disengaja dibuat seperti itu dengan alasan keamanan.

Solusi

Kita harus membuat handling khusus menggunakan WebChromeClient() agar Webview yang kita gunakan bisa digunakan untuk memilih file yang akan diupload. Setelah file tersebut dipilih, selanjutnya diparse kedalam WebView lagi melalui onActivityResult() .

Membuat Handling Pemilihan File

Kode di bawah ini digunakan untuk mengahdel pemilihan file pada webview.

Parse Hasil Pemilihan File Kedalam WebView

Kode untuk memarse hasil pemilihan file kedalam Webview adalah sebagai berikut:

 

Tanggapan Kamu?