JavaScript-инъекция в веб-браузере Android - PullRequest
0 голосов
/ 17 мая 2019

Я написал код Javascript, который содержит обработчик обратного вызова для моего приложения для Android, и внедрил его из моего кода Android.Он запускает событие обратного вызова, когда мы выполняем действие воспроизведения / паузы видео в веб-просмотре и возвращаем событие в обратном вызове.Мы внедряем Javascript код формы как пластинчатая форма (iOS и Android)

Но, к сожалению, в iOS все данные о значениях событий получают, но в Android они показывают "undefined"

Ниже мой код JavaScriptкоторый вводится с Android

webView.addJavascriptInterface(new Object() {
            @JavascriptInterface
            public void getEvent(String data) {
                Toast.makeText(getContext(),    data , Toast.LENGTH_SHORT).show();

            Log.w("TAGGG", "callBackEvent: " + data.toString() );

        }
    }, "abc");

@Override
            public void onPageFinished(WebView view, String url) {
                tvErrorMessage.setVisibility(View.INVISIBLE);
                String scriptThree = "javascript:window.myApp_event =(function() {" +
                        "function notifyApp(event) {" +
                        "var myCallback = console.log(event);"+
                        "abc.getEvent(event);" + // This is callback for Android
                        "}" +
                        "var oExistingEvents = window.myApp_event || [];" +
                        "oExistingEvents.forEach(notifyApp);" +
                        "return {" +
                        "push: function(event) {" +
                        "notifyApp(event);" +

                        "}" +
                        "}" +
                        "})();";
                webView.loadUrl(scriptThree);
            }

Как мы можем получить то имя события, которое получено в iOS, но не в Android?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...