WebView удаленный сайт и вознаграждение видео

У меня есть простая игра, разработанная на PHP. Я загрузил удаленный сайт в Android WebView. Я хочу узнать, что если пользователь нажимает на кнопку "БЕСПЛАТНО", которая находится на моем удаленном сайте PHP, я хочу запустить видео с наградами в своем приложении для Android.

Но как я могу узнать, нажал ли пользователь кнопку БЕСПЛАТНАЯ жизнь в моем WebView и сразу же запустить видео в моем приложении для Android?

1 ответ

Решение

Существует механизм Android, который позволяет запускать функцию Android из JavaScript:

        <input class="button" type="button" value="FREE life" onclick="startRewardVideo('some parameters can be passed to Android from here')">
            <script type="text/javascript">
                function startRewardVideo(paramFromJS) {
                    Android.startRewardVideoAndroidFunction(paramFromJS);
                }
            </script>

Теперь вам нужен класс, который знает, что делать с вашим JavaScript:

public class MyJavaScriptInterface {

   @JavascriptInterface // this annotation is importatn
   public void startRewardVideoAndroidFunction(String paramFromJS) {

      //here you need to start showing reward movie 
      //because this function will be called after webView button click.
   }
}

Последний шаг - подключить webView к вашему интерфейсу javascript:

webView.addJavascriptInterface(new MyJavaScriptInterface(), "Android");

и, конечно же, не забудьте включить JavaScript для вашего веб-вида:

webView.getSettings().setJavaScriptEnabled(true);

Надеюсь, это поможет:) Спросите, если у вас есть какие-либо вопросы по этому поводу.

Здесь у вас есть полный учебник

Другие вопросы по тегам