這是一門課程了,java web或者叫jsp。jsp就是由html和java腳本,等語言構(gòu)成的。java程序嵌套在html里,相當于php。以網(wǎng)頁的形式將java展現(xiàn)。這也就是所謂的動態(tài)。以為java程序獲取的時間會變動。或者數(shù)據(jù)庫變動從而引起網(wǎng)頁的變動。

堅守“ 做人真誠 · 做事靠譜 · 口碑至上 · 高效敬業(yè) ”的價值觀,專業(yè)網(wǎng)站建設服務10余年為成都公路鉆孔機小微創(chuàng)業(yè)公司專業(yè)提供企業(yè)網(wǎng)站制作營銷網(wǎng)站建設商城網(wǎng)站建設手機網(wǎng)站建設小程序網(wǎng)站建設網(wǎng)站改版,從內(nèi)容策劃、視覺設計、底層架構(gòu)、網(wǎng)頁布局、功能開發(fā)迭代于一體的高端網(wǎng)站建設服務。
延展閱讀:
HTML5有以下優(yōu)點:
提高可用性和改進用戶的友好體驗;
有幾個新的標簽,這將有助于開發(fā)人員定義重要的內(nèi)容;
可以給站點帶來更多的多媒體元素(視頻和音頻);
可以很好的替代FLASH和Silverlight;
當涉及到網(wǎng)站的抓取和索引的時候,對于SEO很友好;
將被大量應用于移動應用程序和游戲。
Android和H5之間的交互
hybrid App開發(fā)也不是什么新鮮事了,其中native和h5之間的交互則是必不可少的。Android中是如何和H5交互的?
1、webView加載頁面
我們都知道在Android中是通過webView來加載html頁面的,根據(jù)HTML文件所在的位置不同寫法也不同:
//例如:加載assets文件夾下的test.html頁面
mWebView.loadUrl("")
//例如:加載網(wǎng)頁
mWebView.loadUrl("")
如果只是這樣調(diào)用mWebView.loadUrl()加載的話,那么當你點擊頁面中的鏈接時,頁面將會在你手機默認的瀏覽器上打開。那如果想要頁面在App內(nèi)中打開的話,那么就得設置setWebViewClient:
mWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
mWebView.loadUrl(url);
return true;
}
}
});
2、Android本地通過Java調(diào)用HTML頁面中的JavaScript方法
想要調(diào)用js方法那么就必須讓webView支持
WebSettings webSettings = mWebView.getSettings();
//設置為可調(diào)用js方法
webSettings.setJavaScriptEnabled(true);
若調(diào)用的js方法沒有返回值,則直接可以調(diào)用mWebView.loadUrl("JavaScript:do()");其中do是js中的方法;若有返回值時我們可以調(diào)用mWebView.evaluateJavascript()方法:
mWebView.evaluateJavascript("sum(1,2)", new ValueCallbackString() {
@Override
public void onReceiveValue(String value) {
Log.e(TAG, "onReceiveValue value=" + value);
}
});
js代碼如下:
script type="text/javascript"
function sum(a,b){
return a+b;
}
function do(){
document.getElementById("p").innerHTML="hello world";
}
/script
2、js調(diào)用Android本地Java方法
在Android4.2以上可以直接使用@JavascriptInterface注解來聲明,下面是在一個本地Java方法
public class JsInteration {
@JavascriptInterface
public String back() {
return "hello world";
}
}
定義完這個方法后再調(diào)用mWebView.addJavascriptInterface()方法:
mWebView.addJavascriptInterface(new JsInteration(), "android");
那么在js中怎么來調(diào)用呢?
script type="text/javascript"
function s(){
//調(diào)用Java的back()方法
var result =window.android.back();
document.getElementById("p").innerHTML=result;
}
/script
4、攔截HTML頁面中的點擊事件
mWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
//判斷url攔截事件
if (url.equals("")) {
Log.e(TAG, "shouldOverrideUrlLoading: " + url);
startActivity(new Intent(MainActivity.this,Main2Activity.class));
return true;
} else {
mWebView.loadUrl(url);
return false;
}
}
});
以上就是Java調(diào)用js方法以及js調(diào)用Java方法的實現(xiàn)交互方式中的一種。下面給出完整代碼:
mainActivity
public class MainActivity extends AppCompatActivity {
public static final String TAG = "MainActivity";
private WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mWebView = (WebView) findViewById(R.id.webView);
mWebView.loadUrl("");
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
mWebView.addJavascriptInterface(new JsInteration(), "android");
mWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.equals("")) {
Log.e(TAG, "shouldOverrideUrlLoading: " + url);
startActivity(new Intent(MainActivity.this,Main2Activity.class));
return true;
} else {
mWebView.loadUrl(url);
return false;
}
}
});
}
//Android調(diào)用有返回值js方法
@TargetApi(Build.VERSION_CODES.KITKAT)
public void onClick(View v) {
mWebView.evaluateJavascript("sum(1,2)", new ValueCallbackString() {
@Override
public void onReceiveValue(String value) {
Log.e(TAG, "onReceiveValue value=" + value);
}
});
}
public class JsInteration {
@JavascriptInterface
public String back() {
return "hello world";
}
}
}
test.html
!DOCTYPE html
html
head
title/title
script type="text/javascript"
function sum(a,b){
return a+b;
}
function s(){
var result =window.android.back();
document.getElementById("p").innerHTML=result;
}
/script
/head
body
button onclick="s()"調(diào)用本地方法/button
a href=""點擊/a
p id="p"/p
/body
/html
編輯菜單中的整理代碼格式
快捷鍵ctrl+shift+F
一般情況最好是自己邊編寫邊排版
                當前題目:關(guān)于h5調(diào)用本地java代碼的信息
                
                標題URL:http://chinadenli.net/article6/hedcig.html
            
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導航、網(wǎng)站制作、標簽優(yōu)化、網(wǎng)站設計、微信公眾號、用戶體驗
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
