Как отловить обратный вызов postMessage в android студии WebView? - PullRequest
0 голосов
/ 14 января 2020

Я пытаюсь поймать js (React Native) postMessage в android студии, я пытался использовать WebMessagePort и его обратный вызов, но ничего не происходит в методах обратного вызова, помогите мне, пожалуйста!

Здесь, где postMessage происходит в js:

window._reactNativePostMessage = function (event, data) { window.ReactNativeWebView && window.ReactNativeWebView.postMessage && window.ReactNativeWebView.postMessage(JSON.stringify({event:event, data:data})); }

Мне нужно отловить этот обратный вызов onMessage в android studio, попытался сделать это :

webMessagePorts[0].setWebMessageCallback(new WebMessagePort.WebMessageCallback() {
            @Override
            public void onMessage(WebMessagePort port, WebMessage message) {
                super.onMessage(port, message);
                Log.e(TAG, message.getData());
            }
        }, new Handler(msg -> {
            Log.e(TAG, msg.toString());
            return true;
        }));
webMessagePorts[1].setWebMessageCallback(new WebMessagePort.WebMessageCallback() {
                @Override
                public void onMessage(WebMessagePort port, WebMessage message) {
                    super.onMessage(port, message);
                    Log.e(TAG, message.getData());
                }
            }, new Handler(msg -> {
                Log.e(TAG, msg.toString());
                return true;
            }));

При обратном вызове ничего не происходит, помогите мне, плз! Как отловить обратный вызов на сообщение? Буду очень благодарен!

...