android webkit js腳本注入(js內部對象由java層構建)

android webkit 中能夠注入java對象供 js腳本中調用。因爲js功能可能不夠強大,須要咱們用java擴充功能。 java

這裏假設咱們的JS中要調用到的一個函數,裏面的vod.GiveUp 是在java層實現的接口函數: android

var vod ; web

vod = new xxx()  ;//這個將會在java層具體去實現 函數

function mpeg_close()
{
        xxx.GiveUp();//java層xxx類的一個具體的方法
        return true;
 } ui

而咱們須要在android java 層封裝一個xxx類,

方法以下: spa

WebSettings webSettings = mWebView.getSettings(); 對象

/**
         * 在android 2.3之後進行了較爲嚴格的限制
         * 該類能夠用來幫助開發者改進他們編寫的應用。
         * 而且提供了各類的策略,
         * 這些策略能隨時檢查和報告開發者開發應用中存在的問題
         */ 接口

StrictMode.setThreadPolicy(new    StrictMode.ThreadPolicy.Builder().detectDiskReads().detectDiskWrites().detectNetwork().penaltyLog().build()); ip

StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder().detectLeakedSqlLiteObjects().penaltyLog().penaltyDeath().build()); 開發


webSettings.setJavaScriptEnabled(true); 
mWebView.addJavascriptInterface(new xxx(), "vod");//XXX 爲java層的一個類,這個類的object將會在js中調用到

mWebView.loadUrl("http://xxxxxx");//load一個網頁

相關文章
相關標籤/搜索