真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

安卓javascript,安卓JavaScript

安卓和javascript交互必須通過webView嗎?可以用安卓的其他控件調(diào)用js嗎?還有他們能通過volley交互嗎?

您好,很高興能幫助您, Android中webview和js之間的交互 1.android中利用webview調(diào)用網(wǎng)頁上的js代碼。 Android 中可以通過webview來實(shí)現(xiàn)和js的交互,在程序中調(diào)用js代碼,只需要將webview控件的支持js的屬性設(shè)置為true,,然后通過loadUrl就可以直接進(jìn)行調(diào)用,如下所示: mWebView.getSettings().setJavaScriptEnabled(true); mWebView.loadUrl("javascript:test()"); 2. 網(wǎng)頁上調(diào)用android中java代碼的方法 在網(wǎng)頁中調(diào)用java代碼,需要在webview控件中添加javascriptInterface。如下所示: mWebView.addJavascriptInterface(new Object() { public void clickOnAndroid() { mHandler.post(new Runnable() { public void run() { Toast.makeText(Test.this, "測(cè)試調(diào)用java", Toast.LENGTH_LONG).show();} }); } }, "demo"); 在網(wǎng)頁中,只需要像調(diào)用js方法一樣,進(jìn)行調(diào)用就可以 div id='b'a onclick="window.demo.clickOnAndroid()"b.c/a/div 3. Java代碼調(diào)用js并傳參 首先需要帶參數(shù)的js函數(shù),如function test(str),然后只需在調(diào)用js時(shí)傳入?yún)?shù)即可,如下所示: mWebView.loadUrl("javascript:test('aa')"); 4.Js中調(diào)用java函數(shù)并傳參 首先一樣需要帶參數(shù)的函數(shù)形式,但需注意此處的參數(shù)需要final類型,即得到以后不可修改,如果需要修改其中的值,可以先設(shè)置中間變量,然后進(jìn)行修改。如下所示: mWebView.addJavascriptInterface(new Object() { public void clickOnAndroid(final int i) { mHandler.post(new Runnable() { public void run() { int j = i;j++; Toast.makeText(Test.this, "測(cè)試調(diào)用java" + String.valueOf(j), Toast.LENGTH_LONG).show();}});} }, "demo"); 然后在html頁面中,利用如下代碼div id='b'a onclick="window.demo.clickOnAndroid(2)"b.c/a/div, 即可實(shí)現(xiàn)調(diào)用 你的采納是我前進(jìn)的動(dòng)力,還有不懂的地方,請(qǐng)你繼續(xù)“追問”! 如你還有別的問題,可另外向我求助;答題不易,互相理解,互相幫助!

商南網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)2013年至今到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

android中用javascript嗎

Android之如何使用javascript調(diào)用android代碼

使用javascript調(diào)用android代碼

1.使用webview對(duì)象的addJavascriptInterface方法

2.addJavascriptInterface方法有兩個(gè)參數(shù),第一個(gè)參數(shù)就是我們一般會(huì)實(shí)現(xiàn)一個(gè)自己的類,類里面提供我們要提供給javascript訪問的方法;第二個(gè)參數(shù)是訪問我們?cè)趏bj中聲明的方法時(shí)候所用到的js對(duì)象,調(diào)用模式為window.interfaceName.方法名()或者是javascript: interfaceName.方法名() ;,如myWebView.addJavascriptInterface(new JavaScriptinterface(this), "android");

3.編寫JavaScriptinterface類,如有一個(gè)函數(shù)名為showToast()的方法

4.在html中調(diào)用時(shí)的形式:javascript:android.showToast()。

附上一個(gè)小例子:

import android.content.Context;

import android.widget.Toast;

public class JavaScriptinterface {

private Context mContext;

/** Instantiate the interface and set the context */

public JavaScriptinterface(Context c) {

mContext = c;

}

/** Show a toast from the web page */

public void showToast(String toast) {

Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();

}

}

import java.io.BufferedReader;

import java.io.File;

import java.io.InputStreamReader;

import android.app.Activity;

import android.content.Context;

import android.os.Bundle;

import android.view.KeyEvent;

import android.webkit.WebView;

import android.webkit.WebViewClient;

public class MainActivity extends Activity {

/** Called when the activity is first created. */

private WebView myWebView;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

myWebView = (WebView) findViewById(R.id.myWebView);

myWebView.getSettings().setJavaScriptEnabled(true);

myWebView.addJavascriptInterface(new JavaScriptinterface(this),

"android");

String htmlText = getFromAssets("test.html");

//把myWebView加載html

myWebView.loadData(htmlText, "text/html", "utf-8");

myWebView.setWebViewClient(new myWebViewClient());

}

// 此按鍵監(jiān)聽的是返回鍵,能夠返回到上一個(gè)網(wǎng)頁(通過網(wǎng)頁的hostlistery)

public boolean onKeyDown(int keyCode, KeyEvent event) {

if ((keyCode == KeyEvent.KEYCODE_BACK) myWebView.canGoBack()) {

myWebView.goBack();

return true;

}

return super.onKeyDown(keyCode, event);

}

public String getFromAssets(String fileName) {

try {

InputStreamReader inputReader = new InputStreamReader(

getResources().getAssets().open(fileName));

BufferedReader bufReader = new BufferedReader(inputReader);

String line = "";

String Result = "";

while ((line = bufReader.readLine()) != null)

Result += line;

if (bufReader != null)

bufReader.close();

if (inputReader != null)

inputReader.close();

return Result;

} catch (Exception e) {

e.printStackTrace();

}

return null;

}

class myWebViewClient extends WebViewClient {

@Override

public boolean shouldOverrideUrlLoading(WebView view, String url) {

// TODO Auto-generated method stub

view.loadUrl(url);

return true;

}

}

}

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""

html xmlns="" xml:lang="zh-CN" dir="ltr"

head

meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /

script type="text/javascript"

function showAndroidToast(toast) {

javascript:android.showToast(toast);

}

/script

/head

body

input type="button" value="Say hello"

onClick="showAndroidToast('Hello Android!')" /

/body

/html

android的應(yīng)用程序中,可以直接調(diào)用WebView 中的javascript 代碼:

import java.io.BufferedReader;

import java.io.File;

import java.io.InputStreamReader;

import android.app.Activity;

import android.content.Context;

import android.content.Intent;

import android.net.Uri;

import android.os.Bundle;

import android.os.Handler;

import android.view.KeyEvent;

import android.view.View;

import android.view.View.OnClickListener;

import android.webkit.WebSettings;

import android.webkit.WebView;

import android.webkit.WebViewClient;

import android.widget.Button;

public class MainActivity02 extends Activity {

/** Called when the activity is first created. */

private WebView webView;

private Button button;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main2);

webView=(WebView) this.findViewById(R.id.webView);

button=(Button) this.findViewById(R.id.button);

WebSettings setting=webView.getSettings();

//設(shè)置支持javascript

setting.setJavaScriptEnabled(true);

//增加接口方法,讓html頁面調(diào)用

webView.addJavascriptInterface(new Object(){

//這里我定義了一個(gè)撥打的方法

public void startPhone(String num){

Intent intent=new Intent();

intent.setAction(Intent.ACTION_CALL);

intent.setData(Uri.parse("tel:"+num));

startActivity(intent);

}

}, "demo");

//加載頁面

webView.loadUrl("");

button.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

webView.loadUrl("javascript:show('activity傳過來的數(shù)據(jù)')"); //調(diào)用javascript函數(shù)

/*

* 通過webView.loadUrl("javascript:xxx")方式就可以調(diào)用當(dāng)前網(wǎng)頁中的名稱

* 為xxx的javascript方法

*/

}

});

}

}

!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""

html

head

meta http-equiv="Content-Type" content="text/html; charset=UTF-8"

titleInsert title here/title

script type="text/javascript"

function show(content){

document.getElementById("countent").innerHTML=

"這是我的javascript調(diào)用. 這是:"+content;

}

/script

/head

body

table align="center"

trtd姓名/tdtd電話/td/tr

trtd小明/tdtda href="javascript:demo.startPhone(123)"123/a/td/tr

trtd小王/tdtda href="javascript:demo.startPhone(456)"456/a/td/tr

/table

p id="countent"html原始數(shù)據(jù)/p

/body

/html

安卓手機(jī)javascript被禁用怎么開啟?

一般是瀏覽器里禁用,進(jìn)入瀏覽器設(shè)置找到隱私或高級(jí)或擴(kuò)展功能,再找到j(luò)s并開啟即可。具體要看是哪個(gè)瀏覽器里提示,不同瀏覽器操作也略有不同。

安卓手機(jī)有沒有瀏覽器支持javascript的,在電腦上編寫了一個(gè)alert彈出框,可以再手機(jī)上用嗎?會(huì)彈出來嗎?

現(xiàn)在的安卓手機(jī)的瀏覽器幾乎都是可以直接瀏覽普通網(wǎng)頁(非WAP網(wǎng)頁)的,而且都是支持Javascript的(事實(shí)上Javascript已經(jīng)是目前為止唯一的網(wǎng)頁前端腳本語言了)。當(dāng)然,瀏覽器中一般都有打開或關(guān)閉Javascript功能的選項(xiàng),但只要是打開的,你用alert彈出的對(duì)話框就一定會(huì)彈出來,除非有錯(cuò)。


網(wǎng)站題目:安卓javascript,安卓JavaScript
轉(zhuǎn)載注明:http://weahome.cn/article/dsdiggg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部