方法)
一、創(chuàng)建一個HTML網(wǎng)址進行測試代碼語言javascriptwebView.html代碼語言javascript1.html head title /title /head body input typebutton valueSay hello onClickshowAndroidToast(Web傳遞參數(shù)到Android) / script typetext/javascript function test(card_mo ,price){ Android.showtest(card_moprice); } function showAndroidToast(toast) { Android.showToast(toast); } /script /body /html2.創(chuàng)建一個JavaScriptInterface 接口類代碼語言javascriptpackage com.ruidde.csndresourcedemo; import android.content.Context; import android.webkit.JavascriptInterface; import android.widget.Toast; /** * Created by Administrator on 2017/1/5. */ public class JavaScriptInterface { Context mContext; /** Instantiate the interface and set the context */ JavaScriptInterface(Context c) { mContext c; } JavascriptInterface /** Show a toast from the web page */ public void showToast(String toast) { Toast.makeText(mContext, toast0000000, Toast.LENGTH_SHORT).show(); } JavascriptInterface /** Show a toast from the web page */ public void showtest(String toast) { Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show(); } }3.在Activity中使用代碼語言javascriptpackage com.ruidde.csndresourcedemo; import android.os.Bundle; import android.webkit.WebChromeClient; import android.webkit.WebSettings; import android.webkit.WebView; import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity { private String card_mo ,price ; Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); card_mo 1234565; price 32.00; WebView myWebView (WebView) findViewById(R.id.webview); //設置js可用 WebSettings webSettings myWebView.getSettings(); webSettings.setJavaScriptEnabled(true); //注解自定義對象 js用自定義的對象如Android 來調(diào)用Android中方法 myWebView.addJavascriptInterface(new JavaScriptInterface(this), Android); //網(wǎng)址本地自己寫的 myWebView.loadUrl(file:///android_asset/webView.html); //webView網(wǎng)頁加載進度 myWebView.setWebChromeClient(new WebChromeClient() { Override public void onProgressChanged(WebView view, int newProgress) { super.onProgressChanged(view, newProgress); if (newProgress 100){ //網(wǎng)頁加載完成 /** * //這是Android調(diào)用js的方法 如test方法在js中要有可以給js中傳遞參數(shù) * 方法在web加載完成后 會調(diào)用下面方法來給js傳遞參數(shù) * */ view.loadUrl(javascript:test( card_mo , price )); //aa是js的函數(shù)test()的參數(shù) } } } ); } }更多Android進階指南 可以掃碼 解鎖《Android十大板塊文檔》1.Android車載應用開發(fā)系統(tǒng)學習指南附項目實戰(zhàn)2.Android Framework學習指南助力成為系統(tǒng)級開發(fā)高手3.2024最新Android中高級面試題匯總解析告別零offer4.企業(yè)級Android音視頻開發(fā)學習路線項目實戰(zhàn)附源碼5.Android Jetpack從入門到精通構建高質(zhì)量UI界面6.Flutter技術解析與實戰(zhàn)跨平臺首要之選7.Kotlin從入門到實戰(zhàn)全方面提升架構基礎8.高級Android插件化與組件化含實戰(zhàn)教程和源碼9.Android 性能優(yōu)化實戰(zhàn)360°全方面性能調(diào)優(yōu)10.Android零基礎入門到精通高手進階之路敲代碼不易關注一下吧。?( ′? )