WebView, обратно к appliaction (shouldOverrideUrlLoading VS JavascriptInterface) - PullRequest
0 голосов
/ 30 января 2019

В моем приложении

  1. пользователь нажимает кнопку и открывается веб-просмотр для оплаты
  2. , после оплаты пользователь должен автоматически вернуться в приложение

вСначала я использую JavascriptInterface

@JavascriptInterface
        public void backtoapp() {


            ((mainac) getActivity()).runOnUiThread(new Runnable() {
                @Override
                public void run() {

                    FragmentManager fm = getFragmentManager();
                    fm.popBackStack();

                }
            });



        }

и вызываю backtoapp () следующим образом

.
.
<body>
<script>
jint.backtoapp();
</script>
</body>

, но я нашел новый способ сделать это с shouldOverrideUrlLoading

webv.setWebViewClient(new WebViewClient() {
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {

                if (url.startsWith("myapp://")) {

                    FragmentManager fm = getFragmentManager();
                    fm.popBackStack();



                } 

                return true;
            }
.
.

и обратноприложение с этим

<?php
header("Location: myapp://openme");
?>

И я хочу знать, какой путь лучше и кросс-API> 15

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