実現したいこと
KotlinのWebViewから、type="module"で読み込んだJavascriptの関数を呼び出したい。
前提
KotlinのWebViewを用いてAndroidアプリを開発しています。
KotlinからJavascriptの関数の呼び出しについて、
javascriptをHTMLから
というふうに読み込んだ場合は問題なく呼び出せるのですが、
<script type="module" src="test.js"></script>というふうにモジュール化の機能を使うため「type="module"」を付けて読み込んだ場合は下記のようなエラーが出て呼び出すことができません。
Uncaught ReferenceError: androidResume is not defined
Kotlin側のJavascript呼び出しソース
varWebView.evaluateJavascript("androidResume('test')", null)
Javascript側の呼び出される関数
function androidResume(arg){
console.log(arg);
}
ちなみに、Javascript側の呼び出される関数は他ファイルからimportした関数ではなく、type="module"を指定して読み込んだJSの関数です。
type="module"を指定して読み込んだJSの関数は、ChromeのDevToolsのコンソールでも実行できなかったので、そもそも外部からは完全にアクセスできないものなのでしょうか。
解決方法が分かる方がいらっしゃいましたら、ご回答よろしくお願いいたします。
Android側はKotlinではなく、Javaの解決方法でも結構です。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/04/11 01:50