Android -- H5 인 터 랙 션 안내

2403 단어
본 고 는 주로 JavascriptInterface 를 이용 하여 안 드 로 이 드 와 H5 인터페이스의 상호작용 을 실현 하 는 것 을 소개 한다.안 드 로 이 드 의 기술 공유 이기 때문에 js 의 구체 적 인 코드 는 붙 이지 않 습 니 다. 전단 에서 준 Consume.getWebId("invest") 방법 만 알 면 됩 니 다.다음은 Android 코드 를 소개 합 니 다.
  • Operator 클래스 새로 만 들 기
  •     private Activity activity;
    
        public H5Operator(Activity activity) {
            this.activity = activity;
        }
        @JavascriptInterface
        public void getWebId(final String message){
            activity.runOnUiThread(new Runnable() {
                @Override
                public void run() {
                    if("invest".equals(message)){
                //           ;
                    }
                }
            });
        }
    

    코드 설명: getWebId 전단 과 일치 해 야 합 니 다. "invest".equals(message) 받 은 message 와 일치 한 다음 에 안 드 로 이 드 자신의 조작 을 실행 해 야 합 니 다. 예 를 들 어 점프 와 같은 것 입 니 다.
  • WebViewActivity 인터페이스
  •        //      
        @SuppressLint({"NewApi", "SetJavaScriptEnabled"})
        private void initializeWebView() {
            webView.addJavascriptInterface(new H5Operator(WebViewActivity.this),
                    "Consume");
            try {
                String userId = (String) SPutils.get(this, "userId", "0");
                String url = "     ";
                WebSettings webSettings = webView.getSettings();
                webSettings.setJavaScriptEnabled(true);
                webSettings.setAllowFileAccess(true);
                webSettings.setAllowFileAccessFromFileURLs(true);
                webSettings.setBuiltInZoomControls(false);
                webSettings.setSupportZoom(false);
                webSettings.setDisplayZoomControls(false);
                this.webView.loadUrl(url);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        // onCreate     
            this.initializeWebView();
    

    코드 설명: @SuppressLint({"NewApi", "SetJavaScriptEnabled"}) NewApi 역할 은 안 드 로 이 드 lint 오 류 를 차단 하 는 것 입 니 다. SetJavaScriptEnabled 자바 script 지원 을 시작 합 니 다.webView.addJavascriptInterface(new H5Operator(H5Operator.this), "Consume"); 이 코드 에서 주의해 야 할 것 은 'Consume' 이 전단 에서 주 는 방법 과 일치 해 야 한 다 는 것 이다.이상 은 안 드 로 이 드 와 H5 가 상호작용 하 는 방법 입 니 다. 간단 합 니 다. 다른 연장 지식 은 여기 서 언급 하지 않 습 니 다.이 강 의 를 상세 하 게 공유 하 는 것 은 매우 많 으 니 참고 하 셔 도 됩 니 다.

    좋은 웹페이지 즐겨찾기