bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

關(guān)于h5調(diào)用本地java代碼的信息

HTML5如何和JAVA后臺(tái)數(shù)據(jù)交互?

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

堅(jiān)守“ 做人真誠 · 做事靠譜 · 口碑至上 · 高效敬業(yè) ”的價(jià)值觀,專業(yè)網(wǎng)站建設(shè)服務(wù)10余年為成都公路鉆孔機(jī)小微創(chuàng)業(yè)公司專業(yè)提供企業(yè)網(wǎng)站制作營銷網(wǎng)站建設(shè)商城網(wǎng)站建設(shè)手機(jī)網(wǎng)站建設(shè)小程序網(wǎng)站建設(shè)網(wǎng)站改版,從內(nèi)容策劃、視覺設(shè)計(jì)、底層架構(gòu)、網(wǎng)頁布局、功能開發(fā)迭代于一體的高端網(wǎng)站建設(shè)服務(wù)。

延展閱讀:

HTML5有以下優(yōu)點(diǎn):

提高可用性和改進(jìn)用戶的友好體驗(yàn);

有幾個(gè)新的標(biāo)簽,這將有助于開發(fā)人員定義重要的內(nèi)容;

可以給站點(diǎn)帶來更多的多媒體元素(視頻和音頻);

可以很好的替代FLASH和Silverlight;

當(dāng)涉及到網(wǎng)站的抓取和索引的時(shí)候,對于SEO很友好;

將被大量應(yīng)用于移動(dòng)應(yīng)用程序和游戲。

android嵌入h5,怎么交互

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()加載的話,那么當(dāng)你點(diǎn)擊頁面中的鏈接時(shí),頁面將會(huì)在你手機(jī)默認(rèn)的瀏覽器上打開。那如果想要頁面在App內(nèi)中打開的話,那么就得設(shè)置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();

//設(shè)置為可調(diào)用js方法

webSettings.setJavaScriptEnabled(true);

若調(diào)用的js方法沒有返回值,則直接可以調(diào)用mWebView.loadUrl("JavaScript:do()");其中do是js中的方法;若有返回值時(shí)我們可以調(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注解來聲明,下面是在一個(gè)本地Java方法

public class JsInteration {

@JavascriptInterface

public String back() {

return "hello world";

}

}

定義完這個(gè)方法后再調(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頁面中的點(diǎn)擊事件

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方法的實(shí)現(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=""點(diǎn)擊/a

p id="p"/p

/body

/html

hbuilder 中 h5app如何調(diào)用自己寫的java代碼

編輯菜單中的整理代碼格式

快捷鍵ctrl+shift+F

一般情況最好是自己邊編寫邊排版

當(dāng)前題目:關(guān)于h5調(diào)用本地java代碼的信息
標(biāo)題URL:http://vcdvsql.cn/article6/hedcig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航網(wǎng)站制作、標(biāo)簽優(yōu)化、網(wǎng)站設(shè)計(jì)、微信公眾號(hào)用戶體驗(yàn)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名