Android d-H 5インタラクティブプロファイル

2203 ワード

本論文では、Javascript Interfaceを利用してAndroidとH 5インターフェースの相互作用を実現することを紹介します.Androidの技術共有ですので、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)は、受信したメッセージにマッチし、次に、ジャンプなどの、Android自身の動作を実行する.
  • WebView Activityインターフェース
  •        //      
        @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はシールドアンドロIDリンクエラーで、SetJavaScriptEnabledはJavascriptサポートを開始します.webView.addJavascriptInterface(new H5Operator(H5Operator.this), "Consume");このコードで注意したいのは、「Consme」は、フロントエンドが与える方法と一致していなければならないことです.以上、AndroidとH 5の相互作用の方法です.簡単です.他の拡張知識はここにありません.詳しくはこの話を共有します.参考にしてください.