我们知道,Android APP
一旦上线之后,如果想要增加一些页面(Activity)
,通常比较麻烦,那么,最常见的做法是用网页(HTML5)
来实现,在APP
中实现一个WebViewActivity
,在这个Activity
中打开指定的URL
。
下面我来描述这样一个场景,在WebViewActivity
中打开了一个HTML
页面,在这个HTML
页面中有一个链接,现在要求点击这个链接打开APP
中已经存在的一个Activity(
假定为TestActivity)
,这时你会怎样来做呢?
我们应该记得,启动一个Activity
通常是用Intent
来启动的,而Intent
分为显式意图和隐式意图。
显式意图用的很多,如下:
隐式意图是这样用的:
第一步:在Manifest
文件中给TestActivity
配置一个隐式Intent
第二步:这时,当在网页中点击链接<a href="testapp://test">Start TestActivity</a>
就会启动TestActivity
了。
那么问题又来了,怎么传递参数到TestActivity
中呢?
我们知道显式Intent
一般是用Intent.putExtra()
来实现的,那么隐式Intent
该如何实现呢?
同样的,还是通过这个链接传递,只是加上我们要传的参数。这时链接可以这么写:
<a href="testapp://test?id=100101&title=HelloAndroid">StartTestActivity</a>
我们可以在TestActivity
来取得这两个参数:
这样就完美实现了隐式Intent
的参数传递了。