我想从我的网页浏览器里打开第三方应用程序,但我没有清单文件或其他东西。我有一个网页,我想要一个链接来打开第三方应用程序,例如Twitter或Opera。请问如何设置锚点链接来打开该应用程序呢?谢谢。
意图基础URI的基本语法如下:
intent: HOST/URI-path // 可选主机 #Intent; package=[string]; action=[string]; category=[string]; component=[string]; scheme=[string]; end;
解析详见Android源码。
要启动 ZXing 条形码扫描器应用,您可以将 href 编码如下:
<p>
<a href="intent://scan/#Intent;scheme=zxing;package=com.google.zxing.client.android;end">Take a qr code</a><br>
<a href="intent://scan/?ret=http%3A%2F%2Fexample.com#Intent;scheme=zxing;package=com.google.zxing.client.android;end">Take a qr code = 10px x 10px</a><br>
<a href="intent:play/?mediaset=android-phone-rtmp-high&playlisturl=http://www.bbc.co.uk/iplayer/playlist/bbc_one_london#Intent;scheme=bbcmediaplayer;package=air.uk.co.bbc.android.mediaplayer;end">Launch BBC</a>
</p>
Android manifest 定义了 scheme 为 zxing
,package 为 com.google.zxing.client.android
,host data 为 scan
。
如果你要启动的 activity 包含 extra 数据,也可以一并包含。
只有拥有类别过滤器 android.intent.category.BROWSABLE
的 activity 才能使用这种方法调用,因为它表明应用程序可以安全地从浏览器中打开。
这是无法通用实现的。如果其他应用程序有自定义的URL处理程序,那么您可以打开该URL,否则您无法打开。