从 HTML 启动活动



我想从我的Android应用程序中的HTML页面调用活动。我会投入什么

<a href="TestActivity.java">Test  Activity</a>

使用带有<data>元素的<intent-filter>。把它放在你的AndroidManifest.xml <activity>里:

<intent-filter>
    <data android:scheme="my.special.scheme" />
    <action android:name="android.intent.action.VIEW" />
</intent-filter>

然后,在您的 Web 应用程序中,您可以放置如下链接:

<a href="my.special.scheme://other/parameters/here">

当用户单击链接时,你的应用将自动启动(因为它可能是唯一可以处理my.special.scheme://类型 URI 的应用(。唯一的缺点是,如果用户没有安装应用程序,他们会收到错误。

我认为最好的方法是通过webviewclient覆盖URL ->应该OverrideUrlLoading

override fun shouldOverrideUrlLoading(view: WebView ? , request : WebResourceRequest ? ): Boolean {
  val url: String = request ? .url.toString()
  if ((Uri.parse(url).getHost().contains("myactivity"))) {
      val myIntent = Intent(context, MainActivity::class.java)
      context.startActivity(myIntent)
      return true
  }
  return false
}

网页: <a href="http://myactivity">LINK</a>

最新更新