android)我可以设置安装后立即运行的默认活动

时间:2011-10-02 18:16:18

标签: android android-activity install

在我的应用程序中,有两个活动,我想在安装后将activity1设置为启动活动。 但是现在RUN按钮(在安装packgae之后显示)被禁用。

下面的

是清单文件。感谢。

<activity ...1>
  <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
  </intent-filter>
</activity>
<activity ...2>
  <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
  </intent-filter>
  <intent-filter>
    <action android:name="android.intent.action.ACTION_POWER_CONNECTED" />
    <action android:name="android.intent.action.ACTION_POWER_DISCONNECTED" />
  </intent-filter>
</activity>

2 个答案:

答案 0 :(得分:1)

  

android)我可以设置一个在安装

后立即运行的默认活动

没有活动“在安装后立即运行”。用户必须从启动器启动它。

  下面的

是清单文件

不,不是。这甚至不是有效的XML。

另请注意,您的第三个<intent-filter>无效。您不仅缺少任何类别(活动至少需要DEFAULT),而且ACTION_POWER_CONNECTEDACTION_POWER_DISCONNECTED不是活动操作。

我猜你真的想问:“我有两个活动,都描述为ACTION_MAIN / CATEGORY_LAUNCHER,现在Run按钮不起作用 - 我该怎么办?”答案是“从其中一个中移除ACTION_MAIN / CATEGORY_LAUNCHER <intent-filter>,或将其中一个标记为已禁用(android:enabled="false"),然后使用PackageManager启用它。”< / p>

答案 1 :(得分:1)

我认为问题是第二个问题:

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

您不应将2个活动标记为MAIN和LAUNCHER活动。

尝试在activity2中删除它。

查看:http://developer.android.com/reference/android/content/Intent.html讨论了intentfilter。