在 Android API 中,我们被告知以下内容:
如果标签包含 AAR,则标签调度系统按以下方式调度:
尝试像往常一样使用意图过滤器启动 Activity。如果匹配 Intent 的 Activity 也匹配 AAR,则启动 Activity。
如果过滤 Intent 的 Activity 与 AAR 不匹配,如果多个 Activity 可以处理该 Intent,或者如果没有 Activity 处理该 Intent,则启动 AAR 指定的应用程序。
如果没有应用程序可以通过 AAR 启动,请转到 Google Play 下载基于 AAR 的应用程序。
第 2 部分有点令人困惑。如果意图与多个Activity匹配,则我们启动应用程序。因此,如果我过滤 NFC 意图的活动不是我的默认应用程序启动活动,我不会在多个活动过滤意图的情况下启动它?
换句话说,如果我的应用程序有一个默认的活动“A”和另一个过滤 NFC 意图的活动“B”,那么没有任何其他活动过滤该意图,AAR 意图将启动 B。但如果其他人过滤意图,我将获得不同的行为,并且将启动活动 A。
这是否意味着我也可以让意图过滤器始终位于活动 A(默认启动活动)上,因为总有机会将意图传递给它?
希望这很清楚,
山姆