有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

javascript有没有办法使用本机应用程序的startActivityForResult从我开发到Android的PWA中获取结果?

我正在尝试使用我用HTML和JavaScript开发的PWA来处理数据并将其发送回Android应用程序

Android应该在用户单击按钮后打开PWA。例如,我已经通过使用页面URL启动了一项活动:

Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://examplePWA.com/"));
Log.d(TAG, "onClick() called with: view = [" + browserIntent.getDataString() + "]");
startActivity(browserIntent);

我现在想要的是从PWA获得对astartActivityForResult (browserIntent, 123);的响应意图 例如,发送自Android

我如何从PWA方面做到这一点,是否可以使用JavaScript或任何其他方式从PWA发送Android意图


共 (1) 个答案

  1. # 1 楼答案

    如果我没说错,为了从javascript环境中启动一个活动,可以使用@JavascriptInterface,这将允许您在javascript代码中调用Java方法(如果您使用^{

    class WebBridge {
    
      @JavascriptInterface
      public void openBrowser(String href) {
        // .. start your activity here
      }
    
    }
    
    // Somewhere where you initialize your WebView
    webView.addJavascriptInterface(new WebBridge(), "AndroidWebBridge");
    
    // Inside your javascript app code
    window.AndroidWebBridge.openBrowser("https://google.com");
    

    下面的代码说明了整个概念,而不是复制粘贴解决方案。希望这能帮到你