【发布时间】:2013-07-09 12:54:08
【问题描述】:
我在我的应用清单文件中定义了这些类别:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME"/>
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
如果我删除该行 -
<category android:name="android.intent.category.HOME"/>
它不会影响应用程序功能的任何部分,我可以在我的 android 设备的主屏幕启动器列表中看到我的应用程序。
但是,如果我删除最后一行 -
<category android:name="android.intent.category.LAUNCHER" />
我看到我的应用程序从我的 android 设备的主屏幕启动器列表中消失了。
所以我的问题是这个类别 HOME 的目的是什么,它的常见用途是什么。
如果这个类别的唯一目的是启动android docs中提到的主屏幕,那么我也可以通过以下方式做到这一点:
Intent homeIntent= new Intent(Intent.ACTION_MAIN);
homeIntent.addCategory(Intent.CATEGORY_HOME);
homeIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(homeIntent);
【问题讨论】:
-
你知道我们可以制作自己的发射器吗?检查:
ANDROIDSDKPATH\samples\android-17\Home -
要检查的链接在哪里?
-
在你的硬盘上......如果你下载一个 SDK 样本
-
没关系。我们可以通过将
category.LAUNCHER放在要启动的特定活动中来制作启动器。category.HOME怎么样? -
AFAIK,LAUNCHER 使活动在启动器中可见,HOME 使活动成为启动器(又名主屏幕)
标签: android android-intent android-manifest