[技術スタック]
ネイティブアプリ
- Android: Kotlin
- iOS: Swift
ウェブアプリ
- Typescript(Next.js)
webview → ネイティブアプリ にデータを受け渡すパターンの一つとして、JavaScriptの引数に値を入れて受け渡す方法があります。
-
ネイティブアプリ側で関数を定義
(ネイティブアプリのコードは省略します。) -
webview側で関数を呼び出す
以下webview側のJavaScriptのコードです。
[Android]
window.Android.functionName.postMessage(value)
[Swift]
window.webkit.messageHandlers.functionName.postMessage(value)
上記をonClickなどのイベントで呼び出すことで、ネイティブアプリ側で関数を実行するとともに引数に入れた値をネイティブアプリに渡すことができます。