“如何设置android应用程序”;“类型”是什么;?

“如何设置android应用程序”;“类型”是什么;?,android,Android,有没有办法将应用程序设置为“类型”?例如,如果我下载Opera For Android,然后在另一个应用程序中单击web URL,Android会问我是要使用默认浏览器还是Opera打开链接。歌剧是如何做到这一点的 编辑具体来说,我如何将URL传递到我的活动中 您应该阅读有关活动和意图过滤器的内容 这是一个很好的起点:,特别是第节。您应该阅读有关活动和意图过滤器的内容 这是一个很好的起点:,特别是第节。这是通过在Manifest.xml中定义的Itent过滤器机制完成的。 我认为Opera在主要

有没有办法将应用程序设置为“类型”?例如,如果我下载Opera For Android,然后在另一个应用程序中单击web URL,Android会问我是要使用默认浏览器还是Opera打开链接。歌剧是如何做到这一点的


编辑具体来说,我如何将URL传递到我的活动中

您应该阅读有关活动和意图过滤器的内容


这是一个很好的起点:,特别是第节。

您应该阅读有关活动和意图过滤器的内容


这是一个很好的起点:,特别是第节。

这是通过在Manifest.xml中定义的Itent过滤器机制完成的。 我认为Opera在主要活动中可能有这样的意图过滤器:

    <intent-filter>
        <category android:name="android.intent.category.BROWSABLE"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <action android:name="android.intent.action.VIEW"/>
        <data android:scheme="http"/>
    </intent-filter>


然后,当通过发送意图请求打开网页时,系统将搜索其数据库,哪个应用程序可以回答并向用户推荐应用程序。

这是通过在Manifest.xml中定义的Itent筛选器机制完成的。 我认为Opera在主要活动中可能有这样的意图过滤器:

    <intent-filter>
        <category android:name="android.intent.category.BROWSABLE"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <action android:name="android.intent.action.VIEW"/>
        <data android:scheme="http"/>
    </intent-filter>


然后,当通过发送的意图请求打开网页时,系统将搜索其数据库,哪个应用程序可以回答并向用户推荐应用程序。

我认为您必须研究意图过滤器。以下是android文档中的简短文本

“组件通过意图过滤器宣传其功能——它们可以响应的意图类型。由于Android系统必须在启动组件之前了解组件可以处理哪些意图,因此在清单中,意图过滤器被指定为元素。一个组件可以有任意数量的过滤器,每个过滤器描述不同的功能。”

特别是对于浏览器,我想您必须按如下方式注册它:

    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:scheme="http"/> 
    </intent-filter>

我认为你必须研究意图过滤器。以下是安卓文档的简短文本

“组件通过意图过滤器宣传其功能——它们可以响应的意图类型。由于Android系统必须在启动组件之前了解组件可以处理哪些意图,因此在清单中,意图过滤器被指定为元素。一个组件可以有任意数量的过滤器,每个过滤器描述不同的功能。”

特别是对于浏览器,我想您必须按如下方式注册它:

    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:scheme="http"/> 
    </intent-filter>


但我如何将URL传递到我的活动中?是的,正如inazaruk回答您的一样,这是在您的活动响应的意图中传递的。可以通过调用您的活动来检索URL:getIntent().getData()。但是您应该在android开发者文档中找到所有这些信息。您也可以使用ddms查看传入发送的意图的内容,注意下面的一行:ActivityManager开始:意图{act=…查看数据=http://... ...}但是我如何将URL传递到我的活动中呢?是的,正如inazaruk回答您的那样,这是传递到您的活动所响应的意图中的。可以通过调用您的活动来检索URL:getIntent().getData()。但是您应该在android开发者文档中找到所有这些信息。您也可以使用ddms查看传入发送的意图的内容,注意下面的一行:ActivityManager开始:意图{act=…查看数据=http://... ...}但是我如何将URL传递到我的活动中呢?它将被传递到
Intent
中,您的
activity
可以使用
getIntent()获得
函数。但是你应该真正阅读文档。这是任何android开发人员都应该熟悉的第一件事。但是我如何将URL传递到我的活动中呢?它将被传递到
Intent
中,你的
活动可以通过
getIntent()获得
函数。但是你应该真正阅读文档。这是任何android开发人员都应该熟悉的第一件事。