gpt4 book ai didi

Android SDK WebView调用Activity

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:36:03 24 4
gpt4 key购买 nike

我试图在单击 WebView 组件内的链接时启动 Activity。

我的 Webview 加载在 Main.java 中,我想在单击位于 Main.java 的网站内的链接时启动 SubActivity.java ?

另外,我怎样才能将参数传递给这个 Activity ?

示例:inspection://Project/1

“Inspection”是我的应用程序的名称,inspection 是我想要启动的 Activity,1 是我想要的 ID。

最佳答案

您可以使用 WebView 的 addJavaScriptInterface允许 JavaScript 控制您的应用程序(在这种情况下,允许 JavaScript 在单击链接时触发 Intent)。

为此,您需要传递一个类实例以绑定(bind)到 JavaScript,这可能类似于以下内容:

private final class JsInterface {
public void launchIntent(final String payload) {
Activity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
// use the payload if you want, attach as an extra, switch destination, etc.
Activity.this.startActivity(new Intent(Activity.this, SomeOtherActivity.class));
}
});
}
}

然后你将它添加到 WebView 中,沿着这些行:

webView.addJavascriptInterface(js, "Android");

然后在来自 WebView 的 JavaScript 中,您只需使用新的“Android”对象的“launchIntent”方法。

关于Android SDK WebView调用Activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4846296/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com