You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Capacitor Java层调用JavaScript函数的实现方案

Capacitor 安卓原生Java侧调用前端JavaScript函数实现方案

以下为经实测可正常运行的完整实现,本示例以点击系统返回按键作为JS函数调用触发场景:


1. 原生Java端代码实现

在继承了BridgeActivity的主Activity类中添加如下逻辑:

import android.webkit.WebView;
import com.getcapacitor.BridgeActivity;

public class MainActivity extends BridgeActivity {
    @Override
    public void onBackPressed() {
        // 从Capacitor桥接实例获取当前WebView对象
        WebView webView = getBridge().getWebView();
        // 调用前端定义的pressBack JS函数
        webView.loadUrl("javascript:pressBack()");
        return;
    }
}

2. 前端代码适配

需要在前端入口文件index.html中定义原生侧要调用的对应JS函数,示例如下:

<script type="text/javascript">
function pressBack(){
    alert('原生调用JS成功');
}
</script>

该方案实测可稳定运行,可根据业务需求自定义调用触发时机、JS函数名、以及入参(入参直接拼接在javascript:后的函数括号内即可,注意特殊字符转义)

内容的提问来源于stack exchange,提问作者Tavago

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 19:27:04