android 与js交互

本文详细介绍了Android与JS之间的交互方式,包括JS调用Android方法启动本地相册及Android调用JS方法设置图片路径等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android 与JS交互浅谈

Android 与 JS 交互主要分为:

JS 调用Android中的方法
Android首先要用WebView加载Html页面

mWebView.getSettings().addJavascriptInterface(new DemoJavascriptInterface(), “network”); 
mWebView.loadUrl();就可实现加载Html页面,与JS建立连接。 

在JS中的代码

<body> 
<p>测试 JS调本地相册</p>
<a class = "rect" onclick="sendInfoToAndroid()">JS调用相册</a> 
<p><img id= "img" src="file:///android_asset/a.jpg"  width="100" height="100"/></p>
<script>

function sendInfoToAndroid(){
//调用Android的方法启动相册
window.network.openPhoto();
}

    </script>
</body> 
}

咱先看看上边的代码:当html中矩形被点击后它会调用sendInfoToAndroid()方法,在sendInfoToAndroid()方法中通过window.network.openPhoto();来调用Android中openPhoto()方法,这里的network对应着前边的mWebView.getSettings().addJavascriptInterface(new DemoJavascriptInterface(), “network”);中的network,它们必须保持一致;
然后就是看openPhoto()方法是怎么写了

class DemoJavascriptInterface {

        public DemoJavascriptInterface() {
            // TODO Auto-generated constructor stub

        }

        @JavascriptInterface
        public void openPhtoto() {

            // 启动本地相册
            Intent intent = new Intent(Intent.ACTION_PICK);
            intent.setType("image/*");
            startActivityForResult(intent, PHOTO);

        }

    }

这样就可以实现JS调用Android 中的方法,html打开本地的相册;
- Android 调用JS中的方法
android调用的Js更简单,

    mWebView.loadUrl(“javascript:setImag(‘”+path+”’)”);

这样就实现了调用JS中的setImag(path)方法,并把图片的路径传给JS,并在Html中显示图片

//android 调用JS并设置图片

function setImag(path){
document.getElementById("img").src=""+path
  }

希望和喜爱编程的同学们,共同学习,共同进步。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值