android - Android 在具有相同操作和类别的多个组件之间有何不同?

标签 android android-intent android-implicit-intent

我查找了 Intent 过滤器,发现当“Android通过将 Intent 的内容与设备上其他应用程序的 list 文件中声明的 Intent 过滤器进行比较来找到合适的组件来启动”时,将使用它们(http://developer.android.com/guide/components/intents-filters.html#Building)

在我的 list 文件中,我有

<intent-filter>
        <action android:name="android.intent.action.MAIN" />

         <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

从阅读该指南意味着该 Activity 可以通过主要操作和启动器类别来处理隐式 Intent 。

但是,如果我有多个应用程序在 list 文件中具有相同的 Intent 过滤器怎么办?我知道一些隐含的 Intent 将通过主 Action 和启动器类别来调用。 Android 操作系统如何知道选择该应用程序?

最佳答案

当您使用相同的 Intent 过滤器(action=main和category=launcher)定义多个 Activity 时,android会采用该 Intent 过滤器(action=main和category=launcher)在层次结构中定义的第一个 Activity 并将其启动当用户单击应用程序图标时。

关于android - Android 在具有相同操作和类别的多个组件之间有何不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24625037/

相关文章:

android - 在不打开选择器的情况下从 Android 应用程序发送 SMS 消息?

java - 迭代并组合两个不同对象的排序数组列表

android - 如何将数据从 BroadcastReceiver 传递到正在启动的 Activity?

Android 11 在带有字符串资源的 Android Manifest 中声明包可见性

java - Android:不允许后台执行:接收Intent

android - 具有用户指定操作的隐式 Intent

android - ionic : emulator: ERROR: This AVD's configuration is missing a kernel file! !模拟器:错误:ANDROID_SDK_ROOT 未定义

android - OpenGL ES 着色器降低太多性能

java - 如何检索内部存储器中的每个文件?

java - 如何在 Android 上获取短信中的号码?