我在Android模拟器上安装了一个应用程序代码如下当我启动模拟器时,我正在输入浏览器“market.android.com”,我想让我的应用程序成为推出,但它不启动从网络启动Android应用程序
请问,正确的应用程序的工作可以由模拟器提供或有必要使用真实的设备? (完全可以从安卓网页浏览器启动应用程序)
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="http" android:host="market.android.com"
android:path="/search" />
</intent-filter>
另外,还有“intent:”方案。这使您可以将几乎所有的Intent描述为URI,浏览器在单击时将尝试启动。要构建这样的方案,最好的方法是只编写代码来构建要启动的Intent,然后打印intent.toUri(Intent.URI_INTENT_SCHEME)的结果。
您可以使用具有此意图的操作来查找支持该操作的任何活动。出于安全原因,浏览器会在启动之前自动将BROWSABLE类别添加到意图中;它也将剥离您为相同原因提供的任何显式组件。
如果您想确保它只启动您的应用程序,最好的方法是使用您自己的作用域操作并使用Intent.setPackage()来表示Intent只会匹配您的应用程序包。两者之间
权衡:
HTTP的URI需要你有你自己的域名。用户将始终可以选择在浏览器中显示URI。它有非常好的回退属性,如果你的应用程序没有安装,它们会简单地登陆你的网站。
意图URI要求您的应用程序已经安装,并且只能在Android手机上安装。几乎允许任何意图(但总是包含BROWSABLE类别并且不支持显式组件)。它们允许您直接启动到您的应用程序,而无需用户选择转到浏览器或任何其他应用程序。
感谢所有帮助(和代码段)
@ user2331971:拥有一个包含超链接的网页。 – CommonsWare 2013-05-08 12:20:19