fluttercommunity / fluttercommunity/flutter_webview_plugin
i want to call custom flutter function from javascription fuction.
- 主要言語
- Java
- スター
- 1.5k
- フォーク
- 938
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
Here is my code.
MainActivity.kt
override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
}
WebviewManager.java
webView.addJavascriptInterface(new WebAppInterface(), "Android");
//////////////
public class WebAppInterface {
@JavascriptInterface
public void getPostMessage(String value){
Map postMessageMap = new HashMap<>();
postMessageMap.put("postMessage", value);
FlutterWebviewPlugin.channel.invokeMethod("onPostMessage", postMessageMap);
}
}
dart file :
flutterWebViewPlugin.onStateChanged.listen((state) async {
if(state.type == WebViewState.finishLoad) {
String script = 'window.addEventListener("message", sendWhatsApp,false);' +
'function sendWhatsApp(msg) {Android.postMessage("data");}';
flutterWebViewPlugin.evalJavascript(script);
}
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
まず、MainActivity.kt、WebviewManager.java、および Dart の onStateChanged listener に記載されている JavaScript-to-native-to-Dart のフローを再現します。想定されるカスタム Flutter 関数を明確にし、既存の JavaScript interface と FlutterWebviewPlugin channel でその呼び出しを届けられるか確認します。完了条件は、要求された invocation がドキュメント化された例で動作することです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- dart, java, javascript, kotlin
- 領域
- mobile-dev
- issue の種類
- 機能追加
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100