Jadi saat ini di aplikasi saya, URL yang saya akses memiliki pengalihan, dan ketika ini terjadi, WebView akan membuka browser baru, alih-alih tetap berada di aplikasi saya. Adakah cara saya dapat mengubah pengaturan sehingga Tampilan akan dialihkan ke URL seperti biasa, tetapi tetap di aplikasi saya alih-alih membuka browser baru?
Edit:
Saya ingin URL pengalihan, saya hanya tidak tahu cara membuatnya, jadi satu-satunya cara untuk mendapatkan URL itu adalah melalui salah satu yang akan menyebabkan pengalihan ke URL yang saya inginkan.
Misalnya: Ketika Anda pergi ke sini: http://www.amazon.com/gp/aw/s/ref=is_box_/k=9780735622777 perhatikan bagaimana ini akan mengarahkan URL ke produk yang sebenarnya. Di aplikasi saya, jika saya membukanya di browser baru, itu akan baik-baik saja, namun jika saya menyimpannya di aplikasi saya dengan WebView, itu akan muncul seolah-olah sedang mencari k = 9780735622777, seperti ini: http://www.amazon.com/gp/aw/s/ref=is_s_?k=k%3D9780735622777&x=0&y=0 . ATAU, ini akan membuka tampilan di browser dan menunjukkan apa yang sesuai. Namun, saya ingin menyimpan semuanya di aplikasi saya.
sumber
shouldOverrideUrlLoading
metode adalah url pengalihan berikutnya? Dan saya ingin mengizinkannya?Menurut dokumentasi resmi , klik pada tautan apa pun di WebView meluncurkan aplikasi yang menangani URL, yang secara default adalah browser. Anda perlu mengganti perilaku default seperti ini
sumber
Cukup menambahkan custom default
WebViewClient
sudah cukup. Ini membuat WebView menangani sendiri url yang dimuat.sumber
Anda harus menyetel metode penggantian WebviewClient kustom Anda harusOverrideUrlLoading untuk tampilan web Anda sebelum memuat url.
sumber
Silakan gunakan kode kotlin di bawah ini
Untuk info lebih lanjut klik disini
sumber
Buat kelas yang mengimplementasikan webviewclient dan tambahkan kode berikut yang memungkinkan ovveriding string url seperti yang ditunjukkan di bawah ini. Anda dapat melihat [contoh] [1] ini
Di konstruktor Anda, buat objek webview seperti yang ditunjukkan di bawah ini.
Kemudian tambahkan kode berikut untuk melakukan pemuatan url di dalam aplikasi Anda
sumber
sumber