android支持js吗(android js)

本文目录一览:

android中用javascript吗

Android之如何使用javascript调用android代码

使用javascript调用android代码

1.使用webview对象的addJavascriptInterface方法

2.addJavascriptInterface方法有两个参数,第一个参数就是我们一般会实现一个自己的类,类里面提供我们要提供给javascript访问的方法;第二个参数是访问我们在obj中声明的方法时候所用到的js对象,调用模式为window.interfaceName.方法名()或者是javascript: interfaceName.方法名() ;,如myWebView.addJavascriptInterface(new JavaScriptinterface(this), “android”);

3.编写JavaScriptinterface类,如有一个函数名为showToast()的方法

4.在html中调用时的形式:javascript:android.showToast()。

附上一个小例子:

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());

}

// 此按键监听的是返回键,能够返回到上一个网页(通过网页的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的应用程序中,可以直接调用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();

//设置支持javascript

setting.setJavaScriptEnabled(true);

//增加接口方法,让html页面调用

webView.addJavascriptInterface(new Object(){

//这里我定义了一个拨打的方法

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传过来的数据’)”); //调用javascript函数

/*

* 通过webView.loadUrl(“javascript:xxx”)方式就可以调用当前网页中的名称

* 为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调用. 这是:”+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原始数据/p

/body

/html

js的框架能用到android开发中吗?比如echart,moment,art template….

可以,android通过webview直接调用本地html网页。html网页要放在assets目录下面。

如果您的这些js框架在服务器端,直接使用webview loadurl方法就ok,关于访问android与js互相调用的demo,请去应用宝搜索安卓无忧就可以。度娘不让发链接,一发就删除我的回答。太2了。

安卓手机有没有浏览器支持javascript的,在电脑上编写了一个alert弹出框,可以再手机上用吗?会弹出来吗?

现在的安卓手机的浏览器几乎都是可以直接浏览普通网页(非WAP网页)的,而且都是支持Javascript的(事实上Javascript已经是目前为止唯一的网页前端脚本语言了)。当然,浏览器中一般都有打开或关闭Javascript功能的选项,但只要是打开的,你用alert弹出的对话框就一定会弹出来,除非有错。

安卓12能用auto.js吗

不能使用。

目前为止的auto.js不能在12系统中使用。

可以等JS更新至可以使用的版本后在使用。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/301679.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-30 16:09
下一篇 2024-12-30 16:09

相关推荐

  • JS Proxy(array)用法介绍

    JS Proxy(array)可以说是ES6中非常重要的一个特性,它可以代理一个数组,监听数据变化并进行拦截、处理。在实际开发中,使用Proxy(array)可以方便地实现数据的监…

    编程 2025-04-29
  • 解析js base64并转成unit

    本文将从多个方面详细介绍js中如何解析base64编码并转成unit格式。 一、base64编码解析 在JavaScript中解析base64编码可以使用atob()函数,它会将b…

    编程 2025-04-29
  • Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的解决方法

    本文将解决Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的问题。同时,给出一些相关示例代码,以帮助读者更好的理解并处理这个问题。 一、问题解…

    编程 2025-04-29
  • t3.js:一个全能的JavaScript动态文本替换工具

    t3.js是一个非常流行的JavaScript动态文本替换工具,它是一个轻量级库,能够很容易地实现文本内容的递增、递减、替换、切换以及其他各种操作。在本文中,我们将从多个方面探讨t…

    编程 2025-04-28
  • Android ViewPager和ScrollView滑动冲突问题

    Android开发中,ViewPager和ScrollView是两个常用的控件。但是当它们同时使用时,可能会发生滑动冲突的问题。本文将从多个方面介绍解决Android ViewPa…

    编程 2025-04-28
  • Android如何点击其他区域收起软键盘

    在Android应用中,当输入框获取焦点弹出软键盘后,我们希望能够点击其他区域使软键盘消失,以提升用户体验。本篇文章将说明如何实现这一功能。 一、获取焦点并显示软键盘 在Andro…

    编程 2025-04-28
  • JS图片沿着SVG路径移动实现方法

    本文将为大家详细介绍如何使用JS实现图片沿着SVG路径移动的效果,包括路径制作、路径效果、以及实现代码等内容。 一、路径制作 路径的制作,我们需要使用到SVG,SVG是可缩放矢量图…

    编程 2025-04-27
  • 如何使用JS调用Python脚本

    本文将详细介绍通过JS调用Python脚本的方法,包括使用Node.js、Python shell、child_process等三种方法,以及在Web应用中的应用。 一、使用Nod…

    编程 2025-04-27
  • Android Studio HUD 实现指南

    本文将会以实例来详细阐述如何在 Android Studio 中使用 HUD 功能实现菊花等待指示器的效果。 一、引入依赖库 首先,我们需要在 build.gradle 文件中引入…

    编程 2025-04-27
  • 如何反混淆美团slider.js

    本文将从多个方面详细阐述如何反混淆美团slider.js。在开始之前,需要明确的是,混淆是一种保护JavaScript代码的方法,其目的是使代码难以理解和修改。因此,在进行反混淆操…

    编程 2025-04-27

发表回复

登录后才能评论