为什么我会获得两个应用程序的快捷方式,每个应用程序的行为都不同?

时间:2015-01-29 20:23:06

标签: android android-studio

在android studio(1.0.2)中,我在自己的项目中创建了一个android库:我刚刚创建了一个新项目并更改了build.gradle,用'com替换了apply plugin'com.android.application' .android.library'(github repository)。所以构建它我以.aar文件结尾。请注意,我也在尝试使用Kotlin语言来构建它。

然后我将这个aar库文件导入到我自己的(github repository)现有的android项目中,并将其调整为app build.gradle。

虽然它有效,但至少在我的android模拟器(Jeally Bean api:4.2.2的x86图像)上,我有一个奇怪的行为:

  1. 在应用程序列表中,我为我的新应用程序提供了两个快捷方式
  2. 但是,虽然快捷方式只是从库主要活动开始,但另一个快捷方式启动了我的所有者ChessPositionManager活动,并立即进入所包含的FileExplorer活动。
  3. 那么,具有两个不同行为的两种不同行为的行为是否可以解释?我可以避免它,同时保持我分别编写库和我的应用程序的事实吗? (实际上,可以很容易地将库模块添加到任何项目中,但它仍然与此项目相结合,远远超出我的理解。)

1 个答案:

答案 0 :(得分:3)

我假设您的库文件有一个清单声明,使其显示在您的启动器中。查看您的图书馆清单是否包含:

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

如果这样做是为什么它出现两次,那个意图过滤器向android发出信号,你希望它出现。

另外,我建议您查看http://developer.android.com/guide/components/intents-filters.html