假设我有一个网页,我在Android设备上的浏览器中加载该页面。我期望的是,当我点击网页上的按钮时,可以打开一个应用程序。
有没有办法做到这一点?非常感谢。
答案 0 :(得分:0)
如果您可以选择自定义相关应用,则可以为特定的URI方案添加Intent Filter,该方案对您的应用而言是唯一的。然后,在网页按钮的点击事件中,使用此URI方案启动您的应用。
例如,Google Play使用market://
计划通过链接打开Google Play应用。
答案 1 :(得分:0)
使用IntentFilter
s有可能..
查出以下代码: -
<intent-filter>
<data android:scheme="**myapp**" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" /> <--Not positive if this one is needed
...
</intent-filter>
现在您可以像myapp://
一样启动您的应用答案 2 :(得分:0)
您可以使用<intent-filter>
<data>
来实现此目的。
例如,要处理到sample.com的所有链接,您可以将它放在AndroidManifest.xml中:
<intent-filter>
<data android:scheme="http" android:host="sample.com"/>
<action android:name="android.intent.action.VIEW" />
</intent-filter>
中here很好地解释了这一点
希望这可以帮助你...
答案 3 :(得分:0)
你可以使用getIntent()。getData()返回一个Uri对象。然后,您可以使用Uri。*方法提取所需的数据。例如,假设用户点击了http://twitter.com/status/1234的链接:
Uri data = getIntent().getData();
String scheme = data.getScheme(); // "http"
String host = data.getHost(); // "twitter.com"
List<String> params = data.getPathSegments();
String first = params.get(0); // "status"
String second = params.get(1); // "1234"
您可以在Activity中的任何位置执行上述操作,但您可能希望在onCreate()中执行此操作。您还可以使用params.size()来获取Uri中的路径段数。查看javadoc或android开发人员网站,了解可用于提取特定部分的其他Uri方法。