導航:首頁 > 編程語言 > js交互

js交互

發布時間:2023-10-31 07:45:25

『壹』 在Android上怎樣實現javajs交互

java和js交互分為三種情況,分別是:

1 調用網頁上的js代碼

Android中可以通過webview來實現和js的交互,在程序中調用js代碼,只需要將webview控制項的支持js的屬性設置為true,,然後通過loadUrl就可以直接進行調用,如下所示:

mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.loadUrl("javascript:test()");

2 網頁java代碼的方法

在網頁中調用java代碼,需要在webview控制項中添加javascriptInterface。如下所示:

mWebView.addJavascriptInterface(newObject(){
publicvoidclickOnAndroid(){
mHandler.post(newRunnable(){
publicvoidrun(){
Toast.makeText(Test.this,"測試調用java",Toast.LENGTH_LONG).show();
}
});
}
},"demo");

在網頁中,只需要像調用js方法一樣,進行調用就可以

<div id='b'><a onclick="window.demo.clickOnAndroid()">b.c</a></div>

3 Java代碼調用js並傳參

首先需要帶參數的js函數,如functiontest(str),然後只需在調用js時傳入參數即可,如下所示:

mWebView.loadUrl("javascript:test('aa')");

4.Js中調用java函數並傳參

首先一樣需要帶參數的函數形式,但需注意此處的參數需要final類型,即得到以後不可修改,如果需要修改其中的值,可以先設置中間變數,然後進行修改。如下所示:

mWebView.addJavascriptInterface(newObject(){
publicvoidclickOnAndroid(finalinti){
mHandler.post(newRunnable(){
publicvoidrun(){
intj=i;
j++;
Toast.makeText(Test.this,"測試調用java"+String.valueOf(j),Toast.LENGTH_LONG).show();
}
});
}
},"demo");

然後在html頁面中,利用如下代碼<divid='b'><aonclick="window.demo.clickOnAndroid(2)">b.c</a></div>,

下面是安卓無憂中js 與安卓相互調用的效果圖,可以網路一下安卓無憂,點擊源碼,看看裡面的源碼。

『貳』 Android 與js 交互的目的

實現數據傳輸,完成交互操作。
JS代表的是網頁,這個網頁可以展示到Android、iOS或者pc的瀏覽器上,內嵌到程序里就是webview,是相對獨立的模塊,可以自成一套,但是有些數據或者操作在網頁完成比較麻煩,特別是手機上,比如登錄,需要單獨輸入賬號密碼,很是麻煩,現在都是由QQ微信授權登錄,一鍵完成,即使登錄了,登錄信息也不易持久保存(比如下次打開登錄信息就失效了),安全性也不高。
與Android或者iOS的交互主要是完成數據的交互,比如一個網頁查詢用戶數據需要登錄信息,APP已經登錄了,就可以直接中Android或者iOS的App直接拿,不需要在網頁再次登錄;比如用戶沒有登錄點擊了網頁登錄按鈕,js拉起App的原生登錄,這樣統一登錄路徑,登錄完成把數據回傳給js,完成登錄流程。比如評論,操作界面比較復雜,可能涉及圖片、表情、視頻的上傳下載,用網頁來做的話交互麻煩、性能也不理想,js上點擊評論拉起Android或者iOS的原生評論模塊,評論完畢通知js刷新數據,是比較理想的交互模式。

『叄』 如何使用vue.js與後台實現數據交互

使用vue.js與後台實現數據交互的方法是利用vue-resource組件提供的一系列api:
get(url, [data], [success], [options])
post(url, [data], [success], [options])
put(url, [data], [success], [options])
patch(url, [data], [success], [options])
delete(url, [data], [success], [options])
jsonp(url, [data], [success], [options])

具體舉例如下:
1、導入vue-resource
2、基於全局Vue對象使用http
// 通過someUrl獲取後台數據,成功後執行then的代碼
Vue.http.get('/someUrl', [options]).then(successCallback, errorCallback);
3、在一個Vue實例內使用$http
// $http是在vue的局部范圍內的實例
...使用vue.js與後台實現數據交互的方法是利用vue-resource組件提供的一系列api:
get(url, [data], [success], [options])
post(url, [data], [success], [options])
put(url, [data], [success], [options])
patch(url, [data], [success], [options])
delete(url, [data], [success], [options])
jsonp(url, [data], [success], [options])

說明:
在發送請求後,使用then方法來處理響應結果,then方法有兩個參數,第一個參數是響應成功時的回調函數,第二個參數是響應失敗時的回調函數。

閱讀全文

與js交互相關的資料

熱點內容
內存清理工具formac 瀏覽:323
iphone過濾騷擾電話 瀏覽:981
wap網路如何使用微信 瀏覽:699
手機迅雷應用盒子在哪個文件夾 瀏覽:351
windows8網路連接 瀏覽:442
怎麼快速增加qq群人數 瀏覽:919
錘子視頻播放器文件不存在 瀏覽:707
蘋果手機怎麼清理app緩存 瀏覽:682
花園戰爭2豪華升級包 瀏覽:517
電腦無法向u盤傳輸文件 瀏覽:823
bpn配置文件 瀏覽:932
501完美越獄工具 瀏覽:119
中間夾菜單裡面不能顯示壓縮文件 瀏覽:952
如何指導小學生參加編程比賽 瀏覽:275
物業的招標文件有哪些 瀏覽:452
保存游戲文件名非法或只讀 瀏覽:258
js怎麼做圖片時鍾 瀏覽:451
華為應用裡面有了app說明什麼 瀏覽:801
資料庫中xy是什麼意思 瀏覽:893
u盤打不開提示找不到應用程序 瀏覽:609

友情鏈接