java與js代碼互調範例程式碼

來源:互聯網
上載者:User

用到java和js方法互調,在用HTML5做跨平台應用開發時經常會用到,在這裡分享一些自己在實際開發過程中的用法,希望對初學者有所協助 

在用HTML5做跨平台應用開發時,嘗嘗會用到java和js方法互調的問題,對初學者而言,可能會有點難,在這裡分享一些自己在實際開發過程中的用法,希望對你有協助:

首先是js代碼調用java代碼介紹:

複製代碼 代碼如下:
public class CzingLBWebMain extends DroidGap {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.loadUrl(file:///android_asset/www/czingIndexHome.html);
WebSettings webSettings = this.appView.getSettings();
webSettings.setLoadWithOverviewMode(true);
webSettings.setSavePassword(false);
webSettings.setSaveFormData(false);
webSettings.setSupportZoom(false);
webSettings.setAllowFileAccess(true);
webSettings.setJavaScriptEnabled(true);
webSettings.setPluginState(WebSettings.PluginState.ON);
// 向js中添加一個java執行個體,以便js代碼調用java代碼
this.appView.addJavascriptInterface(this, "appDownloader");
}
public void callBackJava(){
}
}


然後就可以在czingIndexHome.html引用的js檔案中直接通過window.appDownloader.callBackJava()來直接調用上面的callBackJava()方法了.

然後就是如何通過java代碼調用js代碼:
在java中通過如下方式來實現:

複製代碼 代碼如下:
String resUrl="aa";
String resId="bb";
String callBack="javascript:callBackServive('"+resUrl+"','"+resId+"')";//注意傳遞兩個以上參數的方法
this.appView.loadUrl(callBack);


callBackServive就是在js中實現的方法.

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.