Memanggil Fungsi JavaScript dalam WebView pada Android
Apabila memasukkan kandungan web ke dalam aplikasi Android menggunakan WebView, selalunya perlu berinteraksi dengan yang mendasari JavaScript dalam halaman web. Ini boleh dicapai dengan menggunakan fungsi JavaScript daripada kod Android.
Pertimbangkan senario berikut: memanggil fungsi JavaScript daripada apl Android yang akan memaparkan mesej melalui Toast. Fungsi JavaScript untuk dipanggil ditakrifkan sebagai:
function testEcho(message) { window.JSInterface.doEchoTest(message); }
Dalam apl Android, anda boleh mendayakan JavaScript dan mendaftarkan kelas yang mengandungi kaedah Java terdedah:
myWebView.getSettings().setJavaScriptEnabled(true); myWebView.addJavascriptInterface(myJSInterface, "JSInterface");
Perangkap Biasa
Walaupun mengikut pendekatan yang digariskan, anda mungkin menghadapi masalah apabila fungsi JavaScript tidak digunakan. Satu pengawasan yang kerap ialah ketiadaan petikan berganda dalam parameter yang dihantar ke fungsi JavaScript. Pastikan parameter disertakan dalam petikan, seperti yang dilihat di bawah:
myWebView.loadUrl("javascript:testEcho('Hello World!')");
Fail JavaScript Luaran
Kehadiran fail JavaScript luaran yang dirujuk dan digunakan dalam HTML boleh berpotensi menjejaskan pelaksanaan fungsi JavaScript. Skrip luaran boleh mengubah skop global atau memperkenalkan pengendali acara mereka sendiri, yang boleh mengganggu pengendalian WebView terhadap arahan JavaScript. Pertimbangkan perkara berikut:
Atas ialah kandungan terperinci Bagaimana untuk Memanggil Fungsi JavaScript dengan Amanah daripada WebView Android?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!